build: update rust toolchain to 1.96.1#111
Merged
Merged
Conversation
There was a problem hiding this comment.
Pull request overview
Updates the repository’s pinned Rust toolchain to the latest stable release by adjusting the rust-toolchain.toml toolchain channel, ensuring local and CI toolchain resolution stays consistent via rustup.
Changes:
- Bump pinned Rust toolchain from
1.90.0to1.96.1inrust-toolchain.toml.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Rust 1.96 stopped passing `--allow-undefined` to the wasm linker, and its bundled wasm32-wasip1 std/crt1 now reference newer wasi-libc symbols (`__wasi_init_tp`, `pthread_join`, `pthread_detach`) that wasi-sdk-25 does not provide, so linking failed. - Bump wasi-sdk 25 -> 33 in ci.yml and release.yml (provides the symbols). - build.rs: wasi-sdk 27+ moved libc++/libc++abi into `eh/` and `noeh/` subdirs; add the `noeh` path (we compile with -fno-exceptions) when it exists, keeping backward compatibility with the old flat layout. - Bump wasmtime v13 -> v43 in ci.yml (matching release.yml) and update scripts/wasmtime-wrapper.sh to the modern wasmtime CLI (--max-wasm-stack -> -W max-wasm-stack, --mapdir GUEST::HOST -> --dir HOST::GUEST). Validated locally on aarch64-macos with wasi-sdk-33 + wasmtime v43: `cargo test --target wasm32-wasip1` passes for default, no-default-features and all-features.
Latest wasmtime release. Validated locally on aarch64-macos: wasip1 tests pass with wasi-sdk-33 + wasmtime v46.0.1 (wrapper CLI flags unchanged).
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
Updates the pinned Rust toolchain from 1.90.0 → 1.96.1 (latest stable, released 2026-06-30).
Only
rust-toolchain.tomlneeded changing:rust-version) is declared inCargo.toml.rustup show, which readsrust-toolchain.toml, so no workflow edits are required.Verification
All run locally on 1.96.1:
cargo build✅cargo clippy -- -D warnings(matches CI lint job) ✅cargo fmt --all -- --check✅cargo test→ 42 passed, 0 failed ✅Note:
cargo clippy --all-targetsreports a few pre-existing warnings inbench/, but they are identical under 1.90.0 (not introduced by this bump) and CI clippy does not use--all-targets, so they are out of scope here.