Ævar Arnfjörð Bjarmason <avarab@xxxxxxxxx> writes: > GNU seq is not a POSIX command, and doesn't exist on s/GNU //; the command did not even originate there, but came from V8 and/or Plan9 IIRC. > e.g. OpenBSD. We've had the test_seq wrapper since d17cf5f3a3 ("tests: > Introduce test_seq", 2012-08-04), but use of it keeps coming back, > e.g. in the recently added "fetch negotiator" tests being added here. > > So let's also add a check to "make test-lint". The regex is aiming to > capture the likes of $(seq ..) and "seq" as a stand-alone command, > without capturing some existing cases where we e.g. have files called > "seq". > > Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@xxxxxxxxx> > --- > > Now with a fix & check in v2 for the seq issue mentioned in > https://public-inbox.org/git/87a7pdfltp.fsf@xxxxxxxxxxxxxxxxxxx/ Thanks. > t/check-non-portable-shell.pl | 1 + > t/t5552-skipping-fetch-negotiator.sh | 12 ++++++------ > t/t5703-upload-pack-ref-in-want.sh | 4 ++-- > 3 files changed, 9 insertions(+), 8 deletions(-) > > diff --git a/t/check-non-portable-shell.pl b/t/check-non-portable-shell.pl > index c8f10d40a1..75f38298d7 100755 > --- a/t/check-non-portable-shell.pl > +++ b/t/check-non-portable-shell.pl > @@ -42,6 +42,7 @@ sub err { > /\btest\s+[^=]*==/ and err '"test a == b" is not portable (use =)'; > /\bwc -l.*"\s*=/ and err '`"$(wc -l)"` is not portable (use test_line_count)'; > /\bhead\s+-c\b/ and err 'head -c is not portable (use test_copy_bytes BYTES <file >out)'; > + /(?:\$\(seq|^\s*seq\b)/ and err 'seq is not portable (use test_seq)'; Looking at $(wc -l) thing a few lines above, I am not sure if this deviation is a good idea. Wouldn't /\bseq\s/ be sufficient?