On Wed, Aug 04 2021, Junio C Hamano wrote: > Ævar Arnfjörð Bjarmason <avarab@xxxxxxxxx> writes: > >>> * ab/test-columns (2021-08-02) 3 commits >>> - test-lib.sh: use GIT_TEST_COLUMNS over COLUMNS >>> - test-lib-functions.sh: add a test_with_columns function >>> - test-lib-functions.sh: rename test_must_fail_acceptable() >> >> We're going to need this or another solution to the v2.33.0-rc0 >> regression in c49a177beca (test-lib.sh: set COLUMNS=80 for --verbose >> repeatability, 2021-06-29) before the final v2.33.0. > > Just a question. Is that true? Wouldn't a system that needs these > on top of c49a177beca already break the tests without c49a177beca? > > IOW, is c49a177beca truly a "regression", or is it merely "a half > solution that solves for most but not all platforms"? Yes, because with c49a177beca your tests only break if you use the --verbose option, i.e. if your stderr is connected to a terminal. I.e.: ./t0500-progress-display.sh --verbose So in practice it mostly affects git developers who run with --verbose, but probably nobody doing a build in the wild. With c49a177beca they break on e.g.: /bin/bash ./t0500-progress-display.sh If your bash is recent enough, so "make test" if you're on a system with a recent bash whose /bin/sh is /bin/bash. This is because post-c49a177beca we don't "unset" COLUMNS anymore, which bash takes as license to update it. So we really do need that series in before the release to avoid that common annoyance, a revert of c49a177beca is also possible, i.e. it would still leave things broken under --verbose, but that breakage is rare and existed before v2.33. I think given the triviality of the fixes and that the cause is well-understood it makes sense to go forward in this case.