Skip to content

fix(docker): unbreak the arm64 image build, and ignore the yanked chacha20 - #161

Merged
henry40408 merged 2 commits into
mainfrom
fix/zigbuild-cortex-a53
Aug 28, 2026
Merged

fix(docker): unbreak the arm64 image build, and ignore the yanked chacha20#161
henry40408 merged 2 commits into
mainfrom
fix/zigbuild-cortex-a53

Conversation

@henry40408

@henry40408 henry40408 commented Aug 28, 2026

Copy link
Copy Markdown
Owner

Two unrelated breakages, both of which make main red right now.

1. arm64 image build (Dockerfile)

Broken since #156 landed Rust 1.98. rustc now passes
-Wl,--fix-cortex-a53-843419 for aarch64-unknown-linux-musl
(rust-lang/rust#155453) and zig's linker rejects it:

error: unsupported linker arg: --fix-cortex-a53-843419
error: could not compile `pingward` (bin "pingward") due to 1 previous error

cargo-zigbuild filters that arg from 0.23.0 onward
(rust-cross/cargo-zigbuild#452, fixing rust-cross/cargo-zigbuild#451); the
Dockerfile pinned 0.22.3, which predates it — src/zig.rs:541 at v0.23.0
carries the filter, v0.22.3 does not.

ZIG_VERSION stays at 0.14.1 — 0.23.0 still supports it, and the libc++-19
bindgen caveat the existing comment names only applies to zig 0.15+.

2. yanked chacha20 (deny.toml)

cargo deny check fails on every branch with
error[yanked]: detected yanked crate (try 'cargo update -p chacha20').
chacha20 0.10.1 was yanked upstream; it is not an advisory and it reaches us
transitively via rand. 0.10.0 is yanked too, so 0.10.2 (published 2026-08-27)
is the only non-yanked stable release — inside the 7-day hold on fresh
releases. Ignored until it clears on 2026-09-03; #162 tracks the removal.

Verification

The Dockerfile change is not reachable from the test harness: ci.yml never
cross-compiles, and docker.yml only runs on a push to main or a tag, so the
arm64 build is first exercised after merge. The deny.toml change is covered by
the cargo-deny job on this PR.

Failing runs for reference:

🤖 Generated with Claude Code

Rust 1.98 makes rustc pass `-Wl,--fix-cortex-a53-843419` on
aarch64-unknown-linux-musl (rust-lang/rust#155453). zig's linker rejects
it, so every arm64 image build since #156 fails with
`unsupported linker arg: --fix-cortex-a53-843419`. cargo-zigbuild filters
that arg from 0.23.0 onward (rust-cross/cargo-zigbuild#452); the pinned
0.22.3 predates the fix.

ci.yml never cross-compiles, so nothing outside docker.yml sees this.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@codecov

codecov Bot commented Aug 28, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 96.31%. Comparing base (a370597) to head (c301296).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #161   +/-   ##
=======================================
  Coverage   96.31%   96.31%           
=======================================
  Files          28       28           
  Lines       13132    13132           
=======================================
  Hits        12648    12648           
  Misses        484      484           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

…e hold

chacha20 0.10.1 was yanked upstream, so `cargo deny check` fails on every
branch. It is not a security advisory — the crate's only RUSTSEC entry is
RUSTSEC-2019-0029 against 0.1.x — and it reaches us transitively via rand.

0.10.0 is yanked too, leaving 0.10.2 (published 2026-08-27) as the only
non-yanked stable release, which is inside the 7-day hold on fresh releases.
Ignore the yank until 2026-09-03; #162 tracks removing it.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@henry40408 henry40408 changed the title fix(docker): bump cargo-zigbuild to 0.23.0 for the Cortex-A53 linker arg fix(docker): unbreak the arm64 image build, and ignore the yanked chacha20 Aug 28, 2026
@henry40408
henry40408 merged commit f1cc3b8 into main Aug 28, 2026
6 checks passed
@henry40408
henry40408 deleted the fix/zigbuild-cortex-a53 branch August 28, 2026 16:24
henry40408 added a commit that referenced this pull request Sep 3, 2026
)

chacha20 0.10.0 and 0.10.1 are both yanked upstream (a yank, not an
advisory). 0.10.2 was published 2026-08-27 and has now cleared the 7-day
hold on fresh releases, so take it and remove the stop-gap ignore that
#161 added to deny.toml.

The crate is transitive only, via rand 0.10.2 under sqlx-postgres and
axum-test. The e2e workspace keeps its own lockfile and pinned the same
yanked version, so bump it too — cargo-deny only scans the root, but
there is no reason to leave the second lock on a yanked release.

Closes #162

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
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