Eric Wong <normalperson@xxxxxxxx> writes: > Using a YYYYmmddHHMMSS date representation is more meaningful to > humans, especially when used for lookups on NNTP servers or linking > to archive sites via Message-ID (e.g. mid.gmane.org or > mid.mail-archive.com). This timestamp format more easily gives a > reader of the URL itself a rough date of a linked message compared > to having them calculate the seconds since the Unix epoch. > > Furthermore, having the MUA name in the Message-ID seems to be a > rare oddity I haven't noticed outside of git-send-email. We > already have an optional X-Mailer header field to advertise for > us, so extending the Message-ID by 15 characters can make for > unpleasant Message-ID-based URLs to archive sites. > > Signed-off-by: Eric Wong <normalperson@xxxxxxxx> > --- Sounds like a sensible goal. Just a few comments. - Is it safe to assume that we always can use POSIX::strftime(), or do we need some fallback? I am guessing that this is safe, as POSIX has been part of the core modules for a long time, and the script does "use 5.008" upfront. - It is my understanding that, as "use" is a compilation-time thing, hiding it inside a block does not help reducing the start-up overhead (people can use "require" if they want to do a lazy loading and optionally a fallback). Is my Perl5 outdated? Otherwise, let's have it near the beginning of the script, close to where we use Term::ReadLine and others. Thanks. > git-send-email.perl | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/git-send-email.perl b/git-send-email.perl > index d356901..23141e7 100755 > --- a/git-send-email.perl > +++ b/git-send-email.perl > @@ -949,7 +949,8 @@ my ($message_id_stamp, $message_id_serial); > sub make_message_id { > my $uniq; > if (!defined $message_id_stamp) { > - $message_id_stamp = sprintf("%s-%s", time, $$); > + use POSIX qw/strftime/; > + $message_id_stamp = strftime("%Y%m%d%H%M%S.$$", gmtime(time)); > $message_id_serial = 0; > } > $message_id_serial++; > @@ -964,7 +965,7 @@ sub make_message_id { > require Sys::Hostname; > $du_part = 'user@' . Sys::Hostname::hostname(); > } > - my $message_id_template = "<%s-git-send-email-%s>"; > + my $message_id_template = "<%s-%s>"; > $message_id = sprintf($message_id_template, $uniq, $du_part); > #print "new message id = $message_id\n"; # Was useful for debugging > } -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html