Skip to content

Update dependency go to v1.27.1 - #367

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/go-1.x
Open

Update dependency go to v1.27.1#367
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/go-1.x

Update dependency go to v1.27.1

b26ac48
Select commit
Loading
Failed to load commit list.
buildsworth-bk-app / Buildsworth review succeeded Sep 1, 2026 in 2m 32s

Review submitted — changes requested

Review summary

Change reviewed

PR buildkite/go-buildkite#367 updates the contributor and CI Go toolchain from Go 1.26.6 to Go 1.27.1. It changes the version in mise.toml and regenerates the Go section of mise.lock, including the platform-specific download URLs and checksums. The module's minimum version in go.mod remains Go 1.25, consistent with the comment in mise.toml that the mise pin controls the CI/contributor toolchain rather than the library's minimum supported Go version.

No Linear issue identifier was present in the branch name, PR title, or PR description, so there was no linked Linear issue to inspect. The PR description is the Renovate-generated dependency update description.

What I examined

I read the complete two-file diff and the full current contents of mise.toml and mise.lock. I also traced how these pins are consumed by CI:

  • .buildkite/pipeline.yml installs the mise toolchain for both lint and test jobs.
  • .buildkite/steps/lint.sh runs module tidiness, formatting, golangci-lint run, and generation checks.
  • .buildkite/steps/test.sh runs the Go test suite and produces coverage artifacts.
  • Repository-wide references confirm that mise.toml is the only source pin for golangci-lint, while mise.lock records version 2.12.2.

I inspected the current PR conversation and the earlier buildsworth review. Its only blocking concern was that golangci-lint 2.12.2 is incompatible with Go 1.27. There was no author reply declining or otherwise addressing that concern, and the current revision still pins 2.12.2.

I also inspected the public details and lint log for go-buildkite build #1468, which ran against the current commit b26ac4809a2cedb56ea8b1572b9da70171ff3c2a. The test and annotation steps passed, but the lint step failed. Its log confirms that mise installed Go 1.27.1 and golangci-lint 2.12.2; the linter then panicked with:

file requires newer Go version go1.27 (application built with go1.26)

The job exited with status 2. I verified the upstream golangci-lint v2.13.0 release notes as well; that release includes the explicit go1.27 support change.

The GitHub checks visible during review showed both Socket checks passing, the go-buildkite Buildkite status failing through build #1468, and the buildsworth review check in progress. I did not run the repository checks locally because this checkout does not have go, mise, or golangci-lint installed; the current CI run provided direct evidence for both the passing tests and the failing lint path.

Finding and verdict

The previous blocking finding remains unresolved: updating CI to Go 1.27.1 while retaining a linter binary built with Go 1.26 makes the repository's lint job unusable. The failure is deterministic on the current revision and occurs before linting can complete. The smallest correction is to update the golangci-lint pin to a Go-1.27-compatible release such as 2.13.0 and regenerate mise.lock.

I replied in the existing review thread rather than opening a duplicate comment, and submitted a Changes requested review. No additional findings were identified in this pass. The Go lockfile entries themselves are internally consistent with the requested Go 1.27.1 update, and the test suite passed in CI under that toolchain.

Trigger source: automatic.