Skip to content

build(go)!: upgrade to Go 1.26.10 - #65

Open
appleboy wants to merge 1 commit into
masterfrom
chore/upgrade-go-1.26.10
Open

appleboy wants to merge 1 commit into
masterfrom
chore/upgrade-go-1.26.10

Conversation

@appleboy

Copy link
Copy Markdown
Member

Summary

Require Go 1.26.10 in all tracked Go modules, including nested examples and tool modules where present. CI tests the exact minimum patch release while retaining the existing Go 1.27 job where present. Dependency versions are unchanged.

AI authorship

  • AI was used: Codex (GPT-6).
  • AI-authored files: .github/workflows/go.yml, go.mod, go.tools.mod, sse-decoder.go.
  • Human line-by-line reviewed: None — not yet reviewed by a human.

Change classification

Core: minimum Go requirements affect downstream consumers. Please obtain review from two reviewers, including a module owner.

Plan and related issues

Update to the latest default branch and upgrade Go to 1.26.10. No issue references supplied.

Verification

Checkout chore/upgrade-go-1.26.10 (commit 2495f0f9271e262c64f7bb2ee89fa60d635f8c98) and run commands from the repository root unless a subdirectory is specified. Install Go 1.26.10; go version must report go1.26.10. Network access is needed for module downloads.

Command / directory Expected result Status / observed result
go test -mod=readonly -timeout=120s ./... in . Exit 0; tests/lint pass, or module identity is printed for metadata-only modules Passed, exit 0
go tool -modfile=go.tools.mod golangci-lint run --allow-serial-runners in . Exit 0; tests/lint pass, or module identity is printed for metadata-only modules Passed, exit 0
git diff --check and git diff --staged --check No whitespace errors Passed

Minimum-version scenario

  1. Inspect every changed .mod file: each go directive must equal 1.26.10.
  2. Inspect changed workflows: the minimum-version job must select 1.26.10. Existing Go 1.27 coverage remains where present.
  3. Run the checks above using Go 1.26.10. Tests must pass without rewriting module files.

Status: Passed locally. Hosted GitHub Actions have not been observed yet. Website modules contain no Go source, so their verification parses module metadata instead of claiming application tests.

Security, risk, and rollback

No secrets or security-sensitive application interfaces changed. Consumers using an older Go version must upgrade; automatic toolchain downloads may require network access. Revert this commit to restore previous minimum versions and CI settings. Remove disposable test containers after integration checks.

Reviewer guide

Review minimum-version compatibility, then spot-check the mechanical module and workflow updates.

The decoder now iterates with bytes.SplitSeq to satisfy the modernize lint rule enabled by the higher Go version. Existing decoder tests passed.

- Require Go 1.26.10 across tracked modules
- Test the minimum supported patch release in CI

BREAKING CHANGE: Go 1.26.10 or newer is required to use these modules.

- Iterate decoded lines with SplitSeq for modernize lint
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant