[build] Makefile: align GoVersion + add a snapshot target#26
Merged
Conversation
- GoVersion is now injected from `go env GOVERSION` (e.g. go1.25.9) instead of the full `go version` string. The old value baked the build *host* platform, so a `make build_linux` binary misleadingly reported `darwin/arm64`; the new value is the toolchain version only and matches what GoReleaser injects. - Add `make snapshot`: a release-style cross-platform build via GoReleaser in --snapshot mode (local dry-run, nothing published). `make build` stays the fast single-platform dev build; `make snapshot` is for inspecting what a real release would ship. Named `snapshot` (not `release`) on purpose β a real release only ever happens via a tag + the release workflow, never a local make.
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.
Two small build-tooling improvements (follow-up to the goreleaser distribution work):
GoVersionalignment β inject it fromgo env GOVERSION(e.g.go1.25.9) instead of the fullgo versionstring. The old value baked the build host platform, so amake build_linuxbinary misleadingly reporteddarwin/arm64in its--version; the new value is the toolchain version only and matches what GoReleaser injects.make snapshotβ a release-style cross-platform build via GoReleaser in--snapshotmode (local dry-run, nothing published).make buildstays the fast single-platform dev build;make snapshotis for inspecting what a real release would ship (artifacts land indist/).Named
snapshot, notrelease, on purpose: a real release only ever happens via a tag + the release workflow, never a localmakeβ calling itreleasewould be misleading.Verified locally:
make buildshowsGo Version: go1.25.9;make snapshotproduces all six platform archives + checksums.