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

Re: [RFC PATCH] t5500-fetch-pack.sh: fix suppression of Git exit code in tests

From
Junio C Hamano <gitster@pobox.com>
Date
Jan 11, 2026, 22:50 UTC
Message-ID
<xmqq8qe3pxvm.fsf@gitster.g>
In-Reply-To
<20260111202137.257405-1-shreyanshpaliwalcmsmn@gmail.com>
Shreyansh Paliwal <shreyanshpaliwalcmsmn@gmail.com> writes:
> +	test_oid algo >oid_algo &&
> +	git rev-parse other >oid_other &&
> +	git rev-parse main >oid_main &&

It is unusual to take these to temporary files. If you want to reuse the value more than once, it is more common to take them in variables.

>  	GIT_PROTOCOL=version=2 git upload-pack . <<-EOF >/dev/null
>  	0012command=fetch
> -	$(echo "object-format=$(test_oid algo)" | packetize)
> +	$(echo "object-format=$(<oid_algo)" | packetize)

The construct $(<file) is bashism, that does not work if your shell is not bash, isn't it? If you used a variable, e.g.,

	$(echo "object-format=$oid_algo" | packetize)
that would make the result more portable.

In any case, since the output of "echo" is sent to "| packetize", the exit code of $(test_oid algo) would not affect the bigger picture, and so would a failure from $(<oid_algo). I am not sure if this conversion has any value wrt to "suppression of exit code". If $(<oid_algo) construct fails to read the oid_algo file, the upstream of "| packetize" may exit with non-zero code, but the downstream of the pipe would hide it.

THe same comment applies to other two uses of $(<file) construct.
Previous: Shreyansh PaliwalNext: Patrick Steinhardt
Message 2 of 12 in “t5500-fetch-pack.sh: fix suppression of Git exit code in tests”
  1. t5500-fetch-pack.sh: fix suppression of Git exit code in testsShreyansh Paliwal, Jan 11, 2026
  2. Junio C HamanoJan 11, 2026
  3. Patrick SteinhardtJan 12, 2026
  4. Shreyansh PaliwalJan 12, 2026
  5. Junio C HamanoJan 12, 2026
  6. Shreyansh PaliwalJan 13, 2026
  7. Junio C HamanoJan 13, 2026
  8. [GSOC][PATCH] t5500: simplify test implementation and fix git exit code suppressionShreyansh Paliwal, Jan 13, 2026
  9. Shreyansh PaliwalJan 15, 2026
  10. Junio C HamanoJan 20, 2026
  11. [GSOC][PATCH V2] t5500: simplify test implementation and fix git exit code suppressionShreyansh Paliwal, Jan 21, 2026
  12. t5500-fetch-pack.sh: fix suppression of Git exit code in testsShreyansh Paliwal, Jan 12, 2026

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.