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

Re: [PATCH v5 1/2] cat-file: add mailmap support to -s option

From
Christian Couder <christian.couder@gmail.com>
Date
Nov 21, 2022, 09:40 UTC
Message-ID
<CAP8UFD1CB90eoWpQmGJbfxK7uHX0-u4BuSE-v=mD1yuW+nnAxA@mail.gmail.com>
In-Reply-To
<xmqqy1s4wyvf.fsf@gitster.g>
On Mon, Nov 21, 2022 at 8:27 AM Junio C Hamano <gitster@pobox.com> wrote:
Show 22 quoted lines
>
> Siddharth Asthana <siddharthasthana31@gmail.com> writes:
>
> > +test_expect_success 'git cat-file -s returns correct size with --use-mailmap' '
> > +     test_when_finished "rm .mailmap" &&
> > +     cat >.mailmap <<-\EOF &&
> > +     C O Mitter <committer@example.com> Orig <orig@example.com>
> > +     EOF
> > +     git cat-file commit HEAD | wc -c >expect &&
> > +     git cat-file --use-mailmap commit HEAD | wc -c >>expect &&
> > +     git cat-file -s HEAD >actual &&
> > +     git cat-file --use-mailmap -s HEAD >>actual &&
>
> Doesn't this break under macOS where wc output tends to be padded
> with SP on the right?  We used to often see test breakage when a
> carelessly written test like
>
>         test "$(wc -l <outout)" = 2
>
> which expects the output file to have exactly two files (the
> solution in this sample case is to lose the double quotes around the
> command substitution).

I guess that's the reason why `wc -c | sed -e 's/^ *//'` is used in the strlen() function in t1006-cat-file.sh. There are a number of places in the tests where wc -c or wc -l are used without piping the result into sed -e 's/^ *//' though. So it's not easy to understand why it's sometimes needed.

> Besides, having "cat-file" on the upstream side of a pipe is a bad
> practice.
Yeah, right. So I would suggest the following:
     git cat-file commit HEAD >commit.out &&
     wc -c <commit.out | sed -e 's/^ *//' >expect &&
     git cat-file --use-mailmap commit HEAD >commit.out &&
     wc -c <commit.out | sed -e 's/^ *//' >>expect &&
Thanks!
Previous: Junio C HamanoNext: Junio C Hamano
Message 30 of 44 in “Add mailmap mechanism in --batch-check options”
  1. 0/3 Add mailmap mechanism in --batch-check optionsSiddharth Asthana, Sep 16, 2022
  2. 2/3 cat-file: add mailmap support to -s optionSiddharth Asthana, Sep 16, 2022
  3. Junio C HamanoSep 16, 2022
  4. 1/3 doc/cat-file: allow --use-mailmap for --batch optionsSiddharth Asthana, Sep 16, 2022
  5. Junio C HamanoSep 16, 2022
  6. 3/3 cat-file: add mailmap support to --batch-check optionSiddharth Asthana, Sep 16, 2022
  7. Junio C HamanoSep 16, 2022
  8. 0/2 Add mailmap mechanism in cat-file optionsSiddharth Asthana, Sep 26, 2022
  9. 1/2 cat-file: add mailmap support to -s optionSiddharth Asthana, Sep 26, 2022
  10. Ævar Arnfjörð BjarmasonSep 26, 2022
  11. Ævar Arnfjörð BjarmasonSep 26, 2022
  12. 2/2 cat-file: add mailmap support to --batch-check optionSiddharth Asthana, Sep 26, 2022
  13. 0/2 Add mailmap mechanism in cat-file optionsSiddharth Asthana, Oct 29, 2022
  14. 1/2 cat-file: add mailmap support to -s optionSiddharth Asthana, Oct 29, 2022
  15. Christian CouderOct 31, 2022
  16. 2/2 cat-file: add mailmap support to --batch-check optionSiddharth Asthana, Oct 29, 2022
  17. Christian CouderOct 31, 2022
  18. Taylor BlauOct 29, 2022
  19. 0/3 Add mailmap mechanism in cat-file optionsSiddharth Asthana, Nov 13, 2022
  20. 1/3 cat-file: add mailmap support to -s optionSiddharth Asthana, Nov 13, 2022
  21. 2/3 cat-file: add mailmap support to --batch-check optionSiddharth Asthana, Nov 13, 2022
  22. Taylor BlauNov 15, 2022
  23. 3/3 doc/cat-file: allow --use-mailmap for --batch optionsSiddharth Asthana, Nov 13, 2022
  24. Christian CouderNov 14, 2022
  25. Taylor BlauNov 14, 2022
  26. Siddharth AsthanaNov 20, 2022
  27. 0/2 Add mailmap mechanism in cat-file optionsSiddharth Asthana, Nov 20, 2022
  28. 1/2 cat-file: add mailmap support to -s optionSiddharth Asthana, Nov 20, 2022
  29. Junio C HamanoNov 21, 2022
  30. Christian CouderNov 21, 2022
  31. Junio C HamanoNov 21, 2022
  32. Ævar Arnfjörð BjarmasonNov 21, 2022
  33. 2/2 cat-file: add mailmap support to --batch-check optionSiddharth Asthana, Nov 20, 2022
  34. Junio C HamanoNov 21, 2022
  35. Junio C HamanoNov 30, 2022
  36. 0/2 Add mailmap mechanism in cat-file optionsSiddharth Asthana, Dec 1, 2022
  37. 1/2 cat-file: add mailmap support to -s optionSiddharth Asthana, Dec 1, 2022
  38. 2/2 cat-file: add mailmap support to --batch-check optionSiddharth Asthana, Dec 1, 2022
  39. Ævar Arnfjörð BjarmasonDec 14, 2022
  40. Christian CouderDec 14, 2022
  41. 0/2 Add mailmap mechanism in cat-file optionsSiddharth Asthana, Dec 20, 2022
  42. 1/2 cat-file: add mailmap support to -s optionSiddharth Asthana, Dec 20, 2022
  43. 2/2 cat-file: add mailmap support to --batch-check optionSiddharth Asthana, Dec 20, 2022
  44. Ævar Arnfjörð BjarmasonDec 20, 2022

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.