Skip to content

feat(ci): build prebuilt binaries on tag push - #10

Merged
AlexanderSlokov merged 1 commit into
developfrom
oxd-077/release-workflow
Sep 2, 2026
Merged

AlexanderSlokov merged 1 commit into
developfrom
oxd-077/release-workflow

Conversation

@AlexanderSlokov

Copy link
Copy Markdown
Owner

Advances
OXD-077. Adds .github/workflows/release.yml: a five-target build matrix on a v* tag, a SHA256SUMS file,
and a guard that refuses to publish when the tag does not match the workspace version. README gains
copy-paste install commands per platform.

Trying Oxidiris required a Rust toolchain, which is too high a price for
"have a look at this". A tagged release now carries a binary for Linux
(x86_64, aarch64), macOS (x86_64, aarch64) and Windows (x86_64), plus a
SHA256SUMS file.

Linux targets musl rather than gnu: every dependency in the tree is pure
Rust, so the build is fully static (2.2 MB x86_64, 1.9 MB aarch64,
verified with ldd) and runs on any distribution. A gnu build would bind
to the runner's glibc and fail on older systems.

The publish job refuses to run when the tag does not match the workspace
version in Cargo.toml. v0.1.0 shipped a manifest claim that did not match
reality and only CI caught it; this makes the equivalent mistake at tag
time impossible.

workflow_dispatch runs the same matrix but publishes nothing, so this
file can be smoke-tested without cutting a tag.

Hand-rolled rather than cargo-dist, which the OXD-077 scope named: five
targets of a single binary with no C dependencies would need more
generated config than the workflow it replaces, and the archive names are
load bearing for the README install commands and a future Homebrew
formula. Reasoning recorded in BACKLOG.md.

Advances OXD-077.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CnxWi8AHLUKkDkBhkhoDSU
@AlexanderSlokov
AlexanderSlokov merged commit f2b6f7c into develop Sep 2, 2026
8 checks passed
@AlexanderSlokov
AlexanderSlokov deleted the oxd-077/release-workflow branch September 2, 2026 15:39
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