cwtch/testing/quality.sh

28 lines
960 B
Bash
Raw Normal View History

#!/bin/sh
echo "Checking code quality (you want to see no output here)"
echo ""
echo ""
echo "Linting:"
2021-11-17 23:59:52 +00:00
staticcheck ./...
2018-06-29 19:20:07 +00:00
# In the future we should enable this by default. However, there are a few false positives that make this
# too noisy right now, specifically assigning nil to initialize slices (safe), and using go internal context channels assigned
# nil (also safe).
# We also have one file infinite_channel.go written in a way that static analysis cannot reason about easily. So it is explictly
# ignored.
# nilaway -exclude-file-docstrings="nolint:nilaway" ./...
2018-06-29 19:20:07 +00:00
echo "Time to format"
gofmt -l -s -w .
2019-01-28 20:09:25 +00:00
# ineffassign (https://github.com/gordonklaus/ineffassign)
echo "Checking for ineffectual assignment of errors (unchecked errors...)"
ineffassign ./..
2019-01-28 20:09:25 +00:00
# misspell (https://github.com/client9/misspell/cmd/misspell)
2019-01-28 20:09:25 +00:00
echo "Checking for misspelled words..."
2021-11-17 23:59:52 +00:00
misspell . | grep -v "testing/" | grep -v "vendor/" | grep -v "go.sum" | grep -v ".idea"