git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: "SZEDER Gábor" <szeder.dev@gmail.com>
To: "Ævar Arnfjörð Bjarmason" <avarab@gmail.com>
Cc: Junio C Hamano <gitster@pobox.com>,
	git@vger.kernel.org, Taylor Blau <me@ttaylorr.com>,
	Emily Shaffer <emilyshaffer@google.com>
Subject: Re: What's cooking in git.git (Aug 2021, #02; Tue, 3)
Date: Wed, 4 Aug 2021 23:28:25 +0200	[thread overview]
Message-ID: <20210804212825.GH23408@szeder.dev> (raw)
In-Reply-To: <87lf5hm0v7.fsf@evledraar.gmail.com>

On Wed, Aug 04, 2021 at 09:53:02PM +0200, Ævar Arnfjörð Bjarmason wrote:
> 
> On Wed, Aug 04 2021, Junio C Hamano wrote:
> 
> > Ævar Arnfjörð Bjarmason <avarab@gmail.com> 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.

On one hand, there is feedback to be addressed:

  https://public-inbox.org/git/20210802171429.GC23408@szeder.dev/

OTOH, setting the checkwinsize is the truly trivial, minimal, reliable
and uncontroversial fix for this issue, and IMO that should go into
the next release.

This fix in this patch series is not trivial: it introduces yet
another GIT_TEST variable and a helper function that developers will
have to remember to use in the future.  Worse, this means that despite
aiming for future proofing I can't consider this approach future
proof, because it's easy to forget about such a rarely used test
helper function, and if anyone introduces yet another test setting
COLUMNS, then that will be prone to similar failures when run with
Bash.

I don't think that in this case we should aim for future proofing when
the cost is the additional cognitive load of yet another helper
function.  I would instead prefer to go with the really trivial fix
for now and wait whether this issue pops up again with other shell or
terminal, hoping that this issue is a "one-hit-wonder" [1] and it
won't happen ever again.


[1] "one-hit-wonder" as in:
    https://en.wikipedia.org/wiki/Bloom_filter#Cache_filtering


  parent reply	other threads:[~2021-08-04 21:28 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-04  7:03 What's cooking in git.git (Aug 2021, #02; Tue, 3) Junio C Hamano
2021-08-04 10:22 ` Ævar Arnfjörð Bjarmason
2021-08-04 17:57   ` Junio C Hamano
2021-08-04 20:06     ` Ævar Arnfjörð Bjarmason
2021-08-04 18:06   ` Junio C Hamano
2021-08-04 19:53     ` Ævar Arnfjörð Bjarmason
2021-08-04 20:10       ` Junio C Hamano
2021-08-04 21:28       ` SZEDER Gábor [this message]
2021-08-04 21:36         ` SZEDER Gábor
2021-08-04 23:06         ` Ævar Arnfjörð Bjarmason
2021-08-05  2:08           ` Junio C Hamano
2021-08-05  2:53             ` Ævar Arnfjörð Bjarmason
2021-08-30 21:03           ` SZEDER Gábor
2021-08-04 18:06   ` SZEDER Gábor
2021-08-04 14:22 ` Derrick Stolee
2021-08-04 21:03   ` Jeff King
2021-08-05  9:55   ` Phillip Wood
2021-08-05  1:37 ` Taylor Blau

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210804212825.GH23408@szeder.dev \
    --to=szeder.dev@gmail.com \
    --cc=avarab@gmail.com \
    --cc=emilyshaffer@google.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=me@ttaylorr.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).