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

Re: [PATCH v2 1/2] t: don't spuriously close and reopen quotes

From
MÅMartin Ågren <martin.agren@gmail.com>
Date
Aug 7, 2020, 08:45 UTC
Message-ID
<CAN0heSpjgc0GUHnebeBdtr6Yny3Y_jsjz5hTfJqw15bZiPc8HQ@mail.gmail.com>
In-Reply-To
<CAPig+cSjHg2-WYqdkZAS0ye1goj_=5RN3mdjt0-4kSBqNm6WLg@mail.gmail.com>
Hi Eric,
Thanks for having a look.
On Thu, 6 Aug 2020 at 22:26, Eric Sunshine <sunshine@sunshineco.com> wrote:
Show 15 quoted lines
>
> On Thu, Aug 6, 2020 at 4:09 PM Martin Ågren <martin.agren@gmail.com> wrote:
> > diff --git a/t/t4200-rerere.sh b/t/t4200-rerere.sh
> > @@ -364,7 +364,7 @@ test_expect_success 'set up an unresolved merge' '
> >         fifth=$(git rev-parse fifth) &&
> > -       echo "$fifth            branch 'fifth' of ." |
> > +       echo "$fifth            branch fifth of ." |
> >         git fmt-merge-msg >msg &&
>
> This one is a bit weird. It really seems as if the intent was to quote
> the word "fifth" in the merge message, so dropping the quotes
> altogether seems wrong. However, the file 'msg' is never even
> consulted in this test (or any other test), so is this just "dead
> code" (including the leading 'fifth=' assignment which also is
> otherwise unused outside the 'echo')?

Huh, good catch. The tests showed up in v2 of the patch [1] and there's not enough context in the archives to tell whether something was partly removed from an earlier "v1.5" or partly added but not all the way.

We expect to fail the merge -- and we do, and not because of this msg thing -- and then we look around a little, but we don't resolve the merge and make a commit. And from what I can tell, there wouldn't be much point in making a commit. So I should be able to safely drop this "dead code" entirely.

[1] https://lore.kernel.org/git/20100805112837.GL13779@burratino/>
Show 12 quoted lines
> > diff --git a/t/t5510-fetch.sh b/t/t5510-fetch.sh
> > @@ -213,7 +213,7 @@ test_expect_success 'fetch tags when there is no tags' '
> >  test_expect_success 'fetch following tags' '
> >         cd "$D" &&
> > -       git tag -a -m 'annotated' anno HEAD &&
> > +       git tag -a -m "annotated" anno HEAD &&
>
> There are a fair number of these quoted single-token arguments
> containing no special characters which don't actually need to be
> quoted at all, so an alternative would be simply to drop the quotes
> altogether, making the commands less syntactically noisy. However,
> that might be outside the intended scope of this change.

FWIW, I find something like `git foo -m "message"` a lot more intuitive/reasonable than, e.g., `git foo "HEAD"` to signal that here's a message that could in principle have whitespace, even if this one doesn't. For all of these, I tried to follow the surrounding style. For example in t9401, where we do `echo "hi"`. We certainly don't need the quotes there, but t9401 is very consistent on this and I didn't want to muddy that unnecessarily.

If we say that "don't use quotes if you don't need to" is a reasonable thing to strive for, I can drop these in a reroll. I think I'll be injecting a patch anyway for the "msg" you pointed out in t4200, so I can certainly tweak this patch to be a bit more aggressive in dropping unnecessary quotes.

Thanks Martin

Previous: Eric SunshineNext: Eric Sunshine
Message 8 of 16 in “t1450: fix quoting of NUL byte when corrupting pack”
  1. t1450: fix quoting of NUL byte when corrupting packMartin Ågren, Aug 1, 2020
  2. Junio C HamanoAug 2, 2020
  3. Martin ÅgrenAug 2, 2020
  4. Eric SunshineAug 2, 2020
  5. 0/2 t: don't spuriously close and reopen quotesMartin Ågren, Aug 6, 2020
  6. 1/2 t: don't spuriously close and reopen quotesMartin Ågren, Aug 6, 2020
  7. Eric SunshineAug 6, 2020
  8. Martin ÅgrenAug 7, 2020
  9. Eric SunshineAug 7, 2020
  10. Junio C HamanoAug 7, 2020
  11. 2/2 t4104: modernize and simplify quotingMartin Ågren, Aug 6, 2020
  12. Chris TorekAug 2, 2020
  13. Chris TorekAug 2, 2020
  14. Martin ÅgrenAug 2, 2020
  15. Chris TorekAug 2, 2020
  16. Junio C HamanoAug 2, 2020

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.