As a (belated) heads up to everyone using the Rust toolchain -- rust-lang/rust#147572 is a major change to how the wasm32-wasip{1,2} targets are implemented in Rust. The PR there has a thorough description, but the general idea is that lots of functions within the standard library have been reimplemented in terms of libc-based symbols instead of Rust-specific code in libstd. This has the immediate benefit of removing the need for the wasip1-to-wasip2 adapter for Rust, for example.
As a big refactoring change this is inevitably having fallout. There's a mixture of bugs in libc being discovered to ramifications to precise behavior differences. I wanted to make a message here as a PSA to help diagnose anything that might come up. Basically if you see weird nightly behavior (and eventually Rust 1.94) this might be the cause. Feel free to cc me on anything and I can help out.
Example bugs found so far are:
linkat was broken in libcthread::sleep was panicking/broken in libcfs::copy didn't workrayon is panicking vs gracefully handling errorLast updated: Jan 29 2026 at 13:25 UTC