Description
Welcome
- Yes, I'm using a binary release within 2 latest releases. Only such installations are supported.
- Yes, I've searched similar issues on GitHub and didn't find any.
- Yes, I've read the
typecheck
section of the FAQ. - Yes, I've tried with the standalone linter if available (e.g., gocritic, go vet, etc.).
- I agree to follow this project's Code of Conduct
How did you install golangci-lint?
Other
Description of the problem
We've been struggling with very long lint times on our project, and one of our team members noticed performance was much better on version 1.61...
The examples below are a bit contrived as they are without cache. The cache does help but it's still not uncommon to see times >1min on an M4 Macbook Pro with 32GB ram when touching files that are near the root of the dependency tree, it's just a bit of a pain to benchmark that reliably.
It's even worse for team members on older hardware, with some reporting linting taking up to 10 minutes on M1/16GB Macbooks.
I've done a couple of quick benchmarks to illustrate:
Notice that the latest version is 1.5x-2x slower than 1.61.0
We've narrowed it down to somewhere between 1.61.0 and 1.62.2.
I'd be happy to have a go at improving this, but could use some assistance if there are some obvious places to check and/or updated packages that are more likely to be where the degradation is coming from.
I've used mise.jdx.dev to quickly switch between versions but we're vendoring in golangci-lint from the official binary normally.
v1.64.7 - our repo - 94.36s
golangci-lint --version && golangci-lint cache clean && time golangci-lint run -v > /dev/null
golangci-lint has version 1.64.7 built with go1.24.1 from 8cffdb7d on 2025-03-11T23:26:51Z
INFO golangci-lint has version 1.64.7 built with go1.24.1 from 8cffdb7d on 2025-03-11T23:26:51Z
INFO [config_reader] Config search paths: [./ /Users/pfx/code/2-areas/platform /Users/pfx/code/2-areas /Users/pfx/code /Users/pfx /Users /]
INFO [config_reader] Used config file .golangci.yml
INFO [goenv] Read go env for 5.38825ms: map[string]string{"GOCACHE":"/Users/pfx/Library/Caches/go-build", "GOROOT":"/Users/pfx/.local/share/mise/installs/go/1.23.6"}
INFO [lintersdb] Active 20 linters: [depguard dogsled errcheck exhaustive gci gocritic gofmt goimports goprintffuncname gosimple govet makezero predeclared revive rowserrcheck staticcheck testpackage tparallel unconvert unused]
INFO [loader] Using build tags: [integration]
INFO [loader] Go packages loading at mode 8767 (compiled_files|deps|exports_file|name|types_sizes|files|imports) took 1.466605s
INFO [runner/filename_unadjuster] Pre-built 0 adjustments in 127.481083ms
INFO [linters_context/goanalysis] analyzers took 1h15m46.143915518s with top 10 stages: buildir: 8m42.547657609s, goimports: 5m23.94896072s, the_only_name: 3m51.560881539s, unconvert: 2m26.072338515s, gocritic: 1m11.835696217s, gci: 57.167173259s, buildssa: 57.132585509s, gofmt: 51.003987963s, S1038: 50.016766632s, nilness: 34.707608705s
INFO [runner/exclusion_rules] Skipped 1 issues by rules: [Source: "(?i)^//\\$\\(which go\\)", Linters: "gocritic"]
INFO [runner] Issues before processing: 12730, after processing: 0
INFO [runner] Processors filtering stat (in/out): filename_unadjuster: 12730/12730, path_relativity: 12730/12730, exclusion_paths: 12730/12730, exclusion_rules: 12730/32, path_absoluter: 12730/12730, cgo: 12730/12730, skip_dirs: 12730/12730, generated_file_filter: 12730/12730, identifier_marker: 12730/12730, nolint_filter: 32/0, invalid_issue: 12730/12730, skip_files: 12730/12730
INFO [runner] processing took 92.27958ms with stages: generated_file_filter: 40.326083ms, exclusion_rules: 34.347916ms, skip_dirs: 5.796208ms, nolint_filter: 4.588584ms, path_relativity: 4.457083ms, invalid_issue: 829.332µs, cgo: 651.333µs, path_absoluter: 592.666µs, identifier_marker: 389.291µs, filename_unadjuster: 298.083µs, max_same_issues: 583ns, exclusion_paths: 501ns, sort_results: 459ns, fixer: 334ns, path_shortener: 167ns, diff: 167ns, skip_files: 125ns, source_code: 125ns, path_prettifier: 125ns, uniq_by_line: 125ns, max_from_linter: 124ns, max_per_file_from_linter: 83ns, severity-rules: 83ns
INFO [runner] linters took 1m32.621252209s with stages: goanalysis_metalinter: 1m32.528679083s
INFO File cache stats: 8 entries of total size 132.3KiB
INFO Memory: 856 samples, avg is 3342.7MB, max is 5435.0MB
INFO Execution took 1m34.23183775s
________________________________________________________
Executed in 94.36 secs fish external
usr time 209.44 secs 29.00 micros 209.44 secs
sys time 208.56 secs 320.00 micros 208.56 secs
v1.64.7 - golangci-lint repo - 13.96s
golangci-lint --version && golangci-lint cache clean && time golangci-lint run -v > /dev/null
golangci-lint has version 1.64.7 built with go1.24.1 from 8cffdb7d on 2025-03-11T23:26:51Z
INFO golangci-lint has version 1.64.7 built with go1.24.1 from 8cffdb7d on 2025-03-11T23:26:51Z
INFO [config_reader] Config search paths: [./ /Users/pfx/code/3-resources/golangci-lint /Users/pfx/code/3-resources /Users/pfx/code /Users/pfx /Users /]
INFO [config_reader] Used config file .golangci.yml
INFO [goenv] Read go env for 5.256333ms: map[string]string{"GOCACHE":"/Users/pfx/Library/Caches/go-build", "GOROOT":"/Users/pfx/.local/share/mise/installs/go/1.24.1"}
INFO [lintersdb] Active 20 linters: [depguard dogsled errcheck exhaustive gci gocritic gofmt goimports goprintffuncname gosimple govet makezero predeclared revive rowserrcheck staticcheck testpackage tparallel unconvert unused]
INFO [loader] Using build tags: [integration]
INFO [loader] Go packages loading at mode 8767 (compiled_files|exports_file|imports|deps|files|name|types_sizes) took 739.015709ms
INFO [runner/filename_unadjuster] Pre-built 0 adjustments in 10.975208ms
INFO [linters_context/goanalysis] analyzers took 4m51.309911657s with top 10 stages: buildir: 1m12.353763424s, the_only_name: 23.068014253s, goimports: 20.804942005s, unconvert: 9.847325041s, fact_deprecated: 5.849002084s, exhaustive: 5.800382049s, gocritic: 5.37269097s, printf: 4.918556524s, ctrlflow: 4.533309826s, inspect: 4.352578737s
INFO [runner/exclusion_rules] Skipped 0 issues by rules: [Source: "(?i)^//\\$\\(which go\\)", Linters: "gocritic"]
INFO [runner] Issues before processing: 1692, after processing: 507
INFO [runner] Processors filtering stat (in/out): path_relativity: 1692/1692, exclusion_paths: 1692/1692, generated_file_filter: 1692/1692, exclusion_rules: 1692/721, uniq_by_line: 717/709, severity-rules: 507/507, filename_unadjuster: 1692/1692, skip_dirs: 1692/1692, nolint_filter: 721/717, diff: 717/717, max_from_linter: 507/507, path_absoluter: 1692/1692, fixer: 717/717, max_same_issues: 507/507, skip_files: 1692/1692, identifier_marker: 1692/1692, max_per_file_from_linter: 709/507, source_code: 507/507, path_shortener: 507/507, path_prettifier: 507/507, sort_results: 507/507, cgo: 1692/1692, invalid_issue: 1692/1692
INFO [runner] processing took 40.778542ms with stages: nolint_filter: 18.315292ms, generated_file_filter: 8.054291ms, exclusion_rules: 7.948125ms, source_code: 3.874584ms, skip_dirs: 844.501µs, path_relativity: 609.875µs, sort_results: 545.875µs, uniq_by_line: 108.208µs, invalid_issue: 82µs, cgo: 78.708µs, path_absoluter: 78.375µs, identifier_marker: 72.333µs, max_per_file_from_linter: 56.833µs, path_shortener: 52.25µs, filename_unadjuster: 40.75µs, path_prettifier: 14.5µs, max_same_issues: 707ns, exclusion_paths: 375ns, fixer: 293ns, max_from_linter: 208ns, severity-rules: 167ns, skip_files: 167ns, diff: 125ns
INFO [runner] linters took 13.1195375s with stages: goanalysis_metalinter: 13.078657625s
INFO File cache stats: 364 entries of total size 791.6KiB
INFO Memory: 140 samples, avg is 988.9MB, max is 1386.7MB
INFO Execution took 13.882652917s
________________________________________________________
Executed in 13.96 secs fish external
usr time 46.60 secs 28.00 micros 46.60 secs
sys time 36.50 secs 290.00 micros 36.50 secs
v1.61.0 - our repo - 30.48s
golangci-lint --version && golangci-lint cache clean && time golangci-lint run -v > /dev/null
golangci-lint has version 1.61.0 built with go1.23.1 from a1d6c560 on 2024-09-09T17:44:42Z
INFO golangci-lint has version 1.61.0 built with go1.23.1 from a1d6c560 on 2024-09-09T17:44:42Z
INFO [config_reader] Config search paths: [./ /Users/pfx/code/2-areas/platform /Users/pfx/code/2-areas /Users/pfx/code /Users/pfx /Users /]
INFO [config_reader] Used config file .golangci.yml
INFO [lintersdb] Active 20 linters: [depguard dogsled errcheck exhaustive gci gocritic gofmt goimports goprintffuncname gosimple govet makezero predeclared revive rowserrcheck staticcheck testpackage tparallel unconvert unused]
INFO [loader] Using build tags: [integration]
INFO [loader] Go packages loading at mode 575 (deps|imports|name|types_sizes|compiled_files|files|exports_file) took 1.232954542s
INFO [runner/filename_unadjuster] Pre-built 0 adjustments in 122.858917ms
INFO [linters_context/goanalysis] analyzers took 16m46.333819152s with top 10 stages: buildir: 2m32.081693002s, the_only_name: 1m16.605160047s, unconvert: 48.191368608s, gci: 33.988684293s, goimports: 30.439255918s, buildssa: 27.443786584s, gocritic: 20.463837861s, gofmt: 19.537270587s, S1038: 16.578077052s, fact_deprecated: 13.950451036s
INFO [runner] Issues before processing: 12734, after processing: 0
INFO [runner] Processors filtering stat (in/out): nolint: 32/0, invalid_issue: 12734/12734, skip_dirs: 12734/12734, identifier_marker: 12734/12734, cgo: 12734/12734, exclude-rules: 12734/32, filename_unadjuster: 12734/12734, path_prettifier: 12734/12734, skip_files: 12734/12734, autogenerated_exclude: 12734/12734, exclude: 12734/12734
INFO [runner] processing took 551.290668ms with stages: autogenerated_exclude: 222.735042ms, exclude-rules: 178.508584ms, identifier_marker: 111.570542ms, path_prettifier: 26.301792ms, skip_dirs: 5.5495ms, nolint: 4.612708ms, cgo: 788.5µs, invalid_issue: 764.916µs, filename_unadjuster: 456.5µs, sort_results: 1.084µs, max_same_issues: 375ns, uniq_by_line: 249ns, diff: 167ns, skip_files: 166ns, fixer: 125ns, max_per_file_from_linter: 84ns, max_from_linter: 83ns, exclude: 83ns, path_shortener: 42ns, path_prefixer: 42ns, source_code: 42ns, severity-rules: 42ns
INFO [runner] linters took 28.966006458s with stages: goanalysis_metalinter: 28.414657167s
INFO File cache stats: 8 entries of total size 132.3KiB
INFO Memory: 300 samples, avg is 3108.3MB, max is 5292.8MB
INFO Execution took 30.331369708s
________________________________________________________
Executed in 30.48 secs fish external
usr time 207.87 secs 41.00 micros 207.87 secs
sys time 30.33 secs 352.00 micros 30.33 secs
v1.61.0 - golangci-lint repo - 7.28s
❯ golangci-lint --version && golangci-lint cache clean && time golangci-lint run -v > /dev/null
golangci-lint has version 1.61.0 built with go1.23.1 from a1d6c560 on 2024-09-09T17:44:42Z
INFO golangci-lint has version 1.61.0 built with go1.23.1 from a1d6c560 on 2024-09-09T17:44:42Z
INFO [config_reader] Config search paths: [./ /Users/pfx/code/3-resources/golangci-lint /Users/pfx/code/3-resources /Users/pfx/code /Users/pfx /Users /]
INFO [config_reader] Used config file .golangci.yml
INFO [lintersdb] Active 20 linters: [depguard dogsled errcheck exhaustive gci gocritic gofmt goimports goprintffuncname gosimple govet makezero predeclared revive rowserrcheck staticcheck testpackage tparallel unconvert unused]
INFO [loader] Using build tags: [integration]
INFO [loader] Go packages loading at mode 575 (compiled_files|name|types_sizes|deps|exports_file|files|imports) took 568.71375ms
INFO [runner/filename_unadjuster] Pre-built 0 adjustments in 11.621ms
INFO [linters_context/goanalysis] analyzers took 2m40.209582595s with top 10 stages: SA5012: 2.128580502s, nilness: 1.946276669s, SA1028: 1.686747091s, SA1024: 1.548594294s, SA5011: 1.507124704s, exhaustive: 1.470268658s, ctrlflow: 1.46878338s, SA1023: 1.448945918s, SA1003: 1.434683541s, SA6001: 1.425019419s
INFO [runner] Issues before processing: 35161, after processing: 187
INFO [runner] Processors filtering stat (in/out): exclude-rules: 35154/35154, uniq_by_line: 35154/187, max_from_linter: 187/187, path_shortener: 187/187, severity-rules: 187/187, filename_unadjuster: 35161/35161, skip_files: 35154/35154, fixer: 187/187, nolint: 35154/35154, diff: 187/187, identifier_marker: 35154/35154, exclude: 35154/35154, max_per_file_from_linter: 187/187, max_same_issues: 187/187, path_prefixer: 187/187, cgo: 35161/35161, invalid_issue: 35161/35154, autogenerated_exclude: 35154/35154, source_code: 187/187, sort_results: 187/187, path_prettifier: 35154/35154, skip_dirs: 35154/35154
INFO [runner] processing took 194.384832ms with stages: identifier_marker: 180.004375ms, path_prettifier: 7.5295ms, autogenerated_exclude: 2.596916ms, source_code: 878.167µs, skip_dirs: 602µs, uniq_by_line: 518.5µs, filename_unadjuster: 498.958µs, invalid_issue: 476.708µs, nolint: 470.958µs, cgo: 470.375µs, exclude-rules: 291.626µs, sort_results: 33.333µs, path_shortener: 8.708µs, max_per_file_from_linter: 3.376µs, max_same_issues: 375ns, fixer: 251ns, skip_files: 249ns, exclude: 208ns, diff: 166ns, max_from_linter: 83ns, path_prefixer: 0s, severity-rules: 0s
INFO [runner] linters took 6.614266333s with stages: goanalysis_metalinter: 6.419802625s
INFO File cache stats: 52 entries of total size 268.5KiB
INFO Memory: 74 samples, avg is 1585.9MB, max is 2155.2MB
INFO Execution took 7.202327208s
________________________________________________________
Executed in 7.28 secs fish external
usr time 18.55 secs 47.00 micros 18.55 secs
sys time 6.36 secs 519.00 micros 6.36 secs
v1.62.2 - our repo - 98.60s
❯ golangci-lint --version && golangci-lint cache clean && time golangci-lint run -v > /dev/null
golangci-lint has version 1.62.2 built with go1.23.3 from 89476e7a on 2024-11-25T14:16:01Z
INFO golangci-lint has version 1.62.2 built with go1.23.3 from 89476e7a on 2024-11-25T14:16:01Z
INFO [config_reader] Config search paths: [./ /Users/pfx/code/2-areas/platform /Users/pfx/code/2-areas /Users/pfx/code /Users/pfx /Users /]
INFO [config_reader] Used config file .golangci.yml
INFO [lintersdb] Active 20 linters: [depguard dogsled errcheck exhaustive gci gocritic gofmt goimports goprintffuncname gosimple govet makezero predeclared revive rowserrcheck staticcheck testpackage tparallel unconvert unused]
INFO [loader] Using build tags: [integration]
INFO [loader] Go packages loading at mode 8767 (types_sizes|compiled_files|imports|name|deps|exports_file|files) took 1.327498291s
INFO [runner/filename_unadjuster] Pre-built 0 adjustments in 131.053334ms
INFO [linters_context/goanalysis] analyzers took 1h8m32.901853981s with top 10 stages: buildir: 9m24.29088962s, goimports: 5m44.991186468s, the_only_name: 4m17.010925691s, unconvert: 2m37.044259555s, gci: 1m39.809556491s, gocritic: 1m5.701493456s, S1038: 58.342486334s, buildssa: 57.010763741s, gofmt: 45.747209843s, nilness: 31.878821318s
INFO [runner] Issues before processing: 12732, after processing: 0
INFO [runner] Processors filtering stat (in/out): autogenerated_exclude: 12732/12732, identifier_marker: 12732/12732, exclude-rules: 12732/32, skip_files: 12732/12732, filename_unadjuster: 12732/12732, cgo: 12732/12732, exclude: 12732/12732, path_prettifier: 12732/12732, skip_dirs: 12732/12732, nolint: 32/0, invalid_issue: 12732/12732
INFO [runner] processing took 365.183541ms with stages: exclude-rules: 179.636333ms, identifier_marker: 103.203583ms, autogenerated_exclude: 40.551667ms, path_prettifier: 29.495084ms, skip_dirs: 5.52225ms, nolint: 4.782542ms, invalid_issue: 905µs, cgo: 709.875µs, filename_unadjuster: 373.708µs, max_same_issues: 833ns, sort_results: 708ns, fixer: 333ns, skip_files: 292ns, exclude: 249ns, diff: 209ns, uniq_by_line: 207ns, max_from_linter: 168ns, source_code: 167ns, max_per_file_from_linter: 126ns, path_prefixer: 83ns, severity-rules: 83ns, path_shortener: 41ns
INFO [runner] linters took 1m37.007741375s with stages: goanalysis_metalinter: 1m36.642083042s
INFO File cache stats: 8 entries of total size 132.3KiB
INFO Memory: 850 samples, avg is 3482.6MB, max is 5375.6MB
INFO Execution took 1m38.476208375s
________________________________________________________
Executed in 98.60 secs fish external
usr time 227.91 secs 30.00 micros 227.91 secs
sys time 212.68 secs 318.00 micros 212.68 secs
v1.62.2 - golangci-lint repo - 14.85
golangci-lint --version && golangci-lint cache clean && time golangci-lint run -v > /dev/null
golangci-lint has version 1.62.2 built with go1.23.3 from 89476e7a on 2024-11-25T14:16:01Z
INFO golangci-lint has version 1.62.2 built with go1.23.3 from 89476e7a on 2024-11-25T14:16:01Z
INFO [config_reader] Config search paths: [./ /Users/pfx/code/3-resources/golangci-lint /Users/pfx/code/3-resources /Users/pfx/code /Users/pfx /Users /]
INFO [config_reader] Used config file .golangci.yml
INFO [lintersdb] Active 20 linters: [depguard dogsled errcheck exhaustive gci gocritic gofmt goimports goprintffuncname gosimple govet makezero predeclared revive rowserrcheck staticcheck testpackage tparallel unconvert unused]
INFO [loader] Using build tags: [integration]
INFO [loader] Go packages loading at mode 8767 (name|types_sizes|compiled_files|exports_file|imports|deps|files) took 707.264917ms
INFO [runner/filename_unadjuster] Pre-built 0 adjustments in 11.109042ms
INFO [linters_context/goanalysis] analyzers took 5m30.715674987s with top 10 stages: buildir: 1m25.380368252s, goimports: 24.455756046s, the_only_name: 16.965053422s, unconvert: 11.006405117s, gci: 9.865992166s, gocritic: 7.403908004s, fact_deprecated: 6.79777734s, exhaustive: 6.253641751s, inspect: 5.580758556s, printf: 5.428318296s
INFO [runner] Issues before processing: 1691, after processing: 708
INFO [runner] Processors filtering stat (in/out): filename_unadjuster: 1691/1691, invalid_issue: 1691/1691, path_prettifier: 1691/1691, skip_files: 1691/1691, skip_dirs: 1691/1691, exclude: 1691/1691, uniq_by_line: 716/708, max_same_issues: 708/708, fixer: 708/708, sort_results: 708/708, exclude-rules: 1691/720, nolint: 720/716, diff: 708/708, max_from_linter: 708/708, path_prefixer: 708/708, max_per_file_from_linter: 708/708, path_shortener: 708/708, cgo: 1691/1691, autogenerated_exclude: 1691/1691, identifier_marker: 1691/1691, source_code: 708/708, severity-rules: 708/708
INFO [runner] processing took 68.001703ms with stages: exclude-rules: 21.502458ms, nolint: 17.134583ms, identifier_marker: 11.470291ms, autogenerated_exclude: 7.751666ms, path_prettifier: 4.560917ms, source_code: 3.691458ms, skip_dirs: 836.166µs, sort_results: 661.75µs, cgo: 112.542µs, uniq_by_line: 89.083µs, invalid_issue: 79.708µs, path_shortener: 51.958µs, filename_unadjuster: 42.083µs, max_per_file_from_linter: 15.043µs, max_same_issues: 833ns, diff: 250ns, skip_files: 250ns, max_from_linter: 208ns, severity-rules: 166ns, fixer: 166ns, exclude: 83ns, path_prefixer: 41ns
INFO [runner] linters took 14.034032s with stages: goanalysis_metalinter: 13.965913208s
INFO File cache stats: 357 entries of total size 759.8KiB
INFO Memory: 146 samples, avg is 905.3MB, max is 1116.3MB
INFO Execution took 14.760288791s
________________________________________________________
Executed in 14.85 secs fish external
usr time 50.16 secs 30.00 micros 50.16 secs
sys time 34.69 secs 337.00 micros 34.69 secs
Version of golangci-lint
$ golangci-lint --version
golangci-lint has version 1.64.7 built with go1.24.1 from 8cffdb7d on 2025-03-11T23:26:51Z```
Configuration
# Clearing the cache for apples to apples comparison of running time. Performance still very much slower than 1.61 with cache.
golangci-lint cache clean && time golangci-lint run -v
run:
allow-parallel-runners: true
build-tags:
- integration
timeout: 5m
output:
sort-results: true
linters:
disable-all: true
enable:
- dogsled
- errcheck
- exhaustive
- gci
- gocritic
- gofmt
- goimports
- revive
- goprintffuncname
- gosimple
- govet
- makezero
- predeclared
- staticcheck
- testpackage
- tparallel
- typecheck
- unconvert
- depguard
- unused
- rowserrcheck
linters-settings:
rowserrcheck:
packages:
- github.com/jackc/pgx/v5
errcheck:
check-blank: false # Will be enabled in a follow-up commit
depguard:
rules:
main:
list-mode: lax
files:
- "**/handler/**/main.go"
allow:
- $gostd
deny:
- pkg: "github.com/aws/aws-lambda-go/lambda"
desc: The usage of this package here is probably a mistake. If you're trying to call lambda.start change it to modules/defaults.start instead (check out other handlers for a complete example). If this is a false positive, please tweak this rule on .golangci.yml
issues:
max-issues-per-linter: 0
max-same-issues: 0
exclude-rules:
- source: "^//\\$\\(which go\\)"
linters:
- gocritic
Go environment
$ go version && go env
GO111MODULE=''
GOARCH='arm64'
GOBIN='/Users/pfx/.local/share/mise/installs/go/1.23.6/bin'
GOCACHE='/Users/pfx/Library/Caches/go-build'
GOENV='/Users/pfx/Library/Application Support/go/env'
GOEXE=''
GOEXPERIMENT=''
GOFLAGS=''
GOHOSTARCH='arm64'
GOHOSTOS='darwin'
GOINSECURE=''
GOMODCACHE='/Users/pfx/go/pkg/mod'
GONOPROXY=''
GONOSUMDB=''
GOOS='darwin'
GOPATH='/Users/pfx/go'
GOPRIVATE=''
GOPROXY='https://proxy.golang.org,direct'
GOROOT='/Users/pfx/.local/share/mise/installs/go/1.23.6'
GOSUMDB='sum.golang.org'
GOTMPDIR=''
GOTOOLCHAIN='auto'
GOTOOLDIR='/Users/pfx/.local/share/mise/installs/go/1.23.6/pkg/tool/darwin_arm64'
GOVCS=''
GOVERSION='go1.23.6'
GODEBUG=''
GOTELEMETRY='local'
GOTELEMETRYDIR='/Users/pfx/Library/Application Support/go/telemetry'
GCCGO='gccgo'
GOARM64='v8.0'
AR='ar'
CC='clang'
CXX='clang++'
CGO_ENABLED='1'
GOMOD='/Users/pfx/code/2-areas/platform/go.mod'
GOWORK=''
CGO_CFLAGS='-O2 -g'
CGO_CPPFLAGS=''
CGO_CXXFLAGS='-O2 -g'
CGO_FFLAGS='-O2 -g'
CGO_LDFLAGS='-O2 -g'
PKG_CONFIG='pkg-config'
GOGCCFLAGS='-fPIC -arch arm64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -ffile-prefix-map=/var/folders/sy/2gb8vxt11bxcxv0tjywtfz480000gn/T/go-build256349768=/tmp/go-build -gno-record-gcc-switches -fno-common'
Verbose output of running
$ golangci-lint cache clean
$ golangci-lint run -v
# paste output here
A minimal reproducible example or link to a public repository
I copied the config above into the golangci-lint repo and ran the lints here.
It's less glaring because our repo is larger, but we can still see the time is almost doubled on versions > 1.61
Validation
- Yes, I've included all information above (version, config, etc.).
Supporter
- I am a sponsor/backer through GitHub or OpenCollective