Subject: Re: [PATCH 0/6] test: make the test suite work with zsh

From: Junio C Hamano <[email-masked]>
Date: Wed, 29 Mar 2023 08:34:26 -0700

"brian m. carlson" <[email-masked]> writes:

> I don't care a lot of other folks want to make zsh run the
> testsuite in zsh mode, but I'd think that using sh mode would be
> simpler and less likely to break in general, and would avoid us
> needing to carry a lot of patches to work around various variables
> that are special in zsh mode.  It would also be easier to
> potentially test in the testsuite as well.

While these patches may make it "work" with zsh in its native mode,
because zsh that is running in its native mode is sufficiently
distant from the more POSIXy portable variants of Bourne shells like
dash and bash, I find it hard to justify the cost of maintaining the
resulting codebase to "work" that way.

We need to force our developers to pay attention to rules set by
zsh, like "$0 is not the way to spell the name of the script",
"$status is not usable by end-users", etc.  Making the problem
worse, the rules are enforced only by zsh.  The situation is similar
to the "when to use $(pwd) and when to use $PWD?" rules, which folks
like me without Windows have to spend extra minutes to remember
every time they use one of these constructs, but the number of rules
seem to be much larger as these patches seem to show.

Thanks.