diff options
author | Gaëtan Gilbert <gaetan.gilbert@skyskimmer.net> | 2018-01-08 23:56:30 +0100 |
---|---|---|
committer | Gaëtan Gilbert <gaetan.gilbert@skyskimmer.net> | 2018-01-16 16:27:00 +0100 |
commit | 0300aa85f3ba8cc7cdd38f719628dc0a28170c84 (patch) | |
tree | fc110af8c2aea6d5c2c73bfd8c63bb50d1084c57 | |
parent | c671d86beecb4e31ad5c7752f7e4fb570823e837 (diff) |
Simplify logic and streamline lint-repository.sh
We inline should-check-whitespace.sh in check-eof-newline.sh
simplifying the find invocation.
-rwxr-xr-x | dev/lint-repository.sh | 5 | ||||
-rwxr-xr-x | dev/tools/check-eof-newline.sh | 19 | ||||
-rwxr-xr-x | dev/tools/should-check-whitespace.sh | 6 |
3 files changed, 14 insertions, 16 deletions
diff --git a/dev/lint-repository.sh b/dev/lint-repository.sh index 95b72787f..e3ec51aeb 100755 --- a/dev/lint-repository.sh +++ b/dev/lint-repository.sh @@ -28,8 +28,7 @@ fi # Check that the files with 'whitespace' gitattribute end in a newline. # xargs exit status is 123 if any file failed the test -find . "(" -path ./.git -prune ")" -type f \ --o "(" -exec dev/tools/should-check-whitespace.sh '{}' ';' ")" \ --print0 | xargs -0 -L 1 dev/tools/check-eof-newline.sh || CODE=1 +find . "(" -path ./.git -prune ")" -o -type f -print0 | + xargs -0 dev/tools/check-eof-newline.sh || CODE=1 exit $CODE diff --git a/dev/tools/check-eof-newline.sh b/dev/tools/check-eof-newline.sh index 1c578c05c..9e4c8661d 100755 --- a/dev/tools/check-eof-newline.sh +++ b/dev/tools/check-eof-newline.sh @@ -1,9 +1,14 @@ #!/usr/bin/env bash -if [ -z "$(tail -c 1 "$1")" ] -then - exit 0 -else - echo "No newline at end of file $1!" - exit 1 -fi +CODE=0 +for f in "$@"; do + if git ls-files --error-unmatch "$f" >/dev/null 2>&1 && \ + git check-attr whitespace -- "$f" | grep -q -v -e 'unset$' -e 'unspecified$' && \ + [ -n "$(tail -c 1 "$f")" ] + then + echo "No newline at end of file $f!" + CODE=1 + fi +done + +exit "$CODE" diff --git a/dev/tools/should-check-whitespace.sh b/dev/tools/should-check-whitespace.sh deleted file mode 100755 index d85d65107..000000000 --- a/dev/tools/should-check-whitespace.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/usr/bin/env bash - -# determine if a file has whitespace checking enabled in .gitattributes - -git ls-files --error-unmatch "$1" >/dev/null 2>&1 && -git check-attr whitespace -- "$1" | grep -q -v -e 'unset$' -e 'unspecified$' |