0.5.0 crates.io release
-
Lucet officially became a project of the Bytecode Alliance 🎉.
-
Integrated
wasi-commonas the underlying implementation for WASI inlucet-wasi. -
Updated to Cranelift to version 0.51.0.
-
Fixed a soundness bug by changing the types of the
Vmctx::yield*()methods to require exclusive&mut selfaccess to theVmctx. This prevents resources like embedder contexts or heap views from living across yield points, which is important for safety since the host can modify the data underlying those resources while the instance is suspended. -
Added the
#[lucet_hostcall]attribute to replacelucet_hostcalls!, which is now deprecated. -
Added the ability to specify an alignment for the base of a
MmapRegion-backed instance's heap. Thanks, @shravanrn! -
Added a
--targetoption tolucetcto allow cross-compilation to other architectures than the host's. Thanks, @froydnj! -
Changed the Cargo dependencies between Lucet crates to be exact (e.g.,
"=0.5.0"rather than"0.5.0") rather than allowing semver differences. -
Fixed the
KillSwitchtype not being exported from the public API, despite being usable viaInstance::kill_switch(). -
Improved the formatting of error messages.
-
Ensured the
lucet-wasiexecutable properly links in the exported symbols fromlucet-runtime.