Skip to content

build: bump Go toolchain 1.27.0 to 1.27.2 - #389

Merged
juev merged 1 commit into
mainfrom
388-go-1.27.2
Oct 9, 2026
Merged

juev merged 1 commit into
mainfrom
388-go-1.27.2

Conversation

@juev

@juev juev commented Oct 9, 2026

Copy link
Copy Markdown
Collaborator

Closes #388

What

Bumps the Go toolchain from 1.27.0 to 1.27.2 in every place it is pinned:

  • go.mod (go directive)
  • Dockerfile (ARG GO_VERSION)
  • .github/workflows/ci.yml (three setup-go steps)
  • .github/workflows/release.yml (one setup-go step)
  • .github/workflows/scheduled.yml (two setup-go steps)

Also bumps golangci-lint from v2.13.1 to v2.14.0 in Makefile and from v2.13 to v2.14 in ci.yml.

Why

Go 1.27.2 is a security release. On 1.27.0 make govulncheck reports 12 standard library vulnerabilities reachable from our code, all fixed in 1.27.2. The list is in #388.

Why golangci-lint moves too

golangci-lint v2.13.1 and v2.13.2 fail typecheck against the go1.27.2 toolchain:

could not load export data: internal error in importing "internal/goarch"
(cannot decode "internal/goarch", export data version 5 is greater than maximum supported version 4)

Both bundle golang.org/x/tools v0.49.0. v2.14.0 bundles v0.50.0, reads the export data and reports 0 issues. .golangci.yml is unchanged.

Verification

  • make ci on go1.27.2: exit 0. That covers vet, build, go test -race, golangci-lint (0 issues), standalone gosec and govulncheck.
  • govulncheck: "Your code is affected by 0 vulnerabilities". It still lists 1 vulnerability in a required module that our code does not call; that one is out of scope here.
  • The golang:1.27.2-alpine tag exists on Docker Hub.

Not verified locally: the Docker image build and the release workflow.

Follow-up

Published binaries and images are built with 1.27.0, so a release is needed for users to receive the fix.

go1.27.0 stdlib carries 12 reachable vulnerabilities (GO-2026-6617,
GO-2026-6613, GO-2026-6612, GO-2026-6611, GO-2026-6610, GO-2026-6609,
GO-2026-6608, GO-2026-6607, GO-2026-6605, GO-2026-6603, GO-2026-6600,
GO-2026-6599), all fixed in go1.27.2.

- go.mod: raise go directive to 1.27.2
- .github/workflows/ci.yml: bump go-version pins in all 3 jobs
- .github/workflows/scheduled.yml: bump go-version pins in both jobs
- .github/workflows/release.yml: bump go-version pin
- Dockerfile: bump ARG GO_VERSION to 1.27.2

golangci-lint v2.13 cannot read the export data written by the go1.27.2
compiler and fails typecheck with "export data version 5 is greater
than maximum supported version 4". v2.14.0 reads it and reports 0
issues with the unchanged .golangci.yml.

- Makefile: bump GOLANGCI_VERSION to v2.14.0
- .github/workflows/ci.yml: bump golangci-lint-action version to v2.14

Fixes #388
@juev juev added security Security-related dependencies Pull requests that update a dependency file go Pull requests that update go code labels Oct 9, 2026
@juev
juev merged commit 106a7eb into main Oct 9, 2026
12 checks passed
@juev
juev deleted the 388-go-1.27.2 branch October 9, 2026 06:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file go Pull requests that update go code security Security-related

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Bump Go toolchain to 1.27.2: govulncheck reports 12 stdlib vulnerabilities on 1.27.0

1 participant