[PATCH 0/4] Replace use of `test <expr> -o/a <expr>`
- From
Patrick Steinhardt <ps@pks.im>
- Date
- Nov 9, 2023, 10:53 UTC
- Message-ID
- <cover.1699526999.git.ps@pks.im>
Hi,
this patch series replaces all uses of `test <expr> -o/a <expr>` that I was able to find in our codebase. This is in accordance to our coding guidelines:
- We do not write our "test" command with "-a" and "-o" and use "&&" or "||" to concatenate multiple "test" commands instead, because the use of "-a/-o" is often error-prone. E.g.
test -n "$x" -a "$a" = "$b"
is buggy and breaks when $x is "=", but
test -n "$x" && test "$a" = "$b"
does not have such a problem.
This patch series is a result of the discussion at [1].
Patrick
[1]: <20231109073250.GA2698227@coredump.intra.peff.net>
Patrick Steinhardt (4): global: convert trivial usages of `test <expr> -a/-o <expr>` contrib/subtree: stop using `-o` to test for number of args contrib/subtree: convert subtree type check to use case statement Makefile: stop using `test -o` when unlinking duplicate executables
GIT-VERSION-GEN | 2 +- Makefile | 2 +- configure.ac | 2 +- contrib/subtree/git-subtree.sh | 34 +++++++++++++++++++++++----------- t/perf/perf-lib.sh | 2 +- t/perf/run | 9 +++++---- t/valgrind/valgrind.sh | 2 +- 7 files changed, 33 insertions(+), 20 deletions(-)
-- 2.42.0