threads / discuss / 56415

UX suggestion

Subject: UX suggestion

## tl;dr

8 messages between Aug 31, 2021 and Sep 2, 2021.

replies: 7people: 4as markdown or json

Jan Judas· Aug 31, 2021, 13:46 UTC · lore
Hello,

first time posting here, I hope I'm doing it right. I'd like to suggest a very minor UX improvement regarding the message:

error: The last gc run reported the following. Please correct the root cause and remove /path/to/repo/.git/gc.log.

Currently, there is a dot after the file path, so it's impossible to select just the path using double-click. If the dot was removed, or separated from the path by a space, it would be slightly more convenient :-)

Thank you
Jan Judas
Ævar Arnfjörð Bjarmason· Aug 31, 2021, 14:37 UTC · re: Jan Judas · lore

[PATCH] gc: remove trailing dot from "gc.log" line

Remove the trailing dot from the warning we emit about gc.log. It's common for various terminal UX's to allow the user to select "words", and by including the trailing dot a user wanting to select the path to gc.log will need to manually remove the trailing dot.

Such a user would also probably need to adjust the path if it e.g. had spaces in it, but this should address this very common case.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Suggested-by: Jan Judas <snugar.i@gmail.com>
---
On Tue, Aug 31 2021, Jan Judas wrote:
> Hello,
>
> first time posting here, I hope I'm doing it right.
> I'd like to suggest a very minor UX improvement regarding the message:
This is the right place for this request. Thanks!
Show 11 quoted lines
> error: The last gc run reported the following. Please correct the root cause
> and remove /path/to/repo/.git/gc.log.
>
> Currently, there is a dot after the file path, so it's impossible to
> select just the path using double-click. If the dot was removed, or
> separated from the path by a space, it would be slightly more
> convenient :-)
>
> Thank you
>
> Jan Judas   
Yes that's annoying, here's a proposed patch to fix this.

As an aside I've also noticed that if you have multiple worktrees we'll trigger "git gc --auto" in each one, and then litter various per-worktree gc.log, even though the issues being noted are usually repository-global, e.g. too many loose objects.

That's per-se unrelated to the issue you're noting, but is usually why I end up having to manually remove gc.log files...

 builtin/gc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/builtin/gc.c b/builtin/gc.c
