From 688f665a5e526fda0fb797bf617412fe9cbe64fd Mon Sep 17 00:00:00 2001 From: vim88 Date: Wed, 28 Nov 2018 22:43:18 +0200 Subject: Scripts and tools & Docs: Used #!/usr/bin/env bash instead of obsolete #!/bin/bash, added linting for .sh files shebang and updated the Developer Notes. --- test/lint/lint-python-dead-code.sh | 2 +- test/lint/lint-python-shebang.sh | 13 ------------- test/lint/lint-shebang.sh | 20 ++++++++++++++++++++ 3 files changed, 21 insertions(+), 14 deletions(-) delete mode 100755 test/lint/lint-python-shebang.sh create mode 100755 test/lint/lint-shebang.sh (limited to 'test/lint') diff --git a/test/lint/lint-python-dead-code.sh b/test/lint/lint-python-dead-code.sh index 3341f794f9..4561b0db30 100755 --- a/test/lint/lint-python-dead-code.sh +++ b/test/lint/lint-python-dead-code.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash # # Copyright (c) 2018 The Bitcoin Core developers # Distributed under the MIT software license, see the accompanying diff --git a/test/lint/lint-python-shebang.sh b/test/lint/lint-python-shebang.sh deleted file mode 100755 index 4ff87f0bf7..0000000000 --- a/test/lint/lint-python-shebang.sh +++ /dev/null @@ -1,13 +0,0 @@ -#!/usr/bin/env bash -# Shebang must use python3 (not python or python2) - -export LC_ALL=C -EXIT_CODE=0 -for PYTHON_FILE in $(git ls-files -- "*.py"); do - if [[ $(head -c 2 "${PYTHON_FILE}") == "#!" && - $(head -n 1 "${PYTHON_FILE}") != "#!/usr/bin/env python3" ]]; then - echo "Missing shebang \"#!/usr/bin/env python3\" in ${PYTHON_FILE} (do not use python or python2)" - EXIT_CODE=1 - fi -done -exit ${EXIT_CODE} diff --git a/test/lint/lint-shebang.sh b/test/lint/lint-shebang.sh new file mode 100755 index 0000000000..fda22592d3 --- /dev/null +++ b/test/lint/lint-shebang.sh @@ -0,0 +1,20 @@ +#!/usr/bin/env bash +# Assert expected shebang lines + +export LC_ALL=C +EXIT_CODE=0 +for PYTHON_FILE in $(git ls-files -- "*.py"); do + if [[ $(head -c 2 "${PYTHON_FILE}") == "#!" && + $(head -n 1 "${PYTHON_FILE}") != "#!/usr/bin/env python3" ]]; then + echo "Missing shebang \"#!/usr/bin/env python3\" in ${PYTHON_FILE} (do not use python or python2)" + EXIT_CODE=1 + fi +done +for SHELL_FILE in $(git ls-files -- "*.sh"); do + if [[ $(head -n 1 "${SHELL_FILE}") != "#!/usr/bin/env bash" && + $(head -n 1 "${SHELL_FILE}") != "#!/bin/sh" ]]; then + echo "Missing expected shebang \"#!/usr/bin/env bash\" or \"#!/bin/sh\" in ${SHELL_FILE}" + EXIT_CODE=1 + fi +done +exit ${EXIT_CODE} -- cgit v1.2.3