git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: Eric Sunshine <sunshine@sunshineco.com>
Cc: Benji Kay via GitGitGadget <gitgitgadget@gmail.com>,
	git@vger.kernel.org,  Benji Kay <okaybenji@gmail.com>
Subject: Re: [PATCH] push: improve consistency of output when "up to date"
Date: Thu, 11 Jan 2024 14:33:21 -0800	[thread overview]
Message-ID: <xmqqjzofec0e.fsf@gitster.g> (raw)
In-Reply-To: <CAPig+cRr0V2ecnmxk1H_yF24dwSFA6niPxYXGH0MZ+wGP9m9UA@mail.gmail.com> (Eric Sunshine's message of "Thu, 11 Jan 2024 16:43:01 -0500")

Eric Sunshine <sunshine@sunshineco.com> writes:

> Thanks. This particular change is proposed periodically...
>
>> diff --git a/transport.c b/transport.c
>> @@ -1467,7 +1467,7 @@ int transport_push(struct repository *r,
>>         else if (!quiet && !ret && !transport_refs_pushed(remote_refs))
>> -               fprintf(stderr, "Everything up-to-date\n");
>> +               fprintf(stderr, "Everything up to date.\n");
>
> ... but has not been considered desirable.
>
> See, for instance, this email thread explaining the rationale for
> avoiding such a change:
> https://lore.kernel.org/git/pull.1298.git.1658908927714.gitgitgadget@gmail.com/T/

Looking at the "grep" hits:

$ git grep -e 'up-to-date.*"' \*.c
builtin/rm.c:	OPT__FORCE(&force, N_("override the up-to-date check"), PARSE_OPT_NOCOMPLETE),
builtin/send-pack.c:		fprintf(stderr, "Everything up-to-date\n");
http-push.c:				fprintf(stderr, "'%s': up-to-date\n", ref->name);
http-push.c:				      "Maybe you are not up-to-date and "
transport.c:		fprintf(stderr, "Everything up-to-date\n");

it is true that these are not marked for translation, which should
be a clue enough that we want them to be exactly the way they are
spelled.  However, they are going to the standard error stream.  Is
it reasonable to expect third-party tools scraping it to find the
string "up-to-date"?

In any case, a safe first step is to add a short comment to each of
these that should not be translated.  Perhaps something along this
line.


------- >8 ------------- >8 ------------- >8 -------
Subject: [PATCH] messages: mark some strings with "up-to-date" not to touch

The treewide clean-up of "up-to-date" strings done in 7560f547
(treewide: correct several "up-to-date" to "up to date", 2017-08-23)
deliberately left some out, but unlike the lines that were changed
by the commit, the lines that were deliberately left untouched by
the commit is impossible to ask "git blame" to link back to the
commit that did not touch them.

Let's do the second best thing, leave a short comment near them, to
make it possible for those who are motivated enough to find out why
we decided to tell them "do not modify".

Signed-off-by: Junio C Hamano <gitster@pobox.com>
---

 builtin/send-pack.c | 1 +
 http-push.c         | 2 ++
 transport.c         | 1 +
 3 files changed, 4 insertions(+)

diff --git a/builtin/send-pack.c b/builtin/send-pack.c
index b7183be970..ac7ec1e643 100644
--- a/builtin/send-pack.c
+++ b/builtin/send-pack.c
@@ -333,6 +333,7 @@ int cmd_send_pack(int argc, const char **argv, const char *prefix)
 	}
 
 	if (!ret && !transport_refs_pushed(remote_refs))
+		/* do not modify this string */
 		fprintf(stderr, "Everything up-to-date\n");
 
 	return ret;
diff --git a/http-push.c b/http-push.c
index b4d0b2a6aa..e4c6645cc2 100644
--- a/http-push.c
+++ b/http-push.c
@@ -1851,6 +1851,7 @@ int cmd_main(int argc, const char **argv)
 
 		if (oideq(&ref->old_oid, &ref->peer_ref->new_oid)) {
 			if (push_verbosely)
+				/* do not modify this string */
 				fprintf(stderr, "'%s': up-to-date\n", ref->name);
 			if (helper_status)
 				printf("ok %s up to date\n", ref->name);
@@ -1871,6 +1872,7 @@ int cmd_main(int argc, const char **argv)
 				 * commits at the remote end and likely
 				 * we were not up to date to begin with.
 				 */
+				/* do not modify this string */
 				error("remote '%s' is not an ancestor of\n"
 				      "local '%s'.\n"
 				      "Maybe you are not up-to-date and "
diff --git a/transport.c b/transport.c
index bd7899e9bf..c9f39d45f1 100644
--- a/transport.c
+++ b/transport.c
@@ -1467,6 +1467,7 @@ int transport_push(struct repository *r,
 	if (porcelain && !push_ret)
 		puts("Done");
 	else if (!quiet && !ret && !transport_refs_pushed(remote_refs))
+		/* do not modify this string */
 		fprintf(stderr, "Everything up-to-date\n");
 
 done:
-- 
2.43.0-283-ga54a84b333


  reply	other threads:[~2024-01-11 22:33 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-01-11 21:27 [PATCH] push: improve consistency of output when "up to date" Benji Kay via GitGitGadget
2024-01-11 21:43 ` Eric Sunshine
2024-01-11 22:33   ` Junio C Hamano [this message]
     [not found]     ` <CADavbxcFXpP5EQZ=UEMZt+6KKVtCsTMbgQDHEo0uinm0YfRbZA@mail.gmail.com>
2024-01-12  0:55       ` Benji Kay
2024-01-12  3:14     ` Eric Sunshine
2024-01-12 17:19     ` [PATCH] messages: mark some strings with "up-to-date" not to touch Eric Sunshine
2024-01-12 18:19       ` Junio C Hamano
2024-01-15  8:43     ` [PATCH] push: improve consistency of output when "up to date" Patrick Steinhardt
2024-01-11 21:43 ` Taylor Blau
2024-01-11 21:45   ` Eric Sunshine
2024-01-17 22:02   ` Dragan Simic

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=xmqqjzofec0e.fsf@gitster.g \
    --to=gitster@pobox.com \
    --cc=git@vger.kernel.org \
    --cc=gitgitgadget@gmail.com \
    --cc=okaybenji@gmail.com \
    --cc=sunshine@sunshineco.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).