-
Notifications
You must be signed in to change notification settings - Fork 286
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement support for running wasm32-wasi
compiled Wasm binaries
#358
Comments
Would certainly love to work on this @Robbepop |
I would certainly appreciate help with this issue!
The situation here has significantly improved since creation of the issue since we now have |
Thanks! |
In case you were not already aware of the Wasmtime I think it might suite as a good foundation for WASI support in |
Yes I found it while looking around. I'm making use of it. Thanks! |
wasm32-wasi
compiled Wasm binaries
@OLUWAMUYIWA how is it going with the |
Hi Rob. Apologies. I got stuck at some point. Rather than getting unstuck, I paused and got busier. Still interested. Will pick it up again tomorrow, and ask you some questions. Is there a discord? |
Thank you for the response @OLUWAMUYIWA . Looking forward to answer all your questions. :) I was just curious which is why I asked. The folks at CNCF would really love to have WASI support for |
@OLUWAMUYIWA I just sent you an e-Mail with my Discord handle. :) (Did not want to post that publicly here.) |
The WebAssembly System Interface (WASI) is an important part at enabling support for a wide variety of WebAssembly targets.
With
wasmi_v1
and itsLinker
definition it should be very straight forward to implement WASI support for thewasmi
interpreter.Ideally the entire WASI implementation resides in a new sub-crate of the
wasmi
workspace, calledwasi
.This sub-crate implements the WASI interface and provides extension methods for the
wasmi_v1::Linker
to add WASI support.As a follow-up feature we could provide an executable for
wasmi_v1
that runs input.wasm
or.wat
files using WASI support out of the box as it is done in Wasmtime.As an overview of what needs to be implemented you can inspect: https://doc.rust-lang.org/std/os/wasi/index.html
The Wasmtime implementation of WASI is also a place to look out for inspiration. Technically we could also use it as a common ground for our WASI support.
Wasmtime reference API guide: https://docs.wasmtime.dev/examples-rust-wasi.html
WASI proposals: https://github.com/WebAssembly/WASI/blob/main/Proposals.md
The text was updated successfully, but these errors were encountered: