5e490e773f
* Add ineffassign to the pre-comiit hooks * Fix travis.yml * Only apply ineffassign to the /src directory
31 lines
853 B
Bash
Executable File
31 lines
853 B
Bash
Executable File
#! /bin/bash
|
|
|
|
set -eu
|
|
|
|
golint src/...
|
|
misspell -error src *.md
|
|
|
|
# gofmt doesn't exit with an error code if the files don't match the expected
|
|
# format. So we have to run it and see if it outputs anything.
|
|
if gofmt -l -s ./src/ 2>&1 | read
|
|
then
|
|
echo "Error: not all code had been formatted with gofmt."
|
|
echo "Fixing the following files"
|
|
gofmt -s -w -l ./src/
|
|
echo
|
|
echo "Please add them to the commit"
|
|
git status --short
|
|
exit 1
|
|
fi
|
|
|
|
ineffassign ./src/
|
|
go tool vet --all --shadow ./src
|
|
gocyclo -over 12 src/
|
|
gb test
|
|
|
|
# Check that all the packages can build.
|
|
# When `go build` is given multiple packages it won't output anything, and just
|
|
# checks that everything builds. This seems to do a better job of handling
|
|
# missing imports than `gb build` does.
|
|
GOPATH=$(pwd):$(pwd)/vendor go build github.com/matrix-org/dendrite/cmd/...
|