Released 2025-02-25.
- MinGW C API builds are now built with a newer version of GCC which seems to fix an issue caused by #9929. #10290
- The
cranelift-codegen
crate now no longer depends onarbitrary
, a now-unnecessary dependency. #10217
Released 2025-02-21.
- Fixes an issue building the
cranelift-assembler-x64
crate on Windows when the Rust toolchain is on a different drive than the project usingwasmtime
. For more details, see the Zulip discussion. #10270
Released 2025-02-20.
-
New
wasmtime-wasi-io
crate provides a#![no_std]
wasi:io implementation, factored out ofwasmtime-wasi
. Users ofwasmtime-wasi
don't have to depend on this new crate. #10036 -
Wasmtime's interpreter, Pulley, is now complete and has been listed as tier 2. #9897 #9884 #9943 #9944 #9983 #9966 #9935 #10034 #10057 #10095
-
Wasmtime's CI now checks that the repository builds for
aarch64-apple-ios
. Note that no tests are run for this target, so it's still tier 3. #9888 -
Winch's support for AArch64 and simd on x64 have continued to progress well. Winch additionally now fully supports the
threads
WebAssembly proposal. #9889 #9970 #9950 #9987 #9990 #9959 #10008 #10028 #10029 #10023 #10042 #10050 #10039 #10082 #10092 #10109 #10148 #10147 -
The
memory64
WebAssembly feature is now enabled by default. This WebAssembly proposal is now considered a tier 1 feature. #9937 #10159 -
Wasmtime's full test suite and CI now includes 32-bit platforms such as x86 and armv7 Linux. These platforms have been added to tier 3 status and use Pulley as their execution backend. #10025
-
Initial experimental support for WASIp3 and async features of the Component Model have started to land. These features are not yet ready for general-purpose use. #10044 #10047 #10083 #10103
-
The
wasmtime
CLI now supports using a TOML configuration file via--config
in addition to CLI options. #9811 #10132 -
Initial support for a new assembler on x64 has been added. #10110 #10178
-
wasmtime-wasi
split theWasiView
trait intoIoView
andWasiView
, andwasmtime-wasi-http
re-usesIoView
inWasiHttpView
. Details on porting for embedders in PR. #10016 -
wasmtime-wasi
renamed some exported types and traits. Embedders which usePollable
,InputStream
,OutputStream
,Subscribe
,HostInputStream
,HostOutputStream
,PollableFuture
, orClosureFuture
from that crate will need to rename those imports to their new names, describe in PR. #10036 -
Components using a 64-bit linear memory should never have worked before, but they're now rejected earlier in the validation process. #9952
-
Module validation is now deterministic in the face of multiple errors. #9947
-
Wasmtime's minimum supported version of Rust is now 1.82.0. #9956
-
Cranelift will now deduplicate
trap[n]z
instructions. #10004 -
The
--emit-clif
option towasmtime compile
now emits post-optimization CLIF. #10011 -
The
signals-based-traps
Cargo feature has been removed in favor of auto-detection of available features based on the#[cfg]
directives available for the target platform. #9941 -
The
async_stack_zeroing
configuration knob now covers all stack allocations, not just those from the pooling allocator. #10027 -
Wasmtime should work-by-default on more platforms, even those where Cranelift has no support for the architecture. This is done by ensuring some architecture and platform-specific bits are removed on unknown platforms (and Pulley is used instead). #10107
-
Wasmtime now compiles on platforms missing 64-bit atomics. #10134
-
Fixed a missing case for
Ref::matches_ty
should returntrue
. #9985 -
A bug with using the
single_pass
register allocation algorithm on x64/s390x has been fixed by refactoring how branches are represented. #10086 #10087 -
A bug with argument extensions on riscv64 has been fixed. #10069
-
The
PartialEq
implementation forRegisteredType
has been fixed. #10091 -
The output of
component::bindgen!
now works with#![no_std]
crates. #10105 -
Fix
wasmtime wast
when combined with--fuel
. #10121 -
The
wat
feature of the C API is now plumbed correctly in a few more locations. #10124 -
Spurious wake-ups in
blocking_*
methods ofInputStream
andOutputStream
have been fixed. #10113
Release notes for previous releases of Wasmtime can be found on the respective release branches of the Wasmtime repository.