Jonathan Nieder [off-list ref] writes:
Although as Dscho mentions, it's particularly irritating because it is
not part of the paginated output.
...
Let's bite the bullet and jump straight to --use-mailmap in case (4).
While at it, add a new log.mailmap setting "auto" that can be used to
explicitly request the new automatic behavior (so that e.g. if
log.mailmap is set to "true" system-side, I can set it to "auto" in my
per-user configuration).
While I think "revert to hardcoded default" may be a good idea, I do
not think the hardcoded default you implemented that changes the
behaviour based on the output destination makes much sense. If I
want to eradicate junkio@cox.net from my paged/interactive output, I
want to eradicate it also in the output piped to the script I use
for authorship stats.
I suspect that you may have misread the "is interactive" bit in the
original; that was used only to decide if we are going to warn.
Anyway, how about this much simplified version?
-- >8 --
From: Junio C Hamano <redacted>
Date: Thu, 1 Aug 2019 08:32:44 -0700
Subject: [PATCH] log: flip the --mailmap default unconditionally
It turns out that being cautious to warn against upcoming default
change was an unpopular behaviour, and such a care can easily be
defeated by distro packagers to render it ineffective anyway.
Just flip the default, with only a mention in the release notes.
Signed-off-by: Junio C Hamano <redacted>
---
Documentation/RelNotes/2.23.0.txt | 8 +++-----
builtin/log.c | 16 +---------------
t/t7006-pager.sh | 2 --
3 files changed, 4 insertions(+), 22 deletions(-)
diff --git a/Documentation/RelNotes/2.23.0.txt b/Documentation/RelNotes/2.23.0.txt
index 19e894a44e..6ef8f21b56 100644
--- a/Documentation/RelNotes/2.23.0.txt
+++ b/Documentation/RelNotes/2.23.0.txt
@@ -10,6 +10,9 @@ Backward compatibility note
prerequisite patches in an unstable way, which has been updated to
compute in a way that is compatible with "git patch-id --stable".
+ * The "git log" command by default behaves as if the --mailmap option
+ was given.
+
UI, Workflows & Features
@@ -91,11 +94,6 @@ UI, Workflows & Features
commit-graph files now, which allows the commit-graph files to be
updated incrementally.
- * The "git log" command learns to issue a warning when log.mailmap
- configuration is not set and --[no-]mailmap option is not used, to
- prepare users for future versions of Git that uses the mailmap by
- default.
-
* "git range-diff" output has been tweaked for easier identification
of which part of what file the patch shown is about.
diff --git a/builtin/log.c b/builtin/log.c
index 1cf9e37736..40b4cbf57d 100644
--- a/builtin/log.c
+++ b/builtin/log.c
@@ -156,16 +156,6 @@ static void cmd_log_init_defaults(struct rev_info *rev)
parse_date_format(default_date_mode, &rev->date_mode);
}
-static char warn_unspecified_mailmap_msg[] =
-N_("log.mailmap is not set; its implicit value will change in an\n"
- "upcoming release. To squelch this message and preserve current\n"
- "behaviour, set the log.mailmap configuration value to false.\n"
- "\n"
- "To squelch this message and adopt the new behaviour now, set the\n"
- "log.mailmap configuration value to true.\n"
- "\n"
- "See 'git help config' and search for 'log.mailmap' for further information.");
-
static void cmd_log_init_finish(int argc, const char **argv, const char *prefix,
struct rev_info *rev, struct setup_revision_opt *opt)
{@@ -214,12 +204,8 @@ static void cmd_log_init_finish(int argc, const char **argv, const char *prefix,
memset(&w, 0, sizeof(w));
userformat_find_requirements(NULL, &w);
- if (mailmap < 0) {
- if (session_is_interactive() && !rev->pretty_given)
- warning("%s\n", _(warn_unspecified_mailmap_msg));
-
+ if (mailmap < 0)
mailmap = 0;
- }
if (!rev->show_notes_given && (!rev->pretty_given || w.notes))
rev->show_notes = 1;diff --git a/t/t7006-pager.sh b/t/t7006-pager.sh
index 7976fa7bcc..00e09a375c 100755
--- a/t/t7006-pager.sh
+++ b/t/t7006-pager.sh
@@ -7,8 +7,6 @@ test_description='Test automatic use of a pager.'
. "$TEST_DIRECTORY"/lib-terminal.sh
test_expect_success 'setup' '
- : squelch advice messages during the transition &&
- git config --global log.mailmap false &&
sane_unset GIT_PAGER GIT_PAGER_IN_USE &&
test_unconfig core.pager &&
--
2.23.0-rc0-144-gce799e40b3