Wasmtime 35: initial GC for Components, ONNX via wasi‑nn, and stronger AArch64 support

WebAssemblyWasmtimeRustEdge

Key update

Wasmtime 35.0.0 (released July 22, 2025) introduces initial GC support for the WebAssembly Component Model (marked as work-in-progress), a new option in wasmtime‑wasi‑nn to use a custom ONNX runtime for in‑Wasm ML inference, and significant correctness/workarounds on AArch64 (Winch now passes WebAssembly MVP tests in this release). The release also tightens build requirements (Rust toolchain bump). (github.com, docs.rs)

Why it matters

Initial GC support in the component model is the most consequential change for developers: once finished and stabilized it removes a major impedance mismatch when composing components written in GC languages or those that need first‑class reference types, reducing the need for expensive serialization/glue and enabling richer, safer multi‑language component boundaries. The wasi‑nn change turns Wasmtime into a more practical host for ML inference by allowing developers to plug a native ONNX runtime into wasi‑nn, which makes it realistic to ship small ML models as portable Wasm modules at the edge or inside constrained sandboxes without rearchitecting to remote inference. Improved AArch64 behavior means these capabilities are now much more usable on ARM‑based edge devices and Apple‑silicon servers rather than being x86‑only experiments. Because the GC support is explicitly “initial” and not finished, treat this release as the right time to prototype and validate component‑model designs and wasi‑nn inference in staging, but avoid assuming API/ABI stability for production until follow‑up releases finalize the component GC work. Also note you may need Rust 1.86+ to build from source. (github.com, docs.rs)

Source

Read Next