From c82190cdb615caf589d2401cc1ae52ba40eba1a1 Mon Sep 17 00:00:00 2001 From: practicalswift Date: Thu, 4 Oct 2018 22:54:07 +0200 Subject: tests: Add Python dead code linter (vulture) --- .travis/lint_04_install.sh | 1 + test/lint/lint-python-dead-code.sh | 19 +++++++++++++++++++ 2 files changed, 20 insertions(+) create mode 100755 test/lint/lint-python-dead-code.sh diff --git a/.travis/lint_04_install.sh b/.travis/lint_04_install.sh index 8c3a9124b9..723e7c56f1 100755 --- a/.travis/lint_04_install.sh +++ b/.travis/lint_04_install.sh @@ -8,3 +8,4 @@ export LC_ALL=C travis_retry pip install codespell==1.13.0 travis_retry pip install flake8==3.5.0 +travis_retry pip install vulture==0.29 diff --git a/test/lint/lint-python-dead-code.sh b/test/lint/lint-python-dead-code.sh new file mode 100755 index 0000000000..3341f794f9 --- /dev/null +++ b/test/lint/lint-python-dead-code.sh @@ -0,0 +1,19 @@ +#!/bin/bash +# +# Copyright (c) 2018 The Bitcoin Core developers +# Distributed under the MIT software license, see the accompanying +# file COPYING or http://www.opensource.org/licenses/mit-license.php. +# +# Find dead Python code. + +export LC_ALL=C + +if ! command -v vulture > /dev/null; then + echo "Skipping Python dead code linting since vulture is not installed. Install by running \"pip3 install vulture\"" + exit 0 +fi + +vulture \ + --min-confidence 60 \ + --ignore-names "argtypes,connection_lost,connection_made,converter,data_received,daemon,errcheck,get_ecdh_key,get_privkey,is_compressed,is_fullyvalid,msg_generic,on_*,optionxform,restype,set_privkey" \ + $(git ls-files -- "*.py" ":(exclude)contrib/") -- cgit v1.2.3