Skip to content

WASIp3 support #46

@Destructor17

Description

@Destructor17

It would be nice to support WASIp3, as it would make sockets work and would unblock WASI-GFX, but, as for now, there are a few issues:

  • Threads. Currently Webrogue uses WASI-Threads proposal to let guest code spawn threads. It works fine, but is not compatible with component model. To use threads with WASIp3, cooperative threads must land in stable WASI-SDK release. Wasmtime seem to already support cooperative threads. Status of cooperative threads support in JCO is unknown.
  • wasmtime-wasi. An implementation of WASIp3 in Wasmtime is tied to Tokio. It should work on most OSes, but not on the wasm32-unknown-unknown. As for web, I see 2 solution. First is to implement WASIp3 on wasm32-unknown-unknown using JCO's wasi-shim. Second is to rewrite web implementation of Webrogue to use WASI and run it using JCO with some custom imports. Dependency on Tokio may become a bigger issue if Webrogue will be ported to something exotic

Metadata

Metadata

Assignees

No one assigned

    Type

    No fields configured for Task.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions