chore(deps): bump Go to 1.25.10#394
Merged
Merged
Conversation
Bumps the Go toolchain from 1.25.7 to 1.25.10 (latest 1.25 patch). Updates native/go.mod, the GO_VERSION env var across the three CI workflows, the xgo cross-compile image tag in the Makefile, and the Go baseline reference in AGENTS.md. Holding at the 1.25 series for now: Go 1.26 regresses -buildmode=c-shared on windows/amd64 (golang/go#78238) for output filenames containing dots, which xgo's hardcoded naming triggers. The 1.26 bump will be revisited as part of #393 (xgo removal), which unblocks cleaner Windows DLL naming. Signed-off-by: Marc Nuri <[email protected]>
This was referenced May 21, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Bumps the Go toolchain from 1.25.7 to 1.25.10 (latest 1.25 patch).
native/go.mod:go 1.25.10.github/workflows/{build,release,snapshots}.yml:GO_VERSION: 1.25.10Makefile: xgo image bumped toghcr.io/techknowlogick/xgo:go-1.25.10AGENTS.md: updated Go baseline referencego mod tidyintroduces no other changes.Supersedes #391 (closed because a branch-rename API call delete-then-recreated the head ref after a force-push, which GitHub interprets as PR closure).
Why not Go 1.26.x?
Initial attempt bumped to
1.26.3(current latest stable) butmake build-alland the native Windows build both fail at the link step:```
ld: export_file.def:1: syntax error
ld: export_file.def: file format not recognized; treating as linker script
```
This is golang/go#78238 — a regression in Go 1.26's
cmd/link/internal/ld/pe.go.peCreateExportFileemits aLIBRARYdirective into the auto-generated.deffile usingfilepath.Base(outopt)verbatim. When the basename contains multiple dots and hyphens (e.g.helm-windows-4.0-amd64.dll, which is xgo's hardcoded naming convention), GNUld's DEF parser rejects it.Verified workarounds and their problems:
-extldflags '-Wl,--export-all-symbols'bypassespeCreateExportFilebut blows past the PE 16-bit export ordinal cap (Helm's transitive symbol table is ~107k symbols).-outflag only sets the basename prefix; the-windows-$PLATFORM-$XGOARCH.dllsuffix is hardcoded in its container'sbuild.sh.-o helm.dll(no hyphens, single dot) builds cleanly under Go 1.26.3 and produces a correct PE export table — confirmed locally.The cleanest path to 1.26.x is to remove xgo entirely and use native cross-compilers, which is now part of #393. Once that lands, the 1.26.x bump can be retried.
Upstream fix milestone: Go 1.27. No backport to 1.26.x announced.
Test plan
go mod tidyclean (only thegodirective moves)make test-gopasses locally under 1.25.10 (two pre-existing envtest flakes unchanged)make build-all) on Linux, native build on Windows/macOS