Closed
Description
golangci-lint seems to have become much slower recently. As a test case, I see that golangci-lint
with govet
takes about 6.4 seconds, compared to plain go vet
at 1.25 seconds.
Just with govet
enabled:
$ time /usr/local/bin/golangci-lint run --disable-all --enable=govet --tests -v
INFO [config_reader] Config search paths: [./ /Users/alex/Projects/Transparensee/pond /Users/alex/Projects/Transparensee /Users/alex/Projects /Users/alex /Users /]
INFO [config_reader] Config search paths: [./ /Users/alex/Projects/Transparensee/pond /Users/alex/Projects/Transparensee /Users/alex/Projects /Users/alex /Users /]
INFO [lintersdb] Active 1 linters: [govet]
INFO [load/path_resolver] Skipped dirs: [.git .vscode]
INFO [load/path_resolver] Paths resolving took 212.852477ms: [blobstore blobstore/filestore blobstore/gcs blobstore/mocks cmd/pond cmd/pondctl e2e pkg/client proto proto/mocks server server server/database server/database/mocks utils]
INFO [load] Can't get cur project path: currently no in gopath: "/Users/alex/.go" isn't a prefix of "/Users/alex/Projects/Transparensee/pond"
INFO [load] Program loading took 6.151314387s
INFO [load] Not compiling packages: [./server_test ./cmd/pondctl ./server ./proto github.com/stretchr/testify/require github.com/gogo/protobuf/types github.com/stretchr/testify/mock github.com/t11e/pond/server go.uber.org/zap github.com/gogo/protobuf/gogoproto google.golang.org/grpc github.com/spf13/cobra google.golang.org/grpc/status github.com/jackc/pgx cloud.google.com/go/storage google.golang.org/grpc/metadata github.com/stretchr/testify/assert github.com/t11e/pond/proto]
INFO [runner] worker.1 took 152.927µs
INFO [runner] worker.6 took 247.58µs
INFO [runner] worker.2 took 267.053µs
INFO [runner] worker.5 took 246.144µs
INFO [runner] worker.8 took 287.753µs
INFO [runner] worker.3 took 237.41µs
INFO [runner] worker.4 took 328.038µs
INFO [runner] worker.7 took 14.485719ms with stages: govet: 14.195536ms
INFO [runner] Workers idle times: #1: 13.961513ms, #2: 13.944989ms, #3: 13.925121ms, #4: 13.910302ms, #5: 13.938923ms, #6: 13.955198ms, #8: 13.930439ms
INFO [runner] processing took 3.138µs with stages: max_same_issues: 741ns, path_prettifier: 605ns, cgo: 255ns, diff: 243ns, autogenerated_exclude: 237ns, nolint: 235ns, max_from_linter: 200ns, exclude: 175ns, uniq_by_line: 123ns, skip_files: 111ns, source_code: 110ns, max_per_file_from_linter: 103ns
INFO Memory: 53 samples, avg is 277.0MB, max is 406.4MB
INFO Execution took 6.382269647s
/usr/local/bin/golangci-lint run --disable-all --enable=govet --tests -v 18.78s user 14.14s system 501% cpu 6.558 total
Plain go vet
:
$ time go vet github.com/t11e/pond/...
go vet github.com/t11e/pond/... 1.28s user 1.06s system 217% cpu 1.073 total
Environment:
$ golangci-lint --version
golangci-lint has version 1.10.1 built from c37ad66 on 2018-08-27T20:41:14Z
go version && go env
go version go1.11 darwin/amd64
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/alex/Library/Caches/go-build"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/alex/.go"
GOPROXY=""
GORACE=""
GOROOT="/usr/local/opt/go/libexec"
GOTMPDIR=""
GOTOOLDIR="/usr/local/opt/go/libexec/pkg/tool/darwin_amd64"
GCCGO="gccgo"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD="/Users/alex/Projects/Transparensee/pond/go.mod"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/qs/wpmg19r12_9_nz7pvvs2_82r0000gn/T/go-build299194979=/tmp/go-build -gno-record-gcc-switches -fno-common"