summaryrefslogtreecommitdiff
path: root/Meta/lint-python.sh
diff options
context:
space:
mode:
authorAndrew Kaster <andrewdkaster@gmail.com>2021-01-03 19:08:26 -0700
committerAndreas Kling <kling@serenityos.org>2021-01-09 19:22:23 +0100
commitb5078530d57694523c837ab5e8a763ad166ca89d (patch)
tree16ca1712ef8e08b6e3db9d1dd3b229c1c6d1f3a7 /Meta/lint-python.sh
parent7b2fdd08cec387212ee4726cd5ffa2e567e9e6fe (diff)
downloadserenity-b5078530d57694523c837ab5e8a763ad166ca89d.zip
Meta: Add flake8 to lint python files
Diffstat (limited to 'Meta/lint-python.sh')
-rwxr-xr-xMeta/lint-python.sh30
1 files changed, 30 insertions, 0 deletions
diff --git a/Meta/lint-python.sh b/Meta/lint-python.sh
new file mode 100755
index 0000000000..790f2035e1
--- /dev/null
+++ b/Meta/lint-python.sh
@@ -0,0 +1,30 @@
+#!/bin/bash
+
+set -e
+
+script_path=$(cd -P -- "$(dirname -- "$0")" && pwd -P)
+cd "${script_path}/.." || exit 1
+
+if ! command -v flake8 >/dev/null 2>&1 ; then
+ echo "flake8 is not available. Either skip this script, or install flake8."
+ exit 1
+fi
+
+if [ "$#" -eq "0" ]; then
+ mapfile -t files < <(
+ git ls-files '*.py'
+ )
+else
+ files=()
+ for file in "$@"; do
+ if [[ "${file}" == *".py" ]]; then
+ files+=("${file}")
+ fi
+ done
+fi
+
+if (( ${#files[@]} )); then
+ flake8 "${files[@]}" --max-line-length=120
+else
+ echo "No py files to check."
+fi