Re: [PATCH v3 0/2] Small fixes for issues detected during internal CI runs
From: Junio C Hamano <hidden>
Date: 2024-08-05 18:38:01
"Kyle Lippincott via GitGitGadget" [off-list ref] writes:
I'm attempting to get the git test suite running automatically during our
weekly import. I have this mostly working, including with Address Sanitizer
and Memory Sanitizer, but ran into a few issues:
* several tests were failing due to strbuf_getcwd not clearing errno on
success after it internally looped due to the path being >128 bytes. This
is resolved in depth; though either one of the commits alone would
resolve our issues:
* modify locations that call strtoX and check for ERANGE to set errno =
0; prior to calling the conversion function. This is the typical way
that these functions are invoked, and may indicate that we want
compatibility helpers in git-compat-util.h to ensure that this happens
correctly (and add these functions to the banned list).
* have strbuf_getcwd set errno = 0; prior to a successful exit. This
isn't very common for most functions in the codebase, but some other
examples of this were found.
* t6421-merge-partial-clone.sh had >10% flakiness. This is due to our build
system using paths that contain a 64-hex-char hash, which had a 12.5%
chance of containing the substring d0.
Kyle Lippincott (2):
set errno=0 before strtoX calls
t6421: fix test to work when repo dir contains d0Both patches make perfect sense to me. Thanks.