golangci-lint
is a fast linters runner for Go.
It runs linters in parallel, uses caching, supports YAML configuration, integrates with all major IDEs, and includes over a hundred linters.
Join our slack channel by joining Gophers workspace
and then joining channel #golangci-lint
.
Follow the news and releases:
- ⚡ Very fast: runs linters in parallel, reuses Go build cache and caches analysis results.
- ⚙️ YAML-based configuration.
- 🖥 Integrations with VS Code, Sublime Text, GoLand, GNU Emacs, Vim, GitHub Actions.
- 🥇 A lot of linters included, no need to install them.
- 📈 Minimum number of false positives because of tuned default settings.
- 🔥 Nice output with colors, source code lines and marked
identifiers
.
docker run --rm -v $(pwd):/app -w /app golangci/golangci-lint:{.LatestVersion} golangci-lint run -v
Preserving cache between consecutive runs:
docker run --rm -v $(pwd):/app -v ~/.cache/golangci-lint/{.LatestVersion}:/root/.cache -w /app golangci/golangci-lint:{.LatestVersion} golangci-lint run -v
Colored output:
docker run -t --rm -v $(pwd):/app -w /app golangci/golangci-lint:{.LatestVersion} golangci-lint run -v
golangci-lint
is a free and open-source project built by volunteers.
If you value it, consider supporting us, we appreciate it! ❤️