wasmi-labs / wasmi

WebAssembly (Wasm) interpreter.
https://wasmi-labs.github.io/wasmi/
Apache License 2.0
1.56k stars 281 forks source link

Update `wasmi_wasi` WASI implementing dependencies #943

Closed Robbepop closed 1 month ago

Robbepop commented 7 months ago

Currently wasmi_wasi is stuck on v2.0 of wasi-common, wasi-cap-std-sync and wiggle crate. For both wasi-common and wiggle this PR has shown that it is quite easy to update to the most recent version.

However, for wasi-cap-std-sync it is unfortunately not very easy to do so since this crate is hard wired with Wasmtime to work. However, for Wasmi we want to avoid having to depend or compile Wasmtime as dependency.

This issue is about resolving this problem so that we can use more recent WASI implementations with bug fixes and improvements.

This issue superseeds the following issue(s):

Robbepop commented 7 months ago

This would probably resolve https://github.com/wasmi-labs/wasmi/issues/861.

Robbepop commented 3 months ago

This could be easily resolved with https://github.com/bytecodealliance/wasmtime/issues/8894.

Robbepop commented 2 months ago

Wasmtime's https://crates.io/crates/wasi-common/23.0.1 has just been released with the changes to its sync crate feature which should allow Wasmi to use it to replace the old wasi-common v2.0 and wasi-cap-std-sync v2.0 WASI dependencies with just wasi-common v23.0.1.