Skip to content

fix(ci): force-reinstall rust-std for target (win-arm64 E0463 fix)#783

Merged
zackees merged 1 commit into
mainfrom
fix/rustup-target-add-force-reinstall
Jun 28, 2026
Merged

fix(ci): force-reinstall rust-std for target (win-arm64 E0463 fix)#783
zackees merged 1 commit into
mainfrom
fix/rustup-target-add-force-reinstall

Conversation

@zackees

@zackees zackees commented Jun 28, 2026

Copy link
Copy Markdown
Member

soldr#1006 Lane 2 third attempt. v2.3.9 win-arm64 failed with E0463: can't find crate for 'core' despite rustup target add reporting "is up to date" — setup-soldr's thin-mode build cache trimmed the .rlib files while leaving rustup's manifest entry. Fix: remove + add forces actual file reinstall.

Summary by CodeRabbit

  • Bug Fixes
    • Improved native build reliability by refreshing installed Rust targets before adding them, reducing failures caused by stale or incomplete target setup.
    • Enhanced support for Windows ARM64 native builds.

soldr#1006 Lane 2 third attempt. v2.3.9 win-arm64 failed at:

  error[E0463]: can't find crate for `core`
    note: the `aarch64-pc-windows-msvc` target may not be installed

`rustup target add` had already reported "info: component rust-std
for target aarch64-pc-windows-msvc is up to date". The mismatch is
setup-soldr's thin-mode build cache: it trims the actual rust-std
.rlib files from the toolchain dir while leaving rustup's
component manifest claiming the target is installed. Subsequent
`rustup target add` then short-circuits and rustc fails at compile.

Fix: remove + add. `rustup target remove` clears the manifest
entry so the immediate `rustup target add` reinstalls the files
for real.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@zackees
zackees merged commit c5ab63e into main Jun 28, 2026
87 of 91 checks passed
@coderabbitai

coderabbitai Bot commented Jun 28, 2026

Copy link
Copy Markdown

Review Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 05c38935-6ec5-47da-a55b-3c09ee9d169d

📥 Commits

Reviewing files that changed from the base of the PR and between 2af92d4 and eafedae.

📒 Files selected for processing (1)
  • .github/workflows/template_native_build.yml

📝 Walkthrough

Walkthrough

The "Add Rust target" CI step is changed from a single rustup target add <triple> to a rustup target remove <triple> || true && rustup target add <triple> sequence, with inline comments documenting the rationale around stale cache states leaving rustup manifests inconsistent.

Changes

Rustup Target Installation Fix

Layer / File(s) Summary
Remove-then-add Rust target step
.github/workflows/template_native_build.yml
Replaces rustup target add with a remove (|| true) then add sequence; adds comments explaining that cached rustup manifests can claim a target is installed while rust-std artifacts are absent, notably for aarch64-pc-windows-msvc.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Possibly related PRs

  • FastLED/fbuild#760: Modifies the same template_native_build.yml Rust target setup logic, directly overlapping with this change.

Poem

🐇 A target once cached left the stdlib astray,
So the rabbit said "remove it first, then add today!"
With || true as a shield against failure's sting,
Remove then re-add — let the compiler sing!
No phantom installs shall fool our CI ring! 🎉

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/rustup-target-add-force-reinstall

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

zackees added a commit that referenced this pull request Jun 28, 2026
soldr#1006 Lane 2 retry after PR #783.

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@fastled-project-sync fastled-project-sync Bot moved this to Triage in FastLED Tracker Jun 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Triage

Development

Successfully merging this pull request may close these issues.

1 participant