aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpracticalswift <practicalswift@users.noreply.github.com>2018-08-13 15:19:33 +0200
committerpracticalswift <practicalswift@users.noreply.github.com>2018-09-04 13:11:26 +0200
commitf8a81f73ac4fee82488806c2b384b36e8ee2acdf (patch)
tree339c8ede5b1b85b3c43d3c8e3a8dee4f6047e278
parentada356208e153e088c729c102d5d79c9c9d66f1a (diff)
lint: Add spell check linter (codespell)
-rwxr-xr-x.travis/lint_04_install.sh1
-rw-r--r--test/lint/lint-spelling.ignore-words.txt1
-rwxr-xr-xtest/lint/lint-spelling.sh15
3 files changed, 17 insertions, 0 deletions
diff --git a/.travis/lint_04_install.sh b/.travis/lint_04_install.sh
index 34118a57c3..3a6ff73d79 100755
--- a/.travis/lint_04_install.sh
+++ b/.travis/lint_04_install.sh
@@ -6,4 +6,5 @@
export LC_ALL=C
+travis_retry pip install codespell
travis_retry pip install flake8
diff --git a/test/lint/lint-spelling.ignore-words.txt b/test/lint/lint-spelling.ignore-words.txt
index 67b83b5d43..9a49f32271 100644
--- a/test/lint/lint-spelling.ignore-words.txt
+++ b/test/lint/lint-spelling.ignore-words.txt
@@ -2,4 +2,5 @@ cas
hights
mor
objext
+unselect
useable
diff --git a/test/lint/lint-spelling.sh b/test/lint/lint-spelling.sh
new file mode 100755
index 0000000000..5d672698a7
--- /dev/null
+++ b/test/lint/lint-spelling.sh
@@ -0,0 +1,15 @@
+#!/usr/bin/env 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.
+#
+# Warn in case of spelling errors.
+# Note: Will exit successfully regardless of spelling errors.
+
+export LC_ALL=C
+
+IGNORE_WORDS_FILE=test/lint/lint-spelling.ignore-words.txt
+if ! codespell --check-filenames --disable-colors --quiet-level=7 --ignore-words=${IGNORE_WORDS_FILE} $(git ls-files -- ":(exclude)build-aux/m4/" ":(exclude)contrib/seeds/*.txt" ":(exclude)depends/" ":(exclude)doc/release-notes/" ":(exclude)src/leveldb/" ":(exclude)src/qt/locale/" ":(exclude)src/secp256k1/" ":(exclude)src/univalue/"); then
+ echo "^ Warning: codespell identified likely spelling errors. Any false positives? Add them to the list of ignored words in ${IGNORE_WORDS_FILE}"
+fi