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

Re: [PATCH v4 0/3] use mailmap by default in git log

From
Junio C Hamano <gitster@pobox.com>
Date
Jul 12, 2019, 14:17 UTC
Message-ID
<xmqqblxzqqw3.fsf@gitster-ct.c.googlers.com>
In-Reply-To
<CAAOiGNwGqtSoG8vsy+3gb0=tDVvA1YcA3FcDP0KQMa0=xp5j9w@mail.gmail.com>
Ariadne Conill <ariadne@dereferenced.org> writes:
Show 9 quoted lines
>> What we need at this point is the "second release" phase, i.e.
>> additional warnings without yet changing the default behaviour.
>> After it is given to the end users and sufficient time passes, we
>> can flip the default.
>
> Do you have a proposed timetable for this?  I can add a warning
> message and we can proceed with the warning message for now and then
> flip the defaults later.  I just need to know what version you would
> like to do the flip in (3.0?) so that I can write the warning message.

I do not think we usually do this without having to say "at this release" in such a warning.

A recent example of a behaviour change that was backward incompatible was that we no longer allow

	$ git log -- ''
to mean the same thing as
	$ git log -- .

since Git 2.16. This change was initially planned in Git 2.11 timeframe, and we started warning when "git log" is used with an empty string as one of the pathspec elements on the command line in that release. We kept warning for some releases and then at last at Git 2.16 we flipped the switch.

It was started at d426430e ("pathspec: warn on empty strings as pathspec", 2016-06-22) and then flipped at 9e4e8a64 ("pathspec: die on empty strings as pathspec", 2017-06-06). Run "git show" on these commits, with pathspec "pathspec.c", to see exact wording we used.

You should be able to find other examples by looking in the Documentation/Relnotes directory and finding backward compatibility notes in there.

Show 5 quoted lines
> Warning: The `git log` command will default to using the mailmap file
> if present to map contributor names as of Git 3.0.  If you want to
> enable this behaviour now, use `git config --global log.mailmap true`
> to enable it.  If you want to explicitly disable this behaviour in the
> future, use `git config --global log.mailmap false` to disable it.

Other than (1) the explicit "as of ..." which we do not have to say, and (2) use of "--global", as this is pretty much per-project convention and is better handled by default per-repository basis, nto per-user basis, I think the proposed text tries to convey the right message. But again, it is advisable to study how we phrased these warning messages in past releases for different features and mimic them.

Thanks.
Previous: Ariadne ConillNext: Junio C Hamano
Message 9 of 12 in “use mailmap by default in git log”
  1. 0/3 use mailmap by default in git logAriadne Conill, Jul 11, 2019
  2. 1/3 log: use mailmap by defaultAriadne Conill, Jul 11, 2019
  3. 2/3 log: document --no-use-mailmap optionAriadne Conill, Jul 11, 2019
  4. 3/3 tests: rework mailmap tests for git logAriadne Conill, Jul 11, 2019
  5. Martin ÅgrenJul 11, 2019
  6. Junio C HamanoJul 11, 2019
  7. Junio C HamanoJul 11, 2019
  8. Ariadne ConillJul 12, 2019
  9. Junio C HamanoJul 12, 2019
  10. Junio C HamanoJul 12, 2019
  11. Ariadne ConillJul 12, 2019
  12. CB BaileySep 22, 2019

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.