git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Oddidies in the .mailmap parser & future syntax extensions

From
Junio C Hamano <gitster@pobox.com>
Date
Sep 10, 2021, 18:11 UTC
Message-ID
<xmqq1r5wti5a.fsf@gitster.g>
In-Reply-To
<877dfocps2.fsf@evledraar.gmail.com>
Ævar Arnfjörð Bjarmason <avarab@gmail.com> writes:
> [Changed subject]
[jc: culled CC addresses]
Show 7 quoted lines
> I'd expect:
>
>     Foo <foo@example.com> Bar
>
> To be an alias/shorthand for:
>
>     Foo <foo@example.com> Bar <foo@example.com>
OK.
Show 10 quoted lines
> More annoying is that this:
>
>     New <foo@example.com> <bar@example.com>
>     <foo@example.com> <zar@example.com>
>
> Doesn't mean the same as:
> ...
> I.e. I'd expect the name to map to the empty string, *unless* we saw an
> earlier address, i.e. just as we do for the first bar -> foo line (we
> map it to a name of "New", we don't map it to an empty name).

You expect the first one to map (anyname, <bar@example.com>) to ("New", <foo@example.com>) and you describe the second one does not map the human-readable part to "New", but it is unclear what the code does, or why you expect it to map to "" (or what your expectation is, for that matter, exactly---do you want an empty string, or do you want "New", or something else???).

FWIW, if we were designing it from scratch, I'd expect the second one to map (anyname, <zar@example.com>) to ($1, <foo@example.com>), keeping the human-readable part as-is and only map the e-mail part.

Or do you expect that when these two entries appear together, the first entry with "New" is carried over to the second entry?

Show 10 quoted lines
> Doing that would be strictly backwards compatible, i.e. now we'll
> entirely ignore the 3rd E-Mail address. It does mean we also
> accidentally support things like:
>
>     New <foo@example.com> <bar@example.com> # A comment, because we ignore everything after the 2nd address
>
> But don't tell anyone I told you that :) But that is something that
> might technically have inadvertently closed the door to future syntax
> extensions, but we could probably do them anyway, or at worst have some
> heuristic.

I vaguely recall that it was not an accident but a deliberate feature to allow comments, but don't tell anyone I told you that.

Previous: Ævar Arnfjörð BjarmasonNext: Ævar Arnfjörð Bjarmason
Message 10 of 13 in “.mailmap: Update mailmap”
  1. .mailmap: Update mailmapFangyi Zhou, Sep 10, 2021
  2. Gwyneth MorganSep 10, 2021
  3. Jeff KingSep 10, 2021
  4. Sibi SiddharthanSep 10, 2021
  5. Junio C HamanoSep 11, 2021
  6. Ævar Arnfjörð BjarmasonSep 11, 2021
  7. Jeff KingSep 11, 2021
  8. Jeff KingSep 11, 2021
  9. Oddidies in the .mailmap parser & future syntax extensionsÆvar Arnfjörð Bjarmason, Sep 10, 2021
  10. Junio C HamanoSep 10, 2021
  11. Ævar Arnfjörð BjarmasonSep 10, 2021
  12. Junio C HamanoSep 10, 2021
  13. Ævar Arnfjörð BjarmasonSep 13, 2021

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.