diff --git a/dev-scripts/pre-commit b/dev-scripts/pre-commit deleted file mode 100755 index 66d8854..0000000 --- a/dev-scripts/pre-commit +++ /dev/null @@ -1,75 +0,0 @@ -#!/usr/bin/env bash -# Enable this pre-commit hook by running 'make installhooks' -set -euo pipefail - -git-staged-files() { - git diff --cached -C -C -z --name-only --diff-filter=ACMRTUXB "$@" -} - -git-is-staged() { - local diff=0 - git-staged-files --quiet "$@" 2> /dev/null || diff=$? - [[ diff -eq 1 ]] || return 1 -} - -map() { IFS= read -rd $'\0' "$@"; } - -compress-png() { - git-staged-files \*.png|while map file; do - echo "Compressing $file" - optipng -q -o7 "$file" && advpng -z -4 "$file" && advdef -z -4 "$file" | grep Output - git add "$file" - done -} - -compress-svg() { - git-staged-files \*.svg|while map file; do - make nodecheck - echo "Compressing $file" - node_modules/.bin/svgo --config=.svgo.yml "$file" - git add "$file" - done -} - -test-whitespace() { git diff --cached --check; } - -test-js() { - local err=0 - - make eslint || err+=1 - - if git-is-staged \*.js; then - make qunit || err+=1 - fi - - return $err -} - -test-php() { - local err=0 - if git-is-staged \*.php; then - make phplint || err+=1 - fi - - # todo: where is result set? - if git-is-staged 'includes/skins/*.php'; then - make validatehtml > $result || err+=1 - fi - - return $err -} - -main() { - local err=0 - - compress-png - compress-svg - - test-whitespace || err+=1 - test-js || err+=1 - test-php || err+=1 - - return $err -} - -main "$@"