mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-12-01 12:01:58 +00:00
56 lines
2.1 KiB
Plaintext
56 lines
2.1 KiB
Plaintext
|
#!/usr/bin/env bash
|
||
|
|
||
|
function join_by() { local IFS="$1"; shift; echo "$*"; }
|
||
|
|
||
|
set -e
|
||
|
|
||
|
# We check only our code, that's why we skip contrib
|
||
|
GIT_ROOT=$(git rev-parse --show-cdup)
|
||
|
GIT_ROOT=${GIT_ROOT:-./}
|
||
|
|
||
|
# Find all *.py, *.python files and executable files without extension
|
||
|
# that are determined as python scripts by 'file' util
|
||
|
# in the repo except the contrib directory.
|
||
|
find_cmd=(
|
||
|
find "$GIT_ROOT" -type f -not -path "${GIT_ROOT}contrib/*"
|
||
|
\(
|
||
|
\(
|
||
|
-name '*.py' -or -name "*.python" -or
|
||
|
\(
|
||
|
-executable -not -name "*.*" -exec sh -c 'file {} | grep -q "Python script"' \;
|
||
|
\)
|
||
|
\)
|
||
|
# We skip modules generated by the protocol buffer compiler from *.proto files.
|
||
|
-and -not -name '*_pb2.py' -and -not -name '*_pb2_grpc.py'
|
||
|
\) -print0
|
||
|
)
|
||
|
|
||
|
ignores=(
|
||
|
E101 # Indentation contains mixed spaces and tabs
|
||
|
E203 # Whitespace before ':'
|
||
|
E226 # missing whitespace around arithmetic operator
|
||
|
E266 # Too many leading '#' for block comment
|
||
|
E401 # Multiple imports on one line
|
||
|
E402 # Module level import not at top of file
|
||
|
E501 # line too long
|
||
|
E711 # Comparison to None should be 'cond is None:'
|
||
|
E712 # Comparison to true should be 'if cond is true:' or 'if cond:'
|
||
|
E713 # Test for membership should be 'not in'
|
||
|
E714 # Test for object identity should be 'is not'
|
||
|
E722 # Do not use bare except, specify exception instead
|
||
|
E731 # Do not assign a lambda expression, use a def
|
||
|
E741 # Do not use variables named 'I', 'O', or 'l'
|
||
|
F401 # Module imported but unused
|
||
|
F403 # 'from module import *' used; unable to detect undefined names
|
||
|
F405 # Name may be undefined, or defined from star imports: module
|
||
|
F522 # .format(...) unused named arguments
|
||
|
F541 # f-string without any placeholders
|
||
|
F811 # redefinition of unused name from line N
|
||
|
F841 # local variable name is assigned to but never used
|
||
|
W191 # Indentation contains tabs
|
||
|
W291 # Trailing whitespace
|
||
|
W293 # Blank line contains whitespace
|
||
|
W503 # Line break occurred before a binary operator
|
||
|
)
|
||
|
"${find_cmd[@]}" | xargs -0 flake8 --ignore "$(join_by , "${ignores[@]}")"
|