Has anyone had a go at getting anything in that ecosystem working with wasip3? Or is it still a bit premature to be thinking about that?
No serious use case yet — just idly thinking about prototyping some unsanctioned stuff for $DAY_JOB.
Not that I'm aware of, and I imagine adding WASIp3 support to wasi-libc/wasi-sdk would be a prerequisite for supporting it in Rust std, which in turn would be a prerequisite for supporting it in mio/tokio.
Also, I've had no luck so far getting WASIp2 support upstreamed into either mio or tokio, and I'm expecting WASIp3 to be an equally tough sell. Experimental forks should be easy enough, though.
For my AUTOSAR demonstrator I gave up on Rust async support for p2, because it looked like a huge effort. The integrated spawn and block_on primitives in p3 made that port trivial with the new technology.
But for Tokio you will likely also want shared everything threads and atomics which are not part of the 0.3.0 release. :time_ticking:
Perhaps 0.3 can work without requiring Tokio, if we dust off the executor abstraction crates created for tokio and smol.
https://crates.io/crates/async-compact (I know there is no good main and spawn abstraction)
In practice a lot of async libraries depend directly on tokio for async system interfaces (fs, net, time), and many (most?) of those should work with a single-threaded executor.
Most "async compat" libraries I have seen only deal with more abstract interfaces like io and stream. I can imagine having equivalents of those for 0.3 could be useful.
Christof Petig said:
https://crates.io/crates/async-compact (I know there is no good main and spawn abstraction)
Sorry, broken link, https://crates.io/crates/async-compat is the right one
Yosh, Dan and I made https://docs.rs/wstd/latest/wstd/
its intended to be a minimum viable async runtime for p2, and soon for p3
the goal isnt to compete with tokio but hopefully to show how a port should work
in the meantime its a better way to write guests than dealing with the hostcalls directly, though it has a lot of rough edges still
happy to accept patches to improve it!
Last updated: Dec 06 2025 at 05:03 UTC