Repository navigation
boringlint v1.0.0 is the first stable release, with Go 1.27 support for the standalone command, go vet -vettool, and the exported NoIterator and NoGenericMethod analyzers.
Building, installing, or importing boringlint now requires Go 1.27.0 or newer, up from Go 1.25.0. Both command modes support source projects declaring Go 1.23 through Go 1.27.
Changes since v0.9.5:
- Target stable Go 1.27 and remove compatibility code and conditional tests for older build toolchains.
- Expand
nogenericmethodcoverage for inferred method uses and standard-library methods such as(*rand.Rand).N. Generic functions and methods using only receiver type parameters remain allowed. - Verify that Go 1.27's promoted-field struct literal keys and generalized function type inference remain allowed.
- Fix
noiteratortraversal of array length expressions: function literal signatures and variable types remain allowed, while nested type declarations and function ranges are checked. - Update the analysis dependencies, development tools, and CI runtime.
mise run standards:check passed locally and in CI for commit 1fecc724b4763717bd0e65bcd16d7f34bc284288. The gate includes tests on Go 1.27.0 and Go 1.27.1, race checks, and integration tests for both command modes. No checks were skipped.
Install with Go 1.27.0 or newer:
go install github.com/KrishRVH/boringlint/cmd/boringlint@v1.0.0