On 2021-08-11 at 14:03:25, Jeff King wrote:
On Wed, Aug 11, 2021 at 03:02:52PM +0200, Son Luong Ngoc wrote:
quoted
git/t% GIT_TEST_FAIL_PREREQS=1 ./t5607-clone-bundle.sh
[...]
# if ! test_have_prereq SHA1
# then
# echo "@object-format=sha256"
# fi >expect &&
The problem is presumably here. If test_have_prereq lies and say "no, we
are using sha256" then we cannot expect what the built binary does to
match that lie.
Perhaps that is a sign that test_have_prereq is not the right tool to
check "which hash format are we using", but I don't think we have
another convenient mechanism to do so currently.
We can use something like this:
if "$(test_oid algo)" != sha1
I also think that the FAIL_PREREQS system may be mis-designed a bit. We
had a similar problem a few months ago, and I think Junio's response
here points in a good direction:
https://lore.kernel.org/git/xmqqblbgrwkg.fsf@gitster.g/ (local)
I take no position on this, but I'll send a patch to do something
similar to the above in a few minutes in case someone feels like picking
it up.
--
brian m. carlson (he/him or they/them)
Toronto, Ontario, CA