index 6ce5ca45126..69c058533ea 100644
--- a/builtin/gc.c
+++ b/builtin/gc.c
@@ -502,7 +502,7 @@ static int report_last_gc_error(void)
 		 */
 		warning(_("The last gc run reported the following. "
 			       "Please correct the root cause\n"
-			       "and remove %s.\n"
+			       "and remove %s\n"
 			       "Automatic cleanup will not be performed "
 			       "until the file is removed.\n\n"
 			       "%s"),
-- 
2.33.0.805.g739b16c2189
Eric Sunshine· Aug 31, 2021, 16:15 UTC · re: Ævar Arnfjörð Bjarmason · lore

Re: [PATCH] gc: remove trailing dot from "gc.log" line

On Tue, Aug 31, 2021 at 10:37 AM Ævar Arnfjörð Bjarmason <avarab@gmail.com> wrote:

Show 17 quoted lines
> Remove the trailing dot from the warning we emit about gc.log. It's
> common for various terminal UX's to allow the user to select "words",
> and by including the trailing dot a user wanting to select the path to
> gc.log will need to manually remove the trailing dot.
>
> Such a user would also probably need to adjust the path if it e.g. had
> spaces in it, but this should address this very common case.
>
> Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
> Suggested-by: Jan Judas <snugar.i@gmail.com>
> ---
> diff --git a/builtin/gc.c b/builtin/gc.c
> @@ -502,7 +502,7 @@ static int report_last_gc_error(void)
>                 warning(_("The last gc run reported the following. "
>                                "Please correct the root cause\n"
> -                              "and remove %s.\n"
> +                              "and remove %s\n"
Bikeshedding: Adding a colon after "remove" would give this a slightly
more grammatically-correct feel:
    Please correct the root cause
    and remove: /path/to/repo/.git/gc.log
>                                "Automatic cleanup will not be performed "
>                                "until the file is removed.\n\n"
>                                "%s"),
Even more bikeshedding:
    Please correct the root cause and remove
    /path/to/repo/.git/gc.log
    to allow automatic cleanup to resume.
or something.
Junio C Hamano· Aug 31, 2021, 18:17 UTC · re: Eric Sunshine · lore

Re: [PATCH] gc: remove trailing dot from "gc.log" line

Eric Sunshine <sunshine@sunshineco.com> writes:
Show 29 quoted lines
> On Tue, Aug 31, 2021 at 10:37 AM Ævar Arnfjörð Bjarmason
> <avarab@gmail.com> wrote:
>> Remove the trailing dot from the warning we emit about gc.log. It's
>> common for various terminal UX's to allow the user to select "words",
>> and by including the trailing dot a user wanting to select the path to
>> gc.log will need to manually remove the trailing dot.
>>
>> Such a user would also probably need to adjust the path if it e.g. had
>> spaces in it, but this should address this very common case.
>>
>> Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
>> Suggested-by: Jan Judas <snugar.i@gmail.com>
>> ---
>> diff --git a/builtin/gc.c b/builtin/gc.c
>> @@ -502,7 +502,7 @@ static int report_last_gc_error(void)
>>                 warning(_("The last gc run reported the following. "
>>                                "Please correct the root cause\n"
>> -                              "and remove %s.\n"
>> +                              "and remove %s\n"
>
> Bikeshedding: Adding a colon after "remove" would give this a slightly
> more grammatically-correct feel:
>
>     Please correct the root cause
>     and remove: /path/to/repo/.git/gc.log
>
>>                                "Automatic cleanup will not be performed "
>>                                "until the file is removed.\n\n"
>>                                "%s"),
OK.
Show 7 quoted lines
> Even more bikeshedding:
>
>     Please correct the root cause and remove
>     /path/to/repo/.git/gc.log
>     to allow automatic cleanup to resume.
>
> or something.

I also found the line break before "and remove" strange, but I think that is because the "Please" is not at the beginning of the paragraph, but is a second sentence. Perhaps unfolding "and remove" would make the first line overly long?

THanks.
Eric Sunshine· Aug 31, 2021, 18:23 UTC · re: Junio C Hamano · lore

Re: [PATCH] gc: remove trailing dot from "gc.log" line

On Tue, Aug 31, 2021 at 2:18 PM Junio C Hamano <gitster@pobox.com> wrote:
Show 20 quoted lines
> Eric Sunshine <sunshine@sunshineco.com> writes:
> > On Tue, Aug 31, 2021 at 10:37 AM Ævar Arnfjörð Bjarmason
> > <avarab@gmail.com> wrote:
> >>                 warning(_("The last gc run reported the following. "
> >>                                "Please correct the root cause\n"
> >> -                              "and remove %s.\n"
> >> +                              "and remove %s\n"
> >
> > Even more bikeshedding:
> >
> >     Please correct the root cause and remove
> >     /path/to/repo/.git/gc.log
> >     to allow automatic cleanup to resume.
> >
> > or something.
>
> I also found the line break before "and remove" strange, but I think
> that is because the "Please" is not at the beginning of the
> paragraph, but is a second sentence.  Perhaps unfolding "and remove"
> would make the first line overly long?

Yep, you're right, and perhaps my "Even more bikeshedding" didn't clearly indicate that I was bikeshedding more about combining the "Please correct..." and "Automatic cleanup..." sentences into a single sentence, both as a another way to deal with the punctuation issue (thus allowing easy double-click) and to make the whole thing read a bit better.

Ævar Arnfjörð Bjarmason· Aug 31, 2021, 20:36 UTC · re: Eric Sunshine · lore

Re: [PATCH] gc: remove trailing dot from "gc.log" line

On Tue, Aug 31 2021, Eric Sunshine wrote:
Show 28 quoted lines
> On Tue, Aug 31, 2021 at 2:18 PM Junio C Hamano <gitster@pobox.com> wrote:
>> Eric Sunshine <sunshine@sunshineco.com> writes:
>> > On Tue, Aug 31, 2021 at 10:37 AM Ævar Arnfjörð Bjarmason
>> > <avarab@gmail.com> wrote:
>> >>                 warning(_("The last gc run reported the following. "
>> >>                                "Please correct the root cause\n"
>> >> -                              "and remove %s.\n"
>> >> +                              "and remove %s\n"
>> >
>> > Even more bikeshedding:
>> >
>> >     Please correct the root cause and remove
>> >     /path/to/repo/.git/gc.log
>> >     to allow automatic cleanup to resume.
>> >
>> > or something.
>>
>> I also found the line break before "and remove" strange, but I think
>> that is because the "Please" is not at the beginning of the
>> paragraph, but is a second sentence.  Perhaps unfolding "and remove"
>> would make the first line overly long?
>
> Yep, you're right, and perhaps my "Even more bikeshedding" didn't
> clearly indicate that I was bikeshedding more about combining the
> "Please correct..." and "Automatic cleanup..." sentences into a single
> sentence, both as a another way to deal with the punctuation issue
> (thus allowing easy double-click) and to make the whole thing read a
> bit better.

I'm aware that it's not in any formal style guide, but for what it's worth I find that something like say:

    Eric sent me an E-Mail with the Message-Id
    <CAPig+cTaJ=xm=K5Y8yn8RiOFHBH-nzhRztYRz3kYsqsyJUTACg@mail.gmail.com>
    My E-Mail client is displaying it right now.

Reads unambiguously as having an implied full-stop after "com>", especially as the next word starts on its own line, and is capitalized in a way that it wouldn't be if it weren't the start of a sentence.

In any case, I do think just removing the dot on the basis of that rationale is an improvement, both for the stated ease of copy/pasting, and to remove the ambiguity of whether the "." is part of the filename (yeah *nix filenames can also have \n, but that's a lot less likely).

I don't think sometihng like your "Even more bikeshedding" suggestion is better, since we're trying to continue a sentence after a potentially long filename that might on some platforms or OS's contain spaces etc.

In any case, I was hoping to just send a quick fix-as-a-patch to a tiny UX suggestion, and was hoping to not get into the much more subjective discussion of how to better reword "git gc"'s error messages in general. If that's where this thread is headed I'm afraid I'll need to tap out of it :)

Eric Sunshine· Sep 1, 2021, 02:10 UTC · re: Ævar Arnfjörð Bjarmason · lore

Re: [PATCH] gc: remove trailing dot from "gc.log" line

On Tue, Aug 31, 2021 at 4:44 PM Ævar Arnfjörð Bjarmason <avarab@gmail.com> wrote:

Show 5 quoted lines
> In any case, I was hoping to just send a quick fix-as-a-patch to a tiny
> UX suggestion, and was hoping to not get into the much more subjective
> discussion of how to better reword "git gc"'s error messages in
> general. If that's where this thread is headed I'm afraid I'll need to
> tap out of it :)

Fair enough. I hope that my explicit mention of "bikeshedding" made it clear that my comments weren't expectations of change but rather "if you plan to pursue it further, maybe try these ideas".

Jan Judas· Sep 2, 2021, 17:27 UTC · re: Ævar Arnfjörð Bjarmason · lore

Re: [PATCH] gc: remove trailing dot from "gc.log" line

Wow, that was quick! It's awesome to see a project that is alive and welcoming to new people (unlike some others I tried to contribute to). Thanks again and keep up the great work!

Jan

út 31. 8. 2021 v 16:37 odesílatel Ævar Arnfjörð Bjarmason <avarab@gmail.com> napsal:

Show 63 quoted lines
>
> Remove the trailing dot from the warning we emit about gc.log. It's
> common for various terminal UX's to allow the user to select "words",
> and by including the trailing dot a user wanting to select the path to
> gc.log will need to manually remove the trailing dot.
>
> Such a user would also probably need to adjust the path if it e.g. had
> spaces in it, but this should address this very common case.
>
> Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
> Suggested-by: Jan Judas <snugar.i@gmail.com>
> ---
>
> On Tue, Aug 31 2021, Jan Judas wrote:
>
> > Hello,
> >
> > first time posting here, I hope I'm doing it right.
> > I'd like to suggest a very minor UX improvement regarding the message:
>
> This is the right place for this request. Thanks!
>
> > error: The last gc run reported the following. Please correct the root cause
> > and remove /path/to/repo/.git/gc.log.
> >
> > Currently, there is a dot after the file path, so it's impossible to
> > select just the path using double-click. If the dot was removed, or
> > separated from the path by a space, it would be slightly more
> > convenient :-)
> >
> > Thank you
> >
> > Jan Judas
>
> Yes that's annoying, here's a proposed patch to fix this.
>
> As an aside I've also noticed that if you have multiple worktrees
> we'll trigger "git gc --auto" in each one, and then litter various
> per-worktree gc.log, even though the issues being noted are usually
> repository-global, e.g. too many loose objects.
>
> That's per-se unrelated to the issue you're noting, but is usually why
> I end up having to manually remove gc.log files...
>
>  builtin/gc.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/builtin/gc.c b/builtin/gc.c
> index 6ce5ca45126..69c058533ea 100644
> --- a/builtin/gc.c
> +++ b/builtin/gc.c
> @@ -502,7 +502,7 @@ static int report_last_gc_error(void)
>                  */
>                 warning(_("The last gc run reported the following. "
>                                "Please correct the root cause\n"
> -                              "and remove %s.\n"
> +                              "and remove %s\n"
>                                "Automatic cleanup will not be performed "
>                                "until the file is removed.\n\n"
>                                "%s"),
> --
> 2.33.0.805.g739b16c2189
>

← back to recent threads