{"thread":{"id":"65811","subject":"[PATCH 0/2] Silence po catalog output under \"make -s\"","startedAt":"2026-06-14T17:52:22Z","lastAt":"2026-07-12T19:41:52Z","messageCount":21,"participants":["Harald Nordgren via GitGitGadget","Harald Nordgren","Johannes Sixt","Junio C Hamano"],"isPatch":true,"patchVersion":1,"patchTotal":2},"messages":[{"id":"545492","messageId":"pull.2339.git.git.1781459539.gitgitgadget@gmail.com","threadId":"65811","inReplyTo":null,"subject":"[PATCH 0/2] Silence po catalog output under \"make -s\"","fromName":"Harald Nordgren via GitGitGadget","fromEmail":"gitgitgadget@gmail.com","sentAt":"2026-06-14T17:52:17Z","receivedAt":"2026-06-14T17:52:22Z","isPatch":true,"body":"The gitk and git-gui catalog rules sent msgfmt --statistics output (and a\n\"Generating catalog\" line) to stderr, so it survived \"make -s\". Emit it only\nwhen \"-s\" is absent, keeping a quiet build silent and a verbose build\nunchanged.\n\nHarald Nordgren (2):\n  gitk: silence catalog output under \"make -s\"\n  git-gui: silence statistics under \"make -s\"\n\n git-gui/Makefile  |  3 ++-\n gitk-git/Makefile | 10 ++++++++--\n 2 files changed, 10 insertions(+), 3 deletions(-)\n\n\nbase-commit: ea97ad8d017de0c9037451a78008a0fd60abea0c\nPublished-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-2339%2FHaraldNordgren%2Fsilence-catalog-output-under-make-s-v1\nFetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-2339/HaraldNordgren/silence-catalog-output-under-make-s-v1\nPull-Request: https://github.com/git/git/pull/2339\n-- \ngitgitgadget\n"},{"id":"545493","messageId":"18451d46e431dec2ce3275d4837bd595298fc246.1781459539.git.gitgitgadget@gmail.com","threadId":"65811","inReplyTo":"pull.2339.git.git.1781459539.gitgitgadget@gmail.com","subject":"[PATCH 1/2] gitk: silence catalog output under \"make -s\"","fromName":"Harald Nordgren via GitGitGadget","fromEmail":"gitgitgadget@gmail.com","sentAt":"2026-06-14T17:52:18Z","receivedAt":"2026-06-14T17:52:23Z","isPatch":true,"body":"From: Harald Nordgren <haraldnordgren@gmail.com>\n\nThe catalog rule unconditionally echoed \"Generating catalog\" and ran\nmsgfmt with --statistics, whose output went to stderr and so survived\n\"make -s\".\n\nEmit the \"Generating catalog\" line and the msgfmt statistics only when\n\"-s\" is absent, leaving a quiet build silent while default and V=1\nbuilds are unchanged.\n\nSigned-off-by: Harald Nordgren <haraldnordgren@gmail.com>\n---\n gitk-git/Makefile | 10 ++++++++--\n 1 file changed, 8 insertions(+), 2 deletions(-)\n\ndiff --git a/gitk-git/Makefile b/gitk-git/Makefile\nindex 41116d8a14..10078c54d4 100644\n--- a/gitk-git/Makefile\n+++ b/gitk-git/Makefile\n@@ -43,10 +43,16 @@ PO_TEMPLATE = po/gitk.pot\n ALL_POFILES = $(wildcard po/*.po)\n ALL_MSGFILES = $(subst .po,.msg,$(ALL_POFILES))\n \n+MSGFMT_GEN = @:\n+\n+ifneq ($(findstring s,$(firstword -$(MAKEFLAGS))),s)\n ifndef V\n \tQUIET          = @\n \tQUIET_GEN      = $(QUIET)echo '   ' GEN $@ &&\n endif\n+\tMSGFMT_GEN   = @echo Generating catalog $@\n+\tMSGFMT_STATS = --statistics\n+endif\n \n all:: gitk-wish $(ALL_MSGFILES)\n \n@@ -75,8 +81,8 @@ update-po:: $(PO_TEMPLATE)\n \techo; \\\n \techo \"\tgit config filter.gettext-no-location.clean \\\"msgcat --no-location -\\\"\"\n $(ALL_MSGFILES): %.msg : %.po\n-\t@echo Generating catalog $@\n-\t$(MSGFMT) --statistics --tcl -l $(basename $(notdir $<)) -d $(dir $@) $<\n+\t$(MSGFMT_GEN)\n+\t$(MSGFMT) $(MSGFMT_STATS) --tcl -l $(basename $(notdir $<)) -d $(dir $@) $<\n \n .PHONY: all install uninstall clean update-po\n .PHONY: FORCE\n-- \ngitgitgadget\n\n"},{"id":"545494","messageId":"5071c5106a9740ba7d11d45803ec90340f43aa4c.1781459539.git.gitgitgadget@gmail.com","threadId":"65811","inReplyTo":"pull.2339.git.git.1781459539.gitgitgadget@gmail.com","subject":"[PATCH 2/2] git-gui: silence statistics under \"make -s\"","fromName":"Harald Nordgren via GitGitGadget","fromEmail":"gitgitgadget@gmail.com","sentAt":"2026-06-14T17:52:19Z","receivedAt":"2026-06-14T17:52:25Z","isPatch":true,"body":"From: Harald Nordgren <haraldnordgren@gmail.com>\n\nThe catalog rule passed --statistics to msgfmt unconditionally, and its\noutput went to stderr, so it survived \"make -s\".\n\nPass --statistics only when \"-s\" is absent, leaving a quiet build silent\nwhile default and V=1 builds are unchanged.\n\nSigned-off-by: Harald Nordgren <haraldnordgren@gmail.com>\n---\n git-gui/Makefile | 3 ++-\n 1 file changed, 2 insertions(+), 1 deletion(-)\n\ndiff --git a/git-gui/Makefile b/git-gui/Makefile\nindex d33204e875..76245fa84b 100644\n--- a/git-gui/Makefile\n+++ b/git-gui/Makefile\n@@ -90,6 +90,7 @@ ifndef V\n \tREMOVE_F0 = dst=\n \tREMOVE_F1 = && echo '   ' REMOVE `basename \"$$dst\"` && $(RM_RF) \"$$dst\"\n endif\n+\tMSGFMT_STATS = --statistics\n endif\n \n TCLTK_PATH ?= wish\n@@ -155,7 +156,7 @@ $(PO_TEMPLATE): $(SCRIPT_SH) $(ALL_LIBFILES)\n update-po:: $(PO_TEMPLATE)\n \t$(foreach p, $(ALL_POFILES), echo Updating $p ; msgmerge -U $p $(PO_TEMPLATE) ; )\n $(ALL_MSGFILES): %.msg : %.po\n-\t$(QUIET_MSGFMT0)$(MSGFMT) --statistics --tcl -l $(basename $(notdir $<)) -d $(dir $@) $< $(QUIET_MSGFMT1)\n+\t$(QUIET_MSGFMT0)$(MSGFMT) $(MSGFMT_STATS) --tcl -l $(basename $(notdir $<)) -d $(dir $@) $< $(QUIET_MSGFMT1)\n \n lib/tclIndex: $(ALL_LIBFILES) generate-tclindex.sh GIT-GUI-BUILD-OPTIONS\n \t$(QUIET_INDEX)$(SHELL_PATH) generate-tclindex.sh . ./GIT-GUI-BUILD-OPTIONS $(ALL_LIBFILES)\n-- \ngitgitgadget\n"},{"id":"545610","messageId":"CAHwyqnVG4LjQ-q1-DD56595Ba2OkOzA3LzHLKT+O+c-SViD8Sw@mail.gmail.com","threadId":"65811","inReplyTo":"pull.2339.git.git.1781459539.gitgitgadget@gmail.com","subject":"Re: [PATCH 0/2] Silence po catalog output under \"make -s\"","fromName":"Harald Nordgren","fromEmail":"haraldnordgren@gmail.com","sentAt":"2026-06-15T19:25:12Z","receivedAt":"2026-06-15T19:25:51Z","isPatch":true,"body":"It's this output that currently is not silent:\n\n$ make -s\n...\n579 translated messages.\n558 translated messages.\n514 translated messages.\n381 translated messages, 4 fuzzy translations, 6 untranslated messages.\n520 translated messages.\n519 translated messages, 1 untranslated message.\n546 translated messages, 1 untranslated message.\n474 translated messages, 39 untranslated messages.\n520 translated messages.\n550 translated messages.\n579 translated messages.\n576 translated messages.\n366 translated messages, 7 fuzzy translations, 17 untranslated messages.\n543 translated messages.\nGenerating catalog po/bg.msg\n322 translated messages.\nGenerating catalog po/ca.msg\n307 translated messages.\nGenerating catalog po/de.msg\n307 translated messages.\nGenerating catalog po/es.msg\n184 translated messages, 46 fuzzy translations, 77 untranslated messages.\nGenerating catalog po/fr.msg\n311 translated messages.\nGenerating catalog po/hu.msg\n277 translated messages, 18 fuzzy translations, 12 untranslated messages.\nGenerating catalog po/it.msg\n274 translated messages, 17 fuzzy translations, 16 untranslated messages.\nGenerating catalog po/ja.msg\n311 translated messages.\nGenerating catalog po/pt_br.msg\n279 translated messages, 16 fuzzy translations, 12 untranslated messages.\nGenerating catalog po/pt_pt.msg\n311 translated messages.\nGenerating catalog po/ru.msg\n317 translated messages.\nGenerating catalog po/sv.msg\n323 translated messages.\nGenerating catalog po/ta.msg\nGenerating catalog po/vi.msg\n327 translated messages.\nGenerating catalog po/zh_cn.msg\n307 translated messages.\n    GEN gitk-wish\n317 translated messages.\n\n\n\n\nOn Sun, Jun 14, 2026 at 7:52 PM Harald Nordgren via GitGitGadget\n<gitgitgadget@gmail.com> wrote:\n>\n> The gitk and git-gui catalog rules sent msgfmt --statistics output (and a\n> \"Generating catalog\" line) to stderr, so it survived \"make -s\". Emit it only\n> when \"-s\" is absent, keeping a quiet build silent and a verbose build\n> unchanged.\n>\n> Harald Nordgren (2):\n>   gitk: silence catalog output under \"make -s\"\n>   git-gui: silence statistics under \"make -s\"\n>\n>  git-gui/Makefile  |  3 ++-\n>  gitk-git/Makefile | 10 ++++++++--\n>  2 files changed, 10 insertions(+), 3 deletions(-)\n>\n>\n> base-commit: ea97ad8d017de0c9037451a78008a0fd60abea0c\n> Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-2339%2FHaraldNordgren%2Fsilence-catalog-output-under-make-s-v1\n> Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-2339/HaraldNordgren/silence-catalog-output-under-make-s-v1\n> Pull-Request: https://github.com/git/git/pull/2339\n> --\n> gitgitgadget\n"},{"id":"546039","messageId":"11c062f7-09ae-4a6c-80c5-2ac9e5d37d86@kdbg.org","threadId":"65811","inReplyTo":"pull.2339.git.git.1781459539.gitgitgadget@gmail.com","subject":"Re: [PATCH 0/2] Silence po catalog output under \"make -s\"","fromName":"Johannes Sixt","fromEmail":"j6t@kdbg.org","sentAt":"2026-06-20T15:46:28Z","receivedAt":"2026-06-20T16:35:46Z","isPatch":true,"body":"Am 14.06.26 um 19:52 schrieb Harald Nordgren via GitGitGadget:\n> The gitk and git-gui catalog rules sent msgfmt --statistics output (and a\n> \"Generating catalog\" line) to stderr, so it survived \"make -s\". Emit it only\n> when \"-s\" is absent, keeping a quiet build silent and a verbose build\n> unchanged.\nI think that the statistics output isn't needed. A data point is that\nthe Git repository doesn't use --statistics: 2f12b31b746c (\"Makefile:\ndon't invoke msgfmt with --statistics\", 2021-12-17). So, my suggestion\nwould be to just remove the option.\n\nWe don't need the \"Generating catalog\" message, either. Just remove it\nas well.\n\n-- Hannes\n\n"},{"id":"546044","messageId":"pull.2339.v2.git.git.1781995570677.gitgitgadget@gmail.com","threadId":"65811","inReplyTo":"pull.2339.git.git.1781459539.gitgitgadget@gmail.com","subject":"[PATCH v2] gitk, git-gui: drop msgfmt --statistics output","fromName":"Harald Nordgren via GitGitGadget","fromEmail":"gitgitgadget@gmail.com","sentAt":"2026-06-20T22:46:10Z","receivedAt":"2026-06-20T22:46:13Z","isPatch":true,"body":"From: Harald Nordgren <haraldnordgren@gmail.com>\n\nThe catalog rules ran msgfmt with --statistics, whose output went to\nstderr and so survived \"make -s\" (gitk also echoed \"Generating\ncatalog\").\n\nThe statistics are not needed, as in 2f12b31b746c (Makefile: don't\ninvoke msgfmt with --statistics, 2021-12-17), and the \"Generating\ncatalog\" line is not needed either. Remove them so a quiet build stays\nquiet.\n\nSigned-off-by: Harald Nordgren <haraldnordgren@gmail.com>\n---\n    Silence po catalog output under \"make -s\"\n    \n    The gitk and git-gui catalog rules sent msgfmt --statistics output (and\n    a \"Generating catalog\" line) to stderr, so it survived \"make -s\". Emit\n    it only when \"-s\" is absent, keeping a quiet build silent and a verbose\n    build unchanged.\n    \n    Changes in v2:\n    \n     * Reworked from conditionally silencing msgfmt output under make -s to\n       just removing --statistics outright, following 2f12b31b74 (Makefile:\n       don't invoke msgfmt with --statistics, 2021-12-17)\n     * Also drop gitk's Generating catalog echo, which is not needed either\n\nPublished-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-2339%2FHaraldNordgren%2Fsilence-catalog-output-under-make-s-v2\nFetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-2339/HaraldNordgren/silence-catalog-output-under-make-s-v2\nPull-Request: https://github.com/git/git/pull/2339\n\nRange-diff vs v1:\n\n 1:  18451d46e4 < -:  ---------- gitk: silence catalog output under \"make -s\"\n 2:  5071c5106a ! 1:  ee57c25009 git-gui: silence statistics under \"make -s\"\n     @@ Metadata\n      Author: Harald Nordgren <haraldnordgren@gmail.com>\n      \n       ## Commit message ##\n     -    git-gui: silence statistics under \"make -s\"\n     +    gitk, git-gui: drop msgfmt --statistics output\n      \n     -    The catalog rule passed --statistics to msgfmt unconditionally, and its\n     -    output went to stderr, so it survived \"make -s\".\n     +    The catalog rules ran msgfmt with --statistics, whose output went to\n     +    stderr and so survived \"make -s\" (gitk also echoed \"Generating\n     +    catalog\").\n      \n     -    Pass --statistics only when \"-s\" is absent, leaving a quiet build silent\n     -    while default and V=1 builds are unchanged.\n     +    The statistics are not needed, as in 2f12b31b746c (Makefile: don't\n     +    invoke msgfmt with --statistics, 2021-12-17), and the \"Generating\n     +    catalog\" line is not needed either. Remove them so a quiet build stays\n     +    quiet.\n      \n          Signed-off-by: Harald Nordgren <haraldnordgren@gmail.com>\n      \n       ## git-gui/Makefile ##\n     -@@ git-gui/Makefile: ifndef V\n     - \tREMOVE_F0 = dst=\n     - \tREMOVE_F1 = && echo '   ' REMOVE `basename \"$$dst\"` && $(RM_RF) \"$$dst\"\n     - endif\n     -+\tMSGFMT_STATS = --statistics\n     - endif\n     - \n     - TCLTK_PATH ?= wish\n      @@ git-gui/Makefile: $(PO_TEMPLATE): $(SCRIPT_SH) $(ALL_LIBFILES)\n       update-po:: $(PO_TEMPLATE)\n       \t$(foreach p, $(ALL_POFILES), echo Updating $p ; msgmerge -U $p $(PO_TEMPLATE) ; )\n       $(ALL_MSGFILES): %.msg : %.po\n      -\t$(QUIET_MSGFMT0)$(MSGFMT) --statistics --tcl -l $(basename $(notdir $<)) -d $(dir $@) $< $(QUIET_MSGFMT1)\n     -+\t$(QUIET_MSGFMT0)$(MSGFMT) $(MSGFMT_STATS) --tcl -l $(basename $(notdir $<)) -d $(dir $@) $< $(QUIET_MSGFMT1)\n     ++\t$(QUIET_MSGFMT0)$(MSGFMT) --tcl -l $(basename $(notdir $<)) -d $(dir $@) $< $(QUIET_MSGFMT1)\n       \n       lib/tclIndex: $(ALL_LIBFILES) generate-tclindex.sh GIT-GUI-BUILD-OPTIONS\n       \t$(QUIET_INDEX)$(SHELL_PATH) generate-tclindex.sh . ./GIT-GUI-BUILD-OPTIONS $(ALL_LIBFILES)\n     +\n     + ## gitk-git/Makefile ##\n     +@@ gitk-git/Makefile: update-po:: $(PO_TEMPLATE)\n     + \techo; \\\n     + \techo \"\tgit config filter.gettext-no-location.clean \\\"msgcat --no-location -\\\"\"\n     + $(ALL_MSGFILES): %.msg : %.po\n     +-\t@echo Generating catalog $@\n     +-\t$(MSGFMT) --statistics --tcl -l $(basename $(notdir $<)) -d $(dir $@) $<\n     ++\t$(MSGFMT) --tcl -l $(basename $(notdir $<)) -d $(dir $@) $<\n     + \n     + .PHONY: all install uninstall clean update-po\n     + .PHONY: FORCE\n\n\n git-gui/Makefile  | 2 +-\n gitk-git/Makefile | 3 +--\n 2 files changed, 2 insertions(+), 3 deletions(-)\n\ndiff --git a/git-gui/Makefile b/git-gui/Makefile\nindex d33204e875..48d848a59d 100644\n--- a/git-gui/Makefile\n+++ b/git-gui/Makefile\n@@ -155,7 +155,7 @@ $(PO_TEMPLATE): $(SCRIPT_SH) $(ALL_LIBFILES)\n update-po:: $(PO_TEMPLATE)\n \t$(foreach p, $(ALL_POFILES), echo Updating $p ; msgmerge -U $p $(PO_TEMPLATE) ; )\n $(ALL_MSGFILES): %.msg : %.po\n-\t$(QUIET_MSGFMT0)$(MSGFMT) --statistics --tcl -l $(basename $(notdir $<)) -d $(dir $@) $< $(QUIET_MSGFMT1)\n+\t$(QUIET_MSGFMT0)$(MSGFMT) --tcl -l $(basename $(notdir $<)) -d $(dir $@) $< $(QUIET_MSGFMT1)\n \n lib/tclIndex: $(ALL_LIBFILES) generate-tclindex.sh GIT-GUI-BUILD-OPTIONS\n \t$(QUIET_INDEX)$(SHELL_PATH) generate-tclindex.sh . ./GIT-GUI-BUILD-OPTIONS $(ALL_LIBFILES)\ndiff --git a/gitk-git/Makefile b/gitk-git/Makefile\nindex 41116d8a14..0ae083c1ca 100644\n--- a/gitk-git/Makefile\n+++ b/gitk-git/Makefile\n@@ -75,8 +75,7 @@ update-po:: $(PO_TEMPLATE)\n \techo; \\\n \techo \"\tgit config filter.gettext-no-location.clean \\\"msgcat --no-location -\\\"\"\n $(ALL_MSGFILES): %.msg : %.po\n-\t@echo Generating catalog $@\n-\t$(MSGFMT) --statistics --tcl -l $(basename $(notdir $<)) -d $(dir $@) $<\n+\t$(MSGFMT) --tcl -l $(basename $(notdir $<)) -d $(dir $@) $<\n \n .PHONY: all install uninstall clean update-po\n .PHONY: FORCE\n\nbase-commit: 8d96f09e9245ddf80c1981476fcbac8c4bb4125f\n-- \ngitgitgadget\n"},{"id":"546069","messageId":"efc97fee-a98c-497f-94a9-6f8b77667f30@kdbg.org","threadId":"65811","inReplyTo":"pull.2339.v2.git.git.1781995570677.gitgitgadget@gmail.com","subject":"[PATCH 2/1] git-gui: reduce complexity of the quiet msgfmt rule","fromName":"Johannes Sixt","fromEmail":"j6t@kdbg.org","sentAt":"2026-06-21T10:33:35Z","receivedAt":"2026-06-21T10:33:46Z","isPatch":true,"body":"In non-verbose builds (without V=1) the rule to compile *.po files with\nmsgfmt captures the output in a shell variable and then strips down the\ntext produced by --statistics to fit on a 80 column line. The previous\ncommit removed --statistics output of the msgfmt invocation, so that we\ndon't get to see anything beyond \"MSGFMT po/xx.msg\" anymore. Make the\nrule as minimal as the other \"quiet\" rules.\n\nSigned-off-by: Johannes Sixt <j6t@kdbg.org>\n---\nAm 21.06.26 um 00:46 schrieb Harald Nordgren via GitGitGadget:\n> The catalog rules ran msgfmt with --statistics, whose output went to\n> stderr and so survived \"make -s\" (gitk also echoed \"Generating\n> catalog\").\n> \n> The statistics are not needed, as in 2f12b31b746c (Makefile: don't\n> invoke msgfmt with --statistics, 2021-12-17), and the \"Generating\n> catalog\" line is not needed either. Remove them so a quiet build stays\n> quiet.\n\nI split off the git-gui part, adjusted the commit message, and then\napplied the patch below to simplify the Makefile further.\n\n Makefile | 5 ++---\n 1 file changed, 2 insertions(+), 3 deletions(-)\n\ndiff --git a/Makefile b/Makefile\nindex 48d848a59dfb..2e1711adc5a5 100644\n--- a/Makefile\n+++ b/Makefile\n@@ -69,8 +69,7 @@ ifndef V\n \tQUIET          = @\n \tQUIET_GEN      = $(QUIET)echo '   ' GEN '$@' &&\n \tQUIET_INDEX    = $(QUIET)echo '   ' INDEX $(dir $@) &&\n-\tQUIET_MSGFMT0  = $(QUIET)printf '    MSGFMT %12s ' $@ && v=`\n-\tQUIET_MSGFMT1  = 2>&1` && echo \"$$v\" | sed -e 's/fuzzy translations/fuzzy/' | sed -e 's/ messages*//g'\n+\tQUIET_MSGFMT   = $(QUIET)echo '   ' MSGFMT '$@' &&\n \n \tINSTALL_D0 = dir=\n \tINSTALL_D1 = && echo ' ' DEST $$dir && $(INSTALL) -d -m 755 \"$$dir\"\n@@ -155,7 +154,7 @@ $(PO_TEMPLATE): $(SCRIPT_SH) $(ALL_LIBFILES)\n update-po:: $(PO_TEMPLATE)\n \t$(foreach p, $(ALL_POFILES), echo Updating $p ; msgmerge -U $p $(PO_TEMPLATE) ; )\n $(ALL_MSGFILES): %.msg : %.po\n-\t$(QUIET_MSGFMT0)$(MSGFMT) --tcl -l $(basename $(notdir $<)) -d $(dir $@) $< $(QUIET_MSGFMT1)\n+\t$(QUIET_MSGFMT)$(MSGFMT) --tcl -l $(basename $(notdir $<)) -d $(dir $@) $<\n \n lib/tclIndex: $(ALL_LIBFILES) generate-tclindex.sh GIT-GUI-BUILD-OPTIONS\n \t$(QUIET_INDEX)$(SHELL_PATH) generate-tclindex.sh . ./GIT-GUI-BUILD-OPTIONS $(ALL_LIBFILES)\n-- \n2.55.0.rc0.230.g889306758c\n\n\n"},{"id":"546070","messageId":"98718401-9ff4-4b1a-97c7-71f8b6639fea@kdbg.org","threadId":"65811","inReplyTo":"pull.2339.v2.git.git.1781995570677.gitgitgadget@gmail.com","subject":"Re: [PATCH v2] gitk, git-gui: drop msgfmt --statistics output","fromName":"Johannes Sixt","fromEmail":"j6t@kdbg.org","sentAt":"2026-06-21T13:00:05Z","receivedAt":"2026-06-21T13:00:09Z","isPatch":true,"body":"Am 21.06.26 um 00:46 schrieb Harald Nordgren via GitGitGadget:\n> From: Harald Nordgren <haraldnordgren@gmail.com>\n> \n> The catalog rules ran msgfmt with --statistics, whose output went to\n> stderr and so survived \"make -s\" (gitk also echoed \"Generating\n> catalog\").\n> \n> The statistics are not needed, as in 2f12b31b746c (Makefile: don't\n> invoke msgfmt with --statistics, 2021-12-17), and the \"Generating\n> catalog\" line is not needed either. Remove them so a quiet build stays\n> quiet.\n> diff --git a/gitk-git/Makefile b/gitk-git/Makefile\n> index 41116d8a14..0ae083c1ca 100644\n> --- a/gitk-git/Makefile\n> +++ b/gitk-git/Makefile\n> @@ -75,8 +75,7 @@ update-po:: $(PO_TEMPLATE)\n>  \techo; \\\n>  \techo \"\tgit config filter.gettext-no-location.clean \\\"msgcat --no-location -\\\"\"\n>  $(ALL_MSGFILES): %.msg : %.po\n> -\t@echo Generating catalog $@\n> -\t$(MSGFMT) --statistics --tcl -l $(basename $(notdir $<)) -d $(dir $@) $<\n> +\t$(MSGFMT) --tcl -l $(basename $(notdir $<)) -d $(dir $@) $<\n>  \n>  .PHONY: all install uninstall clean update-po\n>  .PHONY: FORCE\nThis Gitk part doesn't make the build silent, yet. It misses the \"if -s\nis in the flags\" bracket.\n\nIt do not mind doing both (removing --statistics and make it silent) in\na single patch.\n\nBTW, please write commit message in the usual style, in particular,\ndescribe the status quo in present tense, not past tense.\n\nPlease bear in mind that Git, Gitk and Git GUI are tracked in different\nrepositories. Do not put changes to multiple of these into a single\ncommit/patch.\n\n-- Hannes\n\n"},{"id":"546071","messageId":"CAHwyqnWM8GpYWOLdMtaF1YJ9mTRBtK0NCQeZE4AorO==7Mz2tg@mail.gmail.com","threadId":"65811","inReplyTo":"98718401-9ff4-4b1a-97c7-71f8b6639fea@kdbg.org","subject":"Re: [PATCH v2] gitk, git-gui: drop msgfmt --statistics output","fromName":"Harald Nordgren","fromEmail":"haraldnordgren@gmail.com","sentAt":"2026-06-21T13:15:30Z","receivedAt":"2026-06-21T13:16:08Z","isPatch":true,"body":"Hi Johannes!\n\nThanks for the feedback here. What do you want me to do now, should I\nupdate my code or you are taking over the whole thing from me?\n\n\nHarald\n"},{"id":"546072","messageId":"c98bc105-f868-43bd-8268-52eb56e5a7c5@kdbg.org","threadId":"65811","inReplyTo":"CAHwyqnWM8GpYWOLdMtaF1YJ9mTRBtK0NCQeZE4AorO==7Mz2tg@mail.gmail.com","subject":"Re: [PATCH v2] gitk, git-gui: drop msgfmt --statistics output","fromName":"Johannes Sixt","fromEmail":"j6t@kdbg.org","sentAt":"2026-06-21T13:27:35Z","receivedAt":"2026-06-21T13:27:49Z","isPatch":true,"body":"Am 21.06.26 um 15:15 schrieb Harald Nordgren:\n> Thanks for the feedback here. What do you want me to do now, should I\n> update my code or you are taking over the whole thing from me?\nThe git-gui part is good. The Gitk part needs more work. Please submit a\nnew patch for Gitk under the topic \"make `make -s` silent\". That this\nhas to remove --statistics from msgfmt invocations is just a part of\nthis topic.\n\n-- Hannes\n\n"},{"id":"546073","messageId":"CAHwyqnU45DKGMfhJ1e3FmaebRUWkYb39pojPU2TBgOEDvgv-DQ@mail.gmail.com","threadId":"65811","inReplyTo":"c98bc105-f868-43bd-8268-52eb56e5a7c5@kdbg.org","subject":"Re: [PATCH v2] gitk, git-gui: drop msgfmt --statistics output","fromName":"Harald Nordgren","fromEmail":"haraldnordgren@gmail.com","sentAt":"2026-06-21T13:32:33Z","receivedAt":"2026-06-21T13:33:11Z","isPatch":true,"body":"Same series or a new series alongside this one?\n\n\nHarald\n"},{"id":"546074","messageId":"a0035bda-68ae-4998-8e2e-f62d3bae14ef@kdbg.org","threadId":"65811","inReplyTo":"CAHwyqnU45DKGMfhJ1e3FmaebRUWkYb39pojPU2TBgOEDvgv-DQ@mail.gmail.com","subject":"Re: [PATCH v2] gitk, git-gui: drop msgfmt --statistics output","fromName":"Johannes Sixt","fromEmail":"j6t@kdbg.org","sentAt":"2026-06-21T13:47:20Z","receivedAt":"2026-06-21T13:47:32Z","isPatch":true,"body":"Am 21.06.26 um 15:32 schrieb Harald Nordgren:\n> Same series or a new series alongside this one?\nDon't start a new thread. Since you are using Gitgitgadget, I think this\nmeans that it should be the \"same series\", whatever the means for you.\n\n-- Hannes\n\n"},{"id":"546075","messageId":"pull.2339.v3.git.git.1782053803.gitgitgadget@gmail.com","threadId":"65811","inReplyTo":"pull.2339.v2.git.git.1781995570677.gitgitgadget@gmail.com","subject":"[PATCH v3 0/2] Silence po catalog output under \"make -s\"","fromName":"Harald Nordgren via GitGitGadget","fromEmail":"gitgitgadget@gmail.com","sentAt":"2026-06-21T14:56:41Z","receivedAt":"2026-06-21T14:56:45Z","isPatch":true,"body":"The gitk and git-gui are noisy despite \"make -s\", quiet the builds.\n\nChanges in v3:\n\n * Split the single combined commit into two, one per Makefile (gitk,\n   git-gui)\n * gitk: gate the quiet helpers on -s in MAKEFLAGS and give the catalog rule\n   a QUIET_MSGFMT prefix, so a silent build emits no MSGFMT/GEN lines\n * git-gui: replace the QUIET_MSGFMT0/QUIET_MSGFMT1 pair with a single\n   QUIET_MSGFMT, since with --statistics gone there is no output left to\n   reformat\n\nChanges in v2:\n\n * Reworked from conditionally silencing msgfmt output under make -s to just\n   removing --statistics outright, following 2f12b31b74 (Makefile: don't\n   invoke msgfmt with --statistics, 2021-12-17)\n * Also drop gitk's Generating catalog echo, which is not needed either\n\nHarald Nordgren (2):\n  gitk: make \"make -s\" silent\n  git-gui: silence statistics under \"make -s\"\n\n git-gui/Makefile  | 5 ++---\n gitk-git/Makefile | 6 ++++--\n 2 files changed, 6 insertions(+), 5 deletions(-)\n\n\nbase-commit: 8d96f09e9245ddf80c1981476fcbac8c4bb4125f\nPublished-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-2339%2FHaraldNordgren%2Fsilence-catalog-output-under-make-s-v3\nFetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-2339/HaraldNordgren/silence-catalog-output-under-make-s-v3\nPull-Request: https://github.com/git/git/pull/2339\n\nRange-diff vs v2:\n\n 1:  ee57c25009 ! 1:  4d977d6f3f gitk, git-gui: drop msgfmt --statistics output\n     @@ Metadata\n      Author: Harald Nordgren <haraldnordgren@gmail.com>\n      \n       ## Commit message ##\n     -    gitk, git-gui: drop msgfmt --statistics output\n     +    gitk: make \"make -s\" silent\n      \n     -    The catalog rules ran msgfmt with --statistics, whose output went to\n     -    stderr and so survived \"make -s\" (gitk also echoed \"Generating\n     -    catalog\").\n     +    The catalog rule runs msgfmt with --statistics, whose output goes to\n     +    stderr and so survives \"make -s\", and the rule also echoes \"Generating\n     +    catalog\". The Gitk Makefile guards its quiet helpers on V alone, so a\n     +    silent build still prints these and the GEN line.\n      \n          The statistics are not needed, as in 2f12b31b746c (Makefile: don't\n     -    invoke msgfmt with --statistics, 2021-12-17), and the \"Generating\n     -    catalog\" line is not needed either. Remove them so a quiet build stays\n     -    quiet.\n     +    invoke msgfmt with --statistics, 2021-12-17). Drop them, suppress the\n     +    quiet helpers when \"s\" is among the make flags, and give the catalog\n     +    rule a quiet prefix so a quiet build stays quiet.\n      \n          Signed-off-by: Harald Nordgren <haraldnordgren@gmail.com>\n      \n     - ## git-gui/Makefile ##\n     -@@ git-gui/Makefile: $(PO_TEMPLATE): $(SCRIPT_SH) $(ALL_LIBFILES)\n     - update-po:: $(PO_TEMPLATE)\n     - \t$(foreach p, $(ALL_POFILES), echo Updating $p ; msgmerge -U $p $(PO_TEMPLATE) ; )\n     - $(ALL_MSGFILES): %.msg : %.po\n     --\t$(QUIET_MSGFMT0)$(MSGFMT) --statistics --tcl -l $(basename $(notdir $<)) -d $(dir $@) $< $(QUIET_MSGFMT1)\n     -+\t$(QUIET_MSGFMT0)$(MSGFMT) --tcl -l $(basename $(notdir $<)) -d $(dir $@) $< $(QUIET_MSGFMT1)\n     - \n     - lib/tclIndex: $(ALL_LIBFILES) generate-tclindex.sh GIT-GUI-BUILD-OPTIONS\n     - \t$(QUIET_INDEX)$(SHELL_PATH) generate-tclindex.sh . ./GIT-GUI-BUILD-OPTIONS $(ALL_LIBFILES)\n     -\n       ## gitk-git/Makefile ##\n     +@@ gitk-git/Makefile: PO_TEMPLATE = po/gitk.pot\n     + ALL_POFILES = $(wildcard po/*.po)\n     + ALL_MSGFILES = $(subst .po,.msg,$(ALL_POFILES))\n     + \n     ++ifneq ($(findstring s,$(firstword -$(MAKEFLAGS))),s)\n     + ifndef V\n     + \tQUIET          = @\n     + \tQUIET_GEN      = $(QUIET)echo '   ' GEN $@ &&\n     ++\tQUIET_MSGFMT   = $(QUIET)echo '   ' MSGFMT $@ &&\n     ++endif\n     + endif\n     + \n     + all:: gitk-wish $(ALL_MSGFILES)\n      @@ gitk-git/Makefile: update-po:: $(PO_TEMPLATE)\n       \techo; \\\n       \techo \"\tgit config filter.gettext-no-location.clean \\\"msgcat --no-location -\\\"\"\n       $(ALL_MSGFILES): %.msg : %.po\n      -\t@echo Generating catalog $@\n      -\t$(MSGFMT) --statistics --tcl -l $(basename $(notdir $<)) -d $(dir $@) $<\n     -+\t$(MSGFMT) --tcl -l $(basename $(notdir $<)) -d $(dir $@) $<\n     ++\t$(QUIET_MSGFMT)$(MSGFMT) --tcl -l $(basename $(notdir $<)) -d $(dir $@) $<\n       \n       .PHONY: all install uninstall clean update-po\n       .PHONY: FORCE\n -:  ---------- > 2:  b613d4ac4a git-gui: silence statistics under \"make -s\"\n\n-- \ngitgitgadget\n"},{"id":"546076","messageId":"4d977d6f3fe716e8b3d5655b010fedbb8c9b8960.1782053803.git.gitgitgadget@gmail.com","threadId":"65811","inReplyTo":"pull.2339.v3.git.git.1782053803.gitgitgadget@gmail.com","subject":"[PATCH v3 1/2] gitk: make \"make -s\" silent","fromName":"Harald Nordgren via GitGitGadget","fromEmail":"gitgitgadget@gmail.com","sentAt":"2026-06-21T14:56:42Z","receivedAt":"2026-06-21T14:56:46Z","isPatch":true,"body":"From: Harald Nordgren <haraldnordgren@gmail.com>\n\nThe catalog rule runs msgfmt with --statistics, whose output goes to\nstderr and so survives \"make -s\", and the rule also echoes \"Generating\ncatalog\". The Gitk Makefile guards its quiet helpers on V alone, so a\nsilent build still prints these and the GEN line.\n\nThe statistics are not needed, as in 2f12b31b746c (Makefile: don't\ninvoke msgfmt with --statistics, 2021-12-17). Drop them, suppress the\nquiet helpers when \"s\" is among the make flags, and give the catalog\nrule a quiet prefix so a quiet build stays quiet.\n\nSigned-off-by: Harald Nordgren <haraldnordgren@gmail.com>\n---\n gitk-git/Makefile | 6 ++++--\n 1 file changed, 4 insertions(+), 2 deletions(-)\n\ndiff --git a/gitk-git/Makefile b/gitk-git/Makefile\nindex 41116d8a14..dd87f501e5 100644\n--- a/gitk-git/Makefile\n+++ b/gitk-git/Makefile\n@@ -43,9 +43,12 @@ PO_TEMPLATE = po/gitk.pot\n ALL_POFILES = $(wildcard po/*.po)\n ALL_MSGFILES = $(subst .po,.msg,$(ALL_POFILES))\n \n+ifneq ($(findstring s,$(firstword -$(MAKEFLAGS))),s)\n ifndef V\n \tQUIET          = @\n \tQUIET_GEN      = $(QUIET)echo '   ' GEN $@ &&\n+\tQUIET_MSGFMT   = $(QUIET)echo '   ' MSGFMT $@ &&\n+endif\n endif\n \n all:: gitk-wish $(ALL_MSGFILES)\n@@ -75,8 +78,7 @@ update-po:: $(PO_TEMPLATE)\n \techo; \\\n \techo \"\tgit config filter.gettext-no-location.clean \\\"msgcat --no-location -\\\"\"\n $(ALL_MSGFILES): %.msg : %.po\n-\t@echo Generating catalog $@\n-\t$(MSGFMT) --statistics --tcl -l $(basename $(notdir $<)) -d $(dir $@) $<\n+\t$(QUIET_MSGFMT)$(MSGFMT) --tcl -l $(basename $(notdir $<)) -d $(dir $@) $<\n \n .PHONY: all install uninstall clean update-po\n .PHONY: FORCE\n-- \ngitgitgadget\n\n"},{"id":"546077","messageId":"b613d4ac4a258e0e280a15547efe0b510a57e83b.1782053803.git.gitgitgadget@gmail.com","threadId":"65811","inReplyTo":"pull.2339.v3.git.git.1782053803.gitgitgadget@gmail.com","subject":"[PATCH v3 2/2] git-gui: silence statistics under \"make -s\"","fromName":"Harald Nordgren via GitGitGadget","fromEmail":"gitgitgadget@gmail.com","sentAt":"2026-06-21T14:56:43Z","receivedAt":"2026-06-21T14:56:47Z","isPatch":true,"body":"From: Harald Nordgren <haraldnordgren@gmail.com>\n\nThe catalog rule runs msgfmt with --statistics, whose output goes to\nstderr and so survives \"make -s\". In non-verbose builds the rule also\ncaptures the output in a shell variable to strip it to an 80 column\nline.\n\nThe statistics are not needed, as in 2f12b31b746c (Makefile: don't\ninvoke msgfmt with --statistics, 2021-12-17). Remove them, and with\nnothing left to format make the rule as minimal as the other quiet\nrules, so a quiet build stays quiet.\n\nSigned-off-by: Harald Nordgren <haraldnordgren@gmail.com>\n---\n git-gui/Makefile | 5 ++---\n 1 file changed, 2 insertions(+), 3 deletions(-)\n\ndiff --git a/git-gui/Makefile b/git-gui/Makefile\nindex d33204e875..2e1711adc5 100644\n--- a/git-gui/Makefile\n+++ b/git-gui/Makefile\n@@ -69,8 +69,7 @@ ifndef V\n \tQUIET          = @\n \tQUIET_GEN      = $(QUIET)echo '   ' GEN '$@' &&\n \tQUIET_INDEX    = $(QUIET)echo '   ' INDEX $(dir $@) &&\n-\tQUIET_MSGFMT0  = $(QUIET)printf '    MSGFMT %12s ' $@ && v=`\n-\tQUIET_MSGFMT1  = 2>&1` && echo \"$$v\" | sed -e 's/fuzzy translations/fuzzy/' | sed -e 's/ messages*//g'\n+\tQUIET_MSGFMT   = $(QUIET)echo '   ' MSGFMT '$@' &&\n \n \tINSTALL_D0 = dir=\n \tINSTALL_D1 = && echo ' ' DEST $$dir && $(INSTALL) -d -m 755 \"$$dir\"\n@@ -155,7 +154,7 @@ $(PO_TEMPLATE): $(SCRIPT_SH) $(ALL_LIBFILES)\n update-po:: $(PO_TEMPLATE)\n \t$(foreach p, $(ALL_POFILES), echo Updating $p ; msgmerge -U $p $(PO_TEMPLATE) ; )\n $(ALL_MSGFILES): %.msg : %.po\n-\t$(QUIET_MSGFMT0)$(MSGFMT) --statistics --tcl -l $(basename $(notdir $<)) -d $(dir $@) $< $(QUIET_MSGFMT1)\n+\t$(QUIET_MSGFMT)$(MSGFMT) --tcl -l $(basename $(notdir $<)) -d $(dir $@) $<\n \n lib/tclIndex: $(ALL_LIBFILES) generate-tclindex.sh GIT-GUI-BUILD-OPTIONS\n \t$(QUIET_INDEX)$(SHELL_PATH) generate-tclindex.sh . ./GIT-GUI-BUILD-OPTIONS $(ALL_LIBFILES)\n-- \ngitgitgadget\n"},{"id":"546247","messageId":"d38d233c-a7c9-4457-96c1-bfb75af71ffe@kdbg.org","threadId":"65811","inReplyTo":"pull.2339.v3.git.git.1782053803.gitgitgadget@gmail.com","subject":"Re: [PATCH v3 0/2] Silence po catalog output under \"make -s\"","fromName":"Johannes Sixt","fromEmail":"j6t@kdbg.org","sentAt":"2026-06-23T16:23:14Z","receivedAt":"2026-06-23T16:23:24Z","isPatch":true,"body":"Am 21.06.26 um 16:56 schrieb Harald Nordgren via GitGitGadget:\n>  * gitk: gate the quiet helpers on -s in MAKEFLAGS and give the catalog rule\n>    a QUIET_MSGFMT prefix, so a silent build emits no MSGFMT/GEN lines\n\nI've picked up this one.\n\n>  * git-gui: replace the QUIET_MSGFMT0/QUIET_MSGFMT1 pair with a single\n>    QUIET_MSGFMT, since with --statistics gone there is no output left to\n>    reformat\n\nBut this one, I skipped, because I already have all of it in\nhttps://github.com/j6t/git-gui/commits/hn/silence-make-s/\n\nThanks!\n-- Hannes\n\n"},{"id":"546511","messageId":"CAHwyqnX78ePVhiL+_T3FzCSA5oGaU_RPvQj6YP=s1WyULg=tdg@mail.gmail.com","threadId":"65811","inReplyTo":"d38d233c-a7c9-4457-96c1-bfb75af71ffe@kdbg.org","subject":"Re: [PATCH v3 0/2] Silence po catalog output under \"make -s\"","fromName":"Harald Nordgren","fromEmail":"haraldnordgren@gmail.com","sentAt":"2026-06-26T19:27:33Z","receivedAt":"2026-06-26T19:28:12Z","isPatch":true,"body":"Hi Johannes!\n\nThanks for the help. What should I expect here, will it be merged to master now?\n\n\nHarald\n\nOn Tue, Jun 23, 2026 at 6:23 PM Johannes Sixt <j6t@kdbg.org> wrote:\n>\n> Am 21.06.26 um 16:56 schrieb Harald Nordgren via GitGitGadget:\n> >  * gitk: gate the quiet helpers on -s in MAKEFLAGS and give the catalog rule\n> >    a QUIET_MSGFMT prefix, so a silent build emits no MSGFMT/GEN lines\n>\n> I've picked up this one.\n>\n> >  * git-gui: replace the QUIET_MSGFMT0/QUIET_MSGFMT1 pair with a single\n> >    QUIET_MSGFMT, since with --statistics gone there is no output left to\n> >    reformat\n>\n> But this one, I skipped, because I already have all of it in\n> https://github.com/j6t/git-gui/commits/hn/silence-make-s/\n>\n> Thanks!\n> -- Hannes\n>\n"},{"id":"546532","messageId":"40b7eee4-6b45-449f-a3a0-0ae415097041@kdbg.org","threadId":"65811","inReplyTo":"CAHwyqnX78ePVhiL+_T3FzCSA5oGaU_RPvQj6YP=s1WyULg=tdg@mail.gmail.com","subject":"Re: [PATCH v3 0/2] Silence po catalog output under \"make -s\"","fromName":"Johannes Sixt","fromEmail":"j6t@kdbg.org","sentAt":"2026-06-27T09:34:50Z","receivedAt":"2026-06-27T09:34:59Z","isPatch":true,"body":"Am 26.06.26 um 21:27 schrieb Harald Nordgren:\n> What should I expect here, will it be merged to master now?\n\nThese patches are cooking in my respective j6t-testing branches in my\nrepositories[1][2]. I'll ask for inclusion in the Git repository in the\ncoming weeks (but certainly not for v2.55).\n\n-- Hannes\n\n[1] https://github.com/j6t/git-gui/commits/j6t-testing/\n[2] https://github.com/j6t/gitk/commits/j6t-testing/\n\n"},{"id":"546574","messageId":"xmqqh5mn4eyp.fsf@gitster.g","threadId":"65811","inReplyTo":"40b7eee4-6b45-449f-a3a0-0ae415097041@kdbg.org","subject":"Re: [PATCH v3 0/2] Silence po catalog output under \"make -s\"","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2026-06-28T01:43:26Z","receivedAt":"2026-06-28T01:43:28Z","isPatch":true,"body":"Johannes Sixt <j6t@kdbg.org> writes:\n\n> Am 26.06.26 um 21:27 schrieb Harald Nordgren:\n>> What should I expect here, will it be merged to master now?\n>\n> These patches are cooking in my respective j6t-testing branches in my\n> repositories[1][2]. I'll ask for inclusion in the Git repository in the\n> coming weeks (but certainly not for v2.55).\n>\n> -- Hannes\n>\n> [1] https://github.com/j6t/git-gui/commits/j6t-testing/\n> [2] https://github.com/j6t/gitk/commits/j6t-testing/\n\nThanks.\n"},{"id":"547915","messageId":"CAHwyqnWsyWcggBBEZTfe5Np=xEAxe6iy+pekvUrsm4RY3VxTHw@mail.gmail.com","threadId":"65811","inReplyTo":"xmqqh5mn4eyp.fsf@gitster.g","subject":"Re: [PATCH v3 0/2] Silence po catalog output under \"make -s\"","fromName":"Harald Nordgren","fromEmail":"haraldnordgren@gmail.com","sentAt":"2026-07-12T18:31:03Z","receivedAt":"2026-07-12T18:31:41Z","isPatch":true,"body":"Hi!\n\nWhat is the status here?\n\n\nHarald\n"},{"id":"547918","messageId":"xmqqjyr02dxd.fsf@gitster.g","threadId":"65811","inReplyTo":"CAHwyqnWsyWcggBBEZTfe5Np=xEAxe6iy+pekvUrsm4RY3VxTHw@mail.gmail.com","subject":"Re: [PATCH v3 0/2] Silence po catalog output under \"make -s\"","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2026-07-12T19:41:50Z","receivedAt":"2026-07-12T19:41:52Z","isPatch":true,"body":"Harald Nordgren <haraldnordgren@gmail.com> writes:\n\n> Hi!\n>\n> What is the status here?\n>\n> Harald\n\nIf I understand correctly, J6t told me to expect a pull request in\nhttps://lore.kernel.org/git/40b7eee4-6b45-449f-a3a0-0ae415097041@kdbg.org/\nbut it will happen after v2.55 is tagged.\n\nAnd in response I said \"Thanks.\"\n\nI think that is where we stand right now.\n\nThanks.\n\n"}]}