emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: oldest commit?


From: Eric S. Raymond
Subject: Re: oldest commit?
Date: Thu, 13 Nov 2014 12:29:04 -0500
User-agent: Mutt/1.5.21 (2010-09-15)

Karl Fogel <address@hidden>:
> Funny that in that commit record, Jim's affiliation (by email address)
> is with a company that won't exist for another 8 years :-).  I guess
> it's not too surprising that somewhere along Emacs's long chain of
> conversions there was at least one metadata chronology issue.

The transition comment warns about this. Email addresses are based on
conversion day, not on the time of the commit.  

Here's what I think happened to jimb's address.  At the time of the 
bzr conversion in 2009, there were no email addresses in the CVS,
so whover did that lift supplied jimb's email in 2009, at which point
RH certainly *did* exist. :-) 

I felt it was more important to have consistent identifiers than to
try to dig up historical addresses that might not be recoverable and, if
they were, might no longer be valid.

This is one reason why I asked on the list for preferred form of name
and email address, and why (in cases where it applied) I reconciled
variant forms of peoples' names and used the UTF-8 for whatever
non-ASCII characters they required.  In some cases this requred
multiple patches.  Here are some examples - the =C stands for "all
commits":

=C filter --replace /Adam Sjogren/Adam Sjøgren/g
=C filter --replace /K. Handa/Kenichi Handa/g
=C filter --regexp /[Aa]gustin [Mm]artin/Agustín Martín/g

In the third one I'm reconciling four variant forms and adding an
acute-accented i from the fifth (correct) one, which also occurred.

In some cases human names were entirely missing malformed or had been
swapped with email addresses:

=C filter --regexp /^ *<dancol/Daniel Colascione <dancol/
=C filter --regexp /address@hidden <>/Daniel Colascione <address@hidden>/
=C filter --replace /<address@hidden>/<address@hidden>/
=C filter --replace /<address@hidden>/<address@hidden>/

Just to show that this can happen to the best of us:

=C filter --replace /Richard M. Stallman <>/Richard M. Stallman 
<address@hidden>/

Here's a fun little triplet - you can infer a fourth address that also occurred:

=C filter --replace /joakim <address@hidden>/Joakim Verona <address@hidden>/
=C filter --replace /root <address@hidden>/Joakim Verona <address@hidden>/
=C filter --replace /joakim verona <address@hidden>/Joakim Verona 
<address@hidden

And here's the award for most diacriticals:

=C filter --replace /Stepán Nemec/Štěpán Němec/g

When I talk about the difference between a slapdash repo conversion
and a really high-quality, polished one, this is the sort of thing I mean.
-- 
                <a href="http://www.catb.org/~esr/";>Eric S. Raymond</a>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]