-
-
Notifications
You must be signed in to change notification settings - Fork 1.5k
Description
Thank you for creating the issue!
- Yes, I'm using a binary release within 2 latest major releases. Only such installations are supported.
- Yes, I've searched similar issues on GitHub and didn't find any.
- Yes, I've included all information below (version, config, etc).
Please include the following information:
Version of golangci-lint:
1.23.1Config file
Not relevant for issueGo environment
go version go1.13.3 darwin/amd64
Verbose output of running
not relevant for issueIssue:
The lack of older-than-latest golangci-lint versions in Homebrew is making it difficult for our team to smoothly integrate the tool into our dev and CI process due to the prospect of forced upgrades. Because we have learned that minor version upgrades sometimes introduce new linting failures (e.g. when updating from 1.21.0 to 1.23.1; gocyclo and gocognit became stricter between these versions, causing our builds to break; this disagrees with our expectations for semver), we wish to be insulated from a forced update schedule that requires us to suddenly dive in and make code changes or weaken our linter config.
We pin the version we use for our CI server so that it isn't prone to such disruption, but team members rely on Homebrew (when possible) to manage tools for local development. Any time someone doesn't have the current pinned version installed (because they're new, haven't touched the Go code in a while, etc.) and needs to do so, they're out of luck with Homebrew unless it's the latest version, since older versions are apparently being aggressively pruned (other Homebrew packages don't seem to do this so aggressively, so we wonder if it's necessary). While other means are available, this creates tool friction and complexity we'd rather avoid levying on team members diving into areas of code they touch infrequently.
We understand that the recommended means of acquiring a specific version is to use curl
or wget
to get and run the install script, however for security concerns our team prefers to avoid this practice if possible.
Would it be possible to keep older versions available for longer, so that we don't get cornered into making sudden adjustments like this? Is there a better option we're missing?
Thanks for the great work, hope to hear a response soon.