feat: build macOS release binaries#357
Open
AlJohri wants to merge 1 commit intoLukeMathWalker:mainLukeMathWalker/cargo-chef:mainfrom
Open
feat: build macOS release binaries#357AlJohri wants to merge 1 commit intoLukeMathWalker:mainLukeMathWalker/cargo-chef:mainfrom
AlJohri wants to merge 1 commit intoLukeMathWalker:mainLukeMathWalker/cargo-chef:mainfrom
Conversation
Add aarch64-apple-darwin and x86_64-apple-darwin to dist targets so each release ships prebuilt macOS binaries alongside the Linux ones. The previous release pipeline (taiki-e/upload-rust-binary-action) published x86_64-apple-darwin until it was replaced by dist in LukeMathWalker#330, which only configured Linux targets. Asset names follow dist's default <bin>-<target-triple>.tar.xz scheme, which mise's github backend recognizes out of the box.
Author
|
lmk if you want me to remove from the pr x86_64-apple-darwin, I think its going to be removed from gh ci in august 2027 (actions/runner-images#13045) |
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
Add
aarch64-apple-darwinandx86_64-apple-darwintodist-workspace.tomlso each release ships prebuilt macOS binaries alongside the Linux ones.distalready maps these targets to the appropriate GitHub-hosted runners (macos-14for arm64,macos-15-intelfor x86_64), so no other changes are needed.Background
distrelease workflow (publish_binaries.yml, removed in Modernize publishing pipeline #330 "Modernize publishing pipeline") publishedx86_64-apple-darwinviataiki-e/upload-rust-binary-action.dist-based pipeline only listed Linux targets, so since v0.1.74 every release has been Linux-only. I couldn't find any issue or PR discussion indicating macOS was intentionally dropped — looks like an oversight during the modernization.cargo install cargo-chef --lockedwill not install on rust < 1.88 for versions > 0.1.74 #356 (users hittingcargo installMSRV problems, who would benefit from prebuilt binaries).Asset naming / mise compatibility
distproducescargo-chef-aarch64-apple-darwin.tar.xzandcargo-chef-x86_64-apple-darwin.tar.xzby default. ThemiseGitHub backend (docs) recognizes the standard Rust target-triple substrings out of the box, so users will be able to do:…on macOS without any additional
asset_patternconfiguration. This matches the convention used by e.g. kunobi-ninja/kache.Verification
Locally regenerated CI with
dist generate(no diff, since the matrix is computed at runtime fromdist-workspace.toml) and confirmed viadist plan:Test plan
pull_request, exercising the build matrix without publishing).cargo-chef-aarch64-apple-darwin.tar.xzandcargo-chef-x86_64-apple-darwin.tar.xz(plus their.sha256files).mise use ubi:LukeMathWalker/cargo-chefresolves the right asset on an Apple Silicon and an Intel Mac.