chore: bump Go to 1.27 and golangci-lint to v2.13.2 - #50
Conversation
Raise the module Go version to 1.27 and update the Makefile linter pin to v2.13.2 (Go 1.27 support). Fixes kinbiko#49
Required for golangci-lint v2.13.x after the Makefile pin bump.
The official install.sh checksum lookup matches *.tar.gz.sbom.json on v2.13.x, so install the release tarball directly. Also satisfy staticcheck QF1008 and keep noisy test-only linters excluded.
kinbiko
left a comment
There was a problem hiding this comment.
This PR shows clear signs of AI being used. I STRONGLY discourage this if your goal is to learn. There's no urgency in this task.
| paths: | ||
| - third_party$ | ||
| - builtin$ | ||
| - examples$ |
There was a problem hiding this comment.
Ouch, this file is even longer than before. It should be possible, without making any rules any weaker (stronger + still passing is OK), to reduce this file down to quite a bit less than 100 lines of code.
| coverage: | ||
| go test -race -v -coverprofile=profile.cov -covermode=atomic ./... | ||
|
|
||
| # Download the release tarball directly. The upstream install.sh checksum |
There was a problem hiding this comment.
This is making things more complicated rather than taking advantage of new features in the Go language and toolchain.
You should be able to reduce the lint target down to a single, easy-to-read line of code. Hint: Read through the release notes of Go 1.24.
Challenge: achieve this win without polluting the SBOM of any of the users of this package (the fact that this package has 0 transitive dependencies is a selling-point that I want to maintain).
Summary
go.modto Go 1.27golangci-lintto v2.13.2 (Go 1.27 support landed in v2.13.0; latest patch is v2.13.2)install.shcurrently matches*.tar.gz.sbom.json).golangci.ymlto v2 and address new staticcheck QF1008 findingsCI workflow files still pin Go 1.22 / older actions. Updating
.github/workflows/go.ymlgo-versionto1.27(and action pins) is required to fully close #49, but this token cannot modify workflow files without the GitHub OAuthworkflowscope.Fixes #49
Checklist