ci: bump cargo-zigbuild to 0.23.4 to fix aarch64-linux-gnu build - #141
Conversation
The `stable - aarch64-unknown-linux-gnu` job fails at link time with:
error: unsupported linker arg: --fix-cortex-a53-843419
Recent Rust versions pass `-Wl,--fix-cortex-a53-843419` when linking for
aarch64-unknown-linux-gnu (rust-lang/rust#155453), but cargo-zigbuild
0.19.8's zigcc wrapper forwards it to Zig's linker, which rejects it.
cargo-zigbuild 0.23.0 filters that argument out
(rust-cross/cargo-zigbuild#452). Bump the pin to 0.23.4 in both ci.yml
and release.yml, keeping the two workflows in sync.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars. ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Advanced Run ID: Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
🟢 Approval recommended
The change is a straightforward, consistent version pin update across the relevant CI/release workflow steps and is unlikely to impact runtime code behavior.
Pull request overview
This PR updates the GitHub Actions workflows to pin a newer cargo-zigbuild version so Zig-based cross-compilation jobs (notably aarch64-unknown-linux-gnu) succeed with newer Rust link flags.
Changes:
- Bump
cargo-zigbuildfrom0.19.8to0.23.4in CI zig-based build matrix entries. - Bump
cargo-zigbuildfrom0.19.8to0.23.4in release workflow zig-based build matrix entries.
File summaries
| File | Description |
|---|---|
| .github/workflows/release.yml | Updates the pinned cargo-zigbuild version used for Zig-based cross targets in release builds. |
| .github/workflows/ci.yml | Updates the pinned cargo-zigbuild version used for Zig-based cross targets in CI builds. |
Review details
- Files reviewed: 2/2 changed files
- Comments generated: 0
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
The
stable - aarch64-unknown-linux-gnuCI job has been failing at link time:Cause
Recent Rust versions pass
-Wl,--fix-cortex-a53-843419when linking foraarch64-unknown-linux-gnu(rust-lang/rust#155453). Thecargo-zigbuild0.19.8zigccwrapper forwards that flag straight to Zig's linker, which rejects it. Since the build step runsrustup update stablebefore building, the job started failing as soon as a Rust release containing that change went out.Fix
cargo-zigbuild0.23.0 filters the argument out (rust-cross/cargo-zigbuild#452,src/zig/linker_args.rs). This bumps the pinned version from0.19.8to0.23.4in every zig-based matrix entry, keepingci.ymlandrelease.ymlin sync:ci.yml:x86_64-unknown-linux-musl,aarch64-unknown-linux-gnurelease.yml:x86_64-unknown-linux-musl,aarch64-unknown-linux-gnu,aarch64-unknown-linux-muslcargo-zigbuild0.23.4 requires Rust 1.88+, which is already satisfied by the precedingrustup update stable.Verification
CI on this PR exercises the previously failing
aarch64-unknown-linux-gnucross-compile plus the musl target.