Convert to using gometalinter

This commit is contained in:
Erik Johnston 2017-09-05 16:34:30 +01:00
parent dcdf7d4ea3
commit 27990f8d78
2 changed files with 25 additions and 17 deletions

View file

@ -2,29 +2,20 @@
set -eu set -eu
golint src/... echo "Looking for lint..."
GOPATH="$(pwd):$(pwd)/vendor" gometalinter --config=linter.json ./...
echo "Double checking spelling..."
misspell -error src *.md misspell -error src *.md
# gofmt doesn't exit with an error code if the files don't match the expected echo "Testing..."
# 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 gb test
# Check that all the packages can build. # Check that all the packages can build.
# When `go build` is given multiple packages it won't output anything, and just # 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 # checks that everything builds. This seems to do a better job of handling
# missing imports than `gb build` does. # missing imports than `gb build` does.
echo "Double checking it builds..."
GOPATH=$(pwd):$(pwd)/vendor go build github.com/matrix-org/dendrite/cmd/... GOPATH=$(pwd):$(pwd)/vendor go build github.com/matrix-org/dendrite/cmd/...
echo "Done!"

17
linter.json Normal file
View file

@ -0,0 +1,17 @@
{
"Vendor": true,
"Cyclo": 12,
"Enable": [
"vetshadow",
"gotype",
"deadcode",
"gocyclo",
"golint",
"varcheck",
"structcheck",
"aligncheck",
"ineffassign",
"gas",
"misspell"
]
}