title |
---|
FAQ |
You can integrate it yourself, see this manual. Or you can create a GitHub Issue and we will integrate when time permits.
We are sure that every project can easily integrate golangci-lint
, even the large one. The idea is to not fix all existing issues. Fix only newly added issue: issues in new code. To do this setup CI (or better use GolangCI) to run golangci-lint
with option --new-from-rev=HEAD~1
. Also, take a look at option --new
, but consider that CI scripts that generate unstaged files will make --new
only point out issues in those files and not in the last commit. In that regard --new-from-rev=HEAD~1
is safer.
By doing this you won't create new issues in your code and can choose fix existing issues (or not).
Run golangci-lint
in CI and check the exit code. If it's non-zero - fail the build.
See how to properly install golangci-lint
in CI
Short answer: Go 1.12 and newer are officially supported.
Long answer:
- go < 1.9 isn't supported
- go1.9 is officially supported by golangci-lint <= v1.10.2
- go1.10 is officially supported by golangci-lint <= 1.15.0.
- go1.11 is officially supported by golangci-lint <= 1.17.1.
- go1.12+ are officially supported by the latest version of golangci-lint (>= 1.18.0).
- Please, ensure you are using the latest binary release.
- Run it with
-v
option and check the output. - If it doesn't help create a GitHub issue with the output from the error and #2 above.
Because the first run caches type information. All subsequent runs will be fast. Usually this options is used during development on local machine and compilation was already performed.