Adding upstream version 1.3.1+dfsg.
Signed-off-by: Daniel Baumann <daniel@debian.org>
This commit is contained in:
parent
455a3d9fdb
commit
d2e39936a0
95 changed files with 10747 additions and 0 deletions
90
pre-commit.sh
Executable file
90
pre-commit.sh
Executable file
|
@ -0,0 +1,90 @@
|
|||
#!/bin/bash
|
||||
#
|
||||
# Called by "git commit". The hook will run several checks on the
|
||||
# source-code. If it exits with a non-zero status, the commit will
|
||||
# be halted.
|
||||
#
|
||||
# To enable this hook, link this file to ".git/hooks/pre-commit":
|
||||
# ln -s ../../pre-commit.sh .git/hooks/pre-commit
|
||||
#
|
||||
RED='\033[1;31m'
|
||||
GREEN='\033[1;32m'
|
||||
NC='\033[0m'
|
||||
|
||||
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
|
||||
|
||||
# If you want to allow non-ASCII filenames set this variable to true.
|
||||
allownonascii=$(git config --bool hooks.allownonascii)
|
||||
|
||||
# Redirect output to stderr.
|
||||
exec 1>&2
|
||||
|
||||
# Cross platform projects tend to avoid non-ASCII filenames; prevent
|
||||
# them from being added to the repository. We exploit the fact that the
|
||||
# printable range starts at the space character and ends with tilde.
|
||||
if [ "$allownonascii" != "true" ] &&
|
||||
# Note that the use of brackets around a tr range is ok here, (it's
|
||||
# even required, for portability to Solaris 10's /usr/bin/tr), since
|
||||
# the square bracket bytes happen to fall in the designated range.
|
||||
test $(git diff --cached --name-only --diff-filter=A -z ${against} |
|
||||
LC_ALL=C tr -d '[ -~]\0' | wc -c) != 0
|
||||
then
|
||||
cat <<\EOF
|
||||
Error: Attempt to add a non-ASCII file name.
|
||||
|
||||
This can cause problems if you want to work with people on other platforms.
|
||||
|
||||
To be portable it is advisable to rename the file.
|
||||
|
||||
If you know what you are doing you can disable this check using:
|
||||
|
||||
git config hooks.allownonascii true
|
||||
EOF
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# If there are whitespace errors, print the offending file names and fail.
|
||||
git diff-index --check --cached $against --
|
||||
|
||||
err=0
|
||||
msg=''
|
||||
|
||||
run(){
|
||||
tmp=$(mktemp -t cv-precommit)
|
||||
echo -n "Running '${*}': "
|
||||
"$@" >"$tmp" 2>&1
|
||||
ret=$?
|
||||
if [ $ret != 0 ]; then
|
||||
let "err = $err + $ret"
|
||||
msg="${msg}\n\t'${*}' failed"
|
||||
echo -e "${RED}FAILED${NC}"
|
||||
echo "Tried: ${*}"
|
||||
cat "$tmp"
|
||||
rm -f "$tmp"
|
||||
else
|
||||
echo -e "${GREEN}PASSED${NC}"
|
||||
fi
|
||||
return $ret
|
||||
}
|
||||
|
||||
START_TIME=$SECONDS
|
||||
run make check
|
||||
run make pep8
|
||||
run make pyflakes
|
||||
run make pylint
|
||||
|
||||
DURATION=$((SECONDS - START_TIME))
|
||||
echo "pre-commit checks took ${DURATION} seconds."
|
||||
echo
|
||||
|
||||
if [ ${err} != 0 ]; then
|
||||
echo -e "${RED}ERROR: Some checks failed. Commit halted. [${err}]${NC}"
|
||||
echo -e "${RED}Failed Tests: ${msg}${NC}"
|
||||
fi
|
||||
exit ${err}
|
Loading…
Add table
Add a link
Reference in a new issue