mirror of
https://github.com/postgres/pgweb.git
synced 2025-07-20 16:50:48 +00:00
Add a githook and a config file to run pep8 pre-commit
This commit is contained in:
5
setup.cfg
Normal file
5
setup.cfg
Normal file
@ -0,0 +1,5 @@
|
||||
[pycodestyle]
|
||||
statistics=True
|
||||
exclude=dep/*,pgweb/settings_local.py
|
||||
ignore=E116,E402,E501,E741
|
||||
max-line-length=120
|
38
tools/githook/pre-commit
Executable file
38
tools/githook/pre-commit
Executable file
@ -0,0 +1,38 @@
|
||||
#!/bin/sh
|
||||
|
||||
if git rev-parse --verify HEAD >/dev/null 2>&1
|
||||
then
|
||||
against=HEAD
|
||||
else
|
||||
# Initial commit: diff against an empty tree object
|
||||
against=4b825dc642cb6eb9a060e54bf8d69288fbee4904
|
||||
fi
|
||||
|
||||
FILES=$(git diff-index --name-only --diff-filter=ACMR --cached $against -- |egrep ".py$")
|
||||
if [ "$FILES" != "" ]; then
|
||||
# We want to look at the staged version only, so we have to run it once for
|
||||
# each file.
|
||||
E=0
|
||||
for F in ${FILES}; do
|
||||
P=$(git show ":$F" | python -c "import sys; compile(sys.stdin.read(), '/dev/null', 'exec')")
|
||||
if [ "$?" != "0" ]; then
|
||||
echo "Errors in $F"
|
||||
echo $P
|
||||
E=1
|
||||
continue
|
||||
fi
|
||||
|
||||
R=$(git show ":$F" | pep8 -)
|
||||
if [ "$?" != "0" ]; then
|
||||
echo "Errors in $F"
|
||||
echo "$R"
|
||||
E=1
|
||||
fi
|
||||
done
|
||||
if [ "$E" != "0" ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo Basic python checks passed.
|
||||
fi
|
||||
|
Reference in New Issue
Block a user