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

Re: [PATCH v2 09/22] t/t4*: avoid redundant uses of cat

From
Junio C Hamano <gitster@pobox.com>
Date
Mar 16, 2024, 06:04 UTC
Message-ID
<xmqqy1ain255.fsf@gitster.g>
In-Reply-To
<ZfT3H7IiewuhAA7M@nand.local>
Taylor Blau <me@ttaylorr.com> writes:
Show 8 quoted lines
> This and the two similar transformations below it look good to me. This
> obviously isn't the fault of your patch (nor should it necessarily be
> its aim to fix), but I wonder if it would be worthwhile to extract the
>
>     tr "\0" "\n" <out | head -n 3 | grep 3.bar | cut -f 2 -d " "
>
> pattern into a helper function, since it's used in a few places in this
> test script.

I somehow thought that the theme of the topic is to reduce the depth of the pipeline. "head -n 3" piped into "grep" sounds something a single sed script can do, e.g.

	tr '\000' '\012' <out |	sed -n -e '1,3s/3.bar/&/p'
> That's just a suggestion, and shouldn't hold up this patch/series. Maybe
> just some #leftoverbits :-).

Ditto. The whole thing can be turned into a Perl scriptlet, which may be even easier to read (the cost to spin up one Perl interpreter might be greater than constructing 4 process pipeline on certain systems, though).

Thanks.
P.S. It is nice to hear from you Taylor.  It's been a while.
Previous: Taylor BlauNext: Beat Bolli
Message 58 of 78 in “avoid redundant pipelines”
  1. 00/22 avoid redundant pipelinesBeat Bolli, Mar 5, 2024
  2. 01/22 doc: avoid redundant use of catBeat Bolli, Mar 5, 2024
  3. Junio C HamanoMar 5, 2024
  4. 02/22 contrib/subtree/t: avoid redundant use of catBeat Bolli, Mar 5, 2024
  5. Junio C HamanoMar 5, 2024
  6. 03/22 t/lib-cvs.sh: avoid redundant use of catBeat Bolli, Mar 5, 2024
  7. Junio C HamanoMar 5, 2024
  8. 04/22 t/annotate-tests.sh: avoid redundant use of catBeat Bolli, Mar 5, 2024
  9. Junio C HamanoMar 5, 2024
  10. Rubén JustoMar 6, 2024
  11. Junio C HamanoMar 6, 2024
  12. Rubén JustoMar 6, 2024
  13. 05/22 t/perf: avoid redundant use of catBeat Bolli, Mar 5, 2024
  14. Junio C HamanoMar 5, 2024
  15. 06/22 t/t0*: avoid redundant uses of catBeat Bolli, Mar 5, 2024
  16. 07/22 t/t1*: avoid redundant uses of catBeat Bolli, Mar 5, 2024
  17. 08/22 t/t3*: avoid redundant uses of catBeat Bolli, Mar 5, 2024
  18. 09/22 t/t4*: avoid redundant uses of catBeat Bolli, Mar 5, 2024
  19. Junio C HamanoMar 6, 2024
  20. Eric SunshineMar 6, 2024
  21. Beat BolliMar 6, 2024
  22. 10/22 t/t5*: avoid redundant uses of catBeat Bolli, Mar 5, 2024
  23. 11/22 t/t6*: avoid redundant uses of catBeat Bolli, Mar 5, 2024
  24. 12/22 t/t7*: avoid redundant use of catBeat Bolli, Mar 5, 2024
  25. 13/22 t/t8*: avoid redundant use of catBeat Bolli, Mar 5, 2024
  26. 14/22 t/t9*: avoid redundant uses of catBeat Bolli, Mar 5, 2024
  27. Rubén JustoMar 5, 2024
  28. Junio C HamanoMar 6, 2024
  29. Rubén JustoMar 6, 2024
  30. 15/22 t/t1*: merge a "grep | sed" pipelineBeat Bolli, Mar 5, 2024
  31. 16/22 t/t3*: merge a "grep | awk" pipelineBeat Bolli, Mar 5, 2024
  32. Junio C HamanoMar 6, 2024
  33. 17/22 t/t4*: merge a "grep | sed" pipelineBeat Bolli, Mar 5, 2024
  34. 18/22 t/t5*: merge a "grep | sed" pipelineBeat Bolli, Mar 5, 2024
  35. Junio C HamanoMar 6, 2024
  36. 19/22 t/t8*: merge "grep | sed" pipelinesBeat Bolli, Mar 5, 2024
  37. Junio C HamanoMar 6, 2024
  38. Todd ZullingerMar 6, 2024
  39. Junio C HamanoMar 6, 2024
  40. Beat BolliMar 6, 2024
  41. Junio C HamanoMar 6, 2024
  42. 20/22 t/t9*: merge "grep | sed" pipelinesBeat Bolli, Mar 5, 2024
  43. Junio C HamanoMar 6, 2024
  44. 21/22 contrib/coverage-diff: avoid redundant pipelinesBeat Bolli, Mar 5, 2024
  45. 22/22 git-quiltimport: avoid an unnecessary subshellBeat Bolli, Mar 5, 2024
  46. Rubén JustoMar 5, 2024
  47. Rubén JustoMar 5, 2024
  48. Junio C HamanoMar 5, 2024
  49. 00/22 avoid redundant pipelinesBeat Bolli, Mar 15, 2024
  50. 01/22 doc: avoid redundant use of catBeat Bolli, Mar 15, 2024
  51. 07/22 t/t1*: avoid redundant uses of catBeat Bolli, Mar 15, 2024
  52. 06/22 t/t0*: avoid redundant uses of catBeat Bolli, Mar 15, 2024
  53. 02/22 contrib/subtree/t: avoid redundant use of catBeat Bolli, Mar 15, 2024
  54. 08/22 t/t3*: avoid redundant uses of catBeat Bolli, Mar 15, 2024
  55. 03/22 t/lib-cvs.sh: avoid redundant use of catBeat Bolli, Mar 15, 2024
  56. 09/22 t/t4*: avoid redundant uses of catBeat Bolli, Mar 15, 2024
  57. Taylor BlauMar 16, 2024
  58. Junio C HamanoMar 16, 2024
  59. 04/22 t/annotate-tests.sh: avoid redundant use of catBeat Bolli, Mar 15, 2024
  60. 10/22 t/t5*: avoid redundant uses of catBeat Bolli, Mar 15, 2024
  61. 05/22 t/perf: avoid redundant use of catBeat Bolli, Mar 15, 2024
  62. 11/22 t/t6*: avoid redundant uses of catBeat Bolli, Mar 15, 2024
  63. 12/22 t/t7*: avoid redundant use of catBeat Bolli, Mar 15, 2024
  64. 13/22 t/t8*: avoid redundant use of catBeat Bolli, Mar 15, 2024
  65. 14/22 t/t9*: avoid redundant uses of catBeat Bolli, Mar 15, 2024
  66. 15/22 t/t1*: merge a "grep | sed" pipelineBeat Bolli, Mar 15, 2024
  67. 16/22 t/t3*: merge a "grep | awk" pipelineBeat Bolli, Mar 15, 2024
  68. Taylor BlauMar 16, 2024
  69. Beat BolliMar 16, 2024
  70. Taylor BlauMar 16, 2024
  71. 17/22 t/t4*: merge a "grep | sed" pipelineBeat Bolli, Mar 15, 2024
  72. 18/22 t/t5*: merge a "grep | sed" pipelineBeat Bolli, Mar 15, 2024
  73. 19/22 t/t8*: merge "grep | sed" pipelinesBeat Bolli, Mar 15, 2024
  74. 20/22 t/t9*: merge "grep | sed" pipelinesBeat Bolli, Mar 15, 2024
  75. 21/22 contrib/coverage-diff: avoid redundant pipelinesBeat Bolli, Mar 15, 2024
  76. 22/22 git-quiltimport: avoid an unnecessary subshellBeat Bolli, Mar 15, 2024
  77. Taylor BlauMar 16, 2024
  78. Junio C HamanoMar 16, 2024

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.