RFC โ Bump Go 1.25 โ 1.26 (approaching EOL)
Bucket item: A1 ยท Class: ๐ก Standard ยท Jira Story: TF-3501 ยท Epic: TF-3500
Context / Problemโ
Go supports only the two newest majors. Go 1.25 loses support when Go 1.27 ships (~2026-08). Bump to Go 1.26 (released Feb 2026, actively supported) now, while it is a minor, low-risk step.
Current state (evidence):
| Locus | Current |
|---|---|
go.mod:3 | go 1.25 |
Dockerfile:5 | golang:1.25-alpine (builder) |
bitbucket-pipelines.yml:1 | pipeline image on Go 1.25 |
Proposed changeโ
Move the toolchain directive and all build/CI images to Go 1.26. Toolchain-only โ no source behaviour change intended.
Execution plan (call to action)โ
go.modโgo 1.26; rungo build ./...+ full test suite locally on 1.26.Dockerfile:5โgolang:1.26-alpine(coordinate with A2 if the base image changes too).bitbucket-pipelines.ymlโ Go 1.26 pipeline image; confirm CI green.go vet ./...+govulncheckfor any 1.26 stdlib deprecations surfaced.
Risks & rollbackโ
- Risk: low (minor bump). A dependency may pin a higher
godirective or hit a changed stdlib behaviour โ caught by the test suite in step 1. - Rollback: revert the three one-line image/directive changes; no data or API impact.
Open questionsโ
- Any dependency requiring a
godirective above 1.26, or relying on removed stdlib behaviour? - Land the builder + runtime image bumps together with A2 (Alpine), or separately?