diff options
author | Felix Lange <fjl@twurst.com> | 2017-03-23 22:48:30 +0800 |
---|---|---|
committer | Felix Lange <fjl@twurst.com> | 2017-03-24 17:28:46 +0800 |
commit | df1fbe3c067bbca9be10f6fc2d09a66f82313a82 (patch) | |
tree | d4ad087122f49310c0c9ddeb5b0cf6a9d50c020e | |
parent | e7911ad9ea38eaf8707b7247a5ac96bc81de856c (diff) | |
download | go-tangerine-df1fbe3c067bbca9be10f6fc2d09a66f82313a82.tar go-tangerine-df1fbe3c067bbca9be10f6fc2d09a66f82313a82.tar.gz go-tangerine-df1fbe3c067bbca9be10f6fc2d09a66f82313a82.tar.bz2 go-tangerine-df1fbe3c067bbca9be10f6fc2d09a66f82313a82.tar.lz go-tangerine-df1fbe3c067bbca9be10f6fc2d09a66f82313a82.tar.xz go-tangerine-df1fbe3c067bbca9be10f6fc2d09a66f82313a82.tar.zst go-tangerine-df1fbe3c067bbca9be10f6fc2d09a66f82313a82.zip |
build: always run go vet
This ensures 'make test' finds all errors that remote CI would find.
Go 1.7 vet reports a false positive in package log, add a workaround.
-rw-r--r-- | .travis.yml | 4 | ||||
-rw-r--r-- | appveyor.yml | 2 | ||||
-rw-r--r-- | build/ci.go | 7 | ||||
-rw-r--r-- | log/handler.go | 7 |
4 files changed, 11 insertions, 9 deletions
diff --git a/.travis.yml b/.travis.yml index 4bef48a0d..9d85635b1 100644 --- a/.travis.yml +++ b/.travis.yml @@ -24,7 +24,7 @@ matrix: - sudo chmod 666 /dev/fuse - sudo chown root:$USER /etc/fuse.conf - go run build/ci.go install - - go run build/ci.go test -coverage -vet -misspell + - go run build/ci.go test -coverage -misspell - os: osx go: 1.8 @@ -34,7 +34,7 @@ matrix: - brew install caskroom/cask/brew-cask - brew cask install osxfuse - go run build/ci.go install - - go run build/ci.go test -coverage -vet -misspell + - go run build/ci.go test -coverage -misspell # This builder does the Ubuntu PPA and Linux Azure uploads - os: linux diff --git a/appveyor.yml b/appveyor.yml index c15696705..c9c2e357e 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -36,4 +36,4 @@ after_build: test_script: - set CGO_ENABLED=1 - - go run build\ci.go test -vet -coverage + - go run build\ci.go test -coverage diff --git a/build/ci.go b/build/ci.go index fcdd33788..622417580 100644 --- a/build/ci.go +++ b/build/ci.go @@ -24,7 +24,7 @@ Usage: go run ci.go <command> <command flags/arguments> Available commands are: install [ -arch architecture ] [ packages... ] -- builds packages and executables - test [ -coverage ] [ -vet ] [ -misspell ] [ packages... ] -- runs the tests + test [ -coverage ] [ -misspell ] [ packages... ] -- runs the tests archive [ -arch architecture ] [ -type zip|tar ] [ -signer key-envvar ] [ -upload dest ] -- archives build artefacts importkeys -- imports signing keys from env debsrc [ -signer key-id ] [ -upload dest ] -- creates a debian source package @@ -262,7 +262,6 @@ func goToolArch(arch string, subcmd string, args ...string) *exec.Cmd { func doTest(cmdline []string) { var ( - vet = flag.Bool("vet", false, "Whether to run go vet") misspell = flag.Bool("misspell", false, "Whether to run the spell checker") coverage = flag.Bool("coverage", false, "Whether to record code coverage") ) @@ -275,9 +274,7 @@ func doTest(cmdline []string) { packages = build.ExpandPackagesNoVendor(packages) // Run analysis tools before the tests. - if *vet { - build.MustRun(goTool("vet", packages...)) - } + build.MustRun(goTool("vet", packages...)) if *misspell { spellcheck(packages) } diff --git a/log/handler.go b/log/handler.go index abb17b4c4..d5594b853 100644 --- a/log/handler.go +++ b/log/handler.go @@ -106,11 +106,16 @@ func CallerFileHandler(h Handler) Handler { // the context with key "fn". func CallerFuncHandler(h Handler) Handler { return FuncHandler(func(r *Record) error { - r.Ctx = append(r.Ctx, "fn", fmt.Sprintf("%+n", r.Call)) + r.Ctx = append(r.Ctx, "fn", formatCall("%+n", r.Call)) return h.Log(r) }) } +// This function is here to please go vet on Go < 1.8. +func formatCall(format string, c stack.Call) string { + return fmt.Sprintf(format, c) +} + // CallerStackHandler returns a Handler that adds a stack trace to the context // with key "stack". The stack trace is formated as a space separated list of // call sites inside matching []'s. The most recent call site is listed first. |