logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Email::MessageID - Generate world unique message-ids.

Authors

       •   Casey West <casey@geeknest.com>

       •   Ricardo SIGNES <cpan@semiotic.systems>

Contributors

       •   Aaron Crane <arc@cpan.org>

       •   Pali <pali@cpan.org>

       •   Ricardo Signes <rjbs@semiotic.systems>

Description

       Message-ids are optional, but highly recommended, headers that identify a message uniquely. This software
       generates a unique message-id.

Methods

new
         my $mid = Email::MessageID->new;

         my $new_mid = Email::MessageID->new( host => $myhost );

       This class method constructs an Email::MessageID object containing a unique message-id. You may specify
       custom "host" and "user" parameters.

       By default, the "host" is generated from "Sys::Hostname::hostname".

       By default, the "user" is generated using "Time::HiRes"'s "gettimeofday" and the process ID.

       Using these values we have the ability to ensure world uniqueness down to a specific process running on a
       specific host, and the exact time down to six digits of microsecond precision.

   create_host
         my $domain_part = Email::MessageID->create_host;

       This method returns the domain part of the message-id.

   create_user
         my $local_part = Email::MessageID->create_user;

       This method returns a unique local part for the message-id.  It includes some random data and some
       predictable data.

   in_brackets
       When using Email::MessageID directly to populate the "Message-ID" field, be sure to use "in_brackets" to
       get the string inside angle brackets:

         header => [
           ...
           'Message-Id' => Email::MessageID->new->in_brackets,
         ],

       Don't make this common mistake:

         header => [
           ...
           'Message-Id' => Email::MessageID->new->as_string, # WRONG!
         ],

Name

       Email::MessageID - Generate world unique message-ids.

Perl Version

       This library should run on perls released even a long time ago.  It should work on any version of perl
       released in the last five years.

       Although it may work on older versions of perl, no guarantee is made that the minimum required version
       will not be increased.  The version may be increased for any reason, and there is no promise that patches
       will be accepted to lower the minimum required perl.

Synopsis

         use Email::MessageID;

         my $mid = Email::MessageID->new->in_brackets;

         print "Message-ID: $mid\x0D\x0A";

Version

       version 1.408

See Also