feat: begin wasip3 implementation#11221
Merged
alexcrichton merged 10 commits intobytecodealliance:mainfrom Jul 16, 2025
Merged
Conversation
c904ef4 to
8549fc5
Compare
Member
Author
|
#11127 has been added to the merge queue, so looks like I'll have to rebase this on Monday, moving back to draft |
alexcrichton
approved these changes
Jul 11, 2025
Member
alexcrichton
left a comment
There was a problem hiding this comment.
A few minor thoughts here and there, but overall looks great, thank you @rvolosatovs! With #11127 merged as well mind removing the #[ignore] on the tests to confirm they pass too?
8549fc5 to
2185f9d
Compare
2185f9d to
c822293
Compare
c822293 to
9d79694
Compare
Signed-off-by: Roman Volosatovs <rvolosatovs@riseup.net>
Signed-off-by: Roman Volosatovs <rvolosatovs@riseup.net>
Signed-off-by: Roman Volosatovs <rvolosatovs@riseup.net>
Signed-off-by: Roman Volosatovs <rvolosatovs@riseup.net>
Signed-off-by: Roman Volosatovs <rvolosatovs@riseup.net>
Signed-off-by: Roman Volosatovs <rvolosatovs@riseup.net>
Signed-off-by: Roman Volosatovs <rvolosatovs@riseup.net>
ref bytecodealliance#11245 Signed-off-by: Roman Volosatovs <rvolosatovs@riseup.net>
- hide `CommandPre`, since it is currently unusable bytecodealliance#11249 - use `Command::new` directly in examples, since `instantiate_async` does not provide a way to call an export Signed-off-by: Roman Volosatovs <rvolosatovs@riseup.net>
Signed-off-by: Roman Volosatovs <rvolosatovs@riseup.net>
9d79694 to
63a9517
Compare
Member
Author
|
@alexcrichton review comments addressed, mind giving this another look? |
alexcrichton
approved these changes
Jul 16, 2025
This was referenced Jul 16, 2025
bongjunj
pushed a commit
to prosyslab/wasmtime
that referenced
this pull request
Oct 20, 2025
* ci: add subdir support Signed-off-by: Roman Volosatovs <rvolosatovs@riseup.net> * feat: extract common `WasiCtxBuilder` Signed-off-by: Roman Volosatovs <rvolosatovs@riseup.net> * chore: vendor p3 WIT Signed-off-by: Roman Volosatovs <rvolosatovs@riseup.net> * feat: begin wasip3 implementation Signed-off-by: Roman Volosatovs <rvolosatovs@riseup.net> * chore(wasip3): remove now-redundant async stubs Signed-off-by: Roman Volosatovs <rvolosatovs@riseup.net> * test(wasip3): link wasip2 Signed-off-by: Roman Volosatovs <rvolosatovs@riseup.net> * refactor: `allow` -> `expect` Signed-off-by: Roman Volosatovs <rvolosatovs@riseup.net> * chore: add bindgen `tracing` issue ref ref bytecodealliance#11245 Signed-off-by: Roman Volosatovs <rvolosatovs@riseup.net> * chore: adapt to `Accessor` API changes - hide `CommandPre`, since it is currently unusable bytecodealliance#11249 - use `Command::new` directly in examples, since `instantiate_async` does not provide a way to call an export Signed-off-by: Roman Volosatovs <rvolosatovs@riseup.net> * doc: add a link to p3 `add_to_linker` Signed-off-by: Roman Volosatovs <rvolosatovs@riseup.net> --------- Signed-off-by: Roman Volosatovs <rvolosatovs@riseup.net>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This starts the process of moving wasip3 implementation from https://github.com/bytecodealliance/wasip3-prototyping/tree/0bcd54e714e70dbee4dd2d440abb3017997a061e/crates/wasi
wasi:clockstimezoneinterface is not implemented yetwasi:randomadd stubs forAccess::getandAccessor::with.for now, these are implemented directly in the file they're used in to avoid an import. There is only one occurrence where we need these in this PR and the hoping is that by the time next PR lands, we'll have them available in the runtime.but ignore them, since async machinery still panics.the tests are adapted from analogous p2 testsWasiCtxBuilderto use for both p2 and p3. Unfortunately, inheritance is sort of tricky here - I originally hoped to implementDerefon the p2/p3 builders, but that breaks the chaining that users are used to, e.g.builder.inherit_env().build()would not work, sinceinherit_envwould return a reference to the inner builder, rather than the outer one. Just duplicate the methods for p2 and p3 for now - let's revisit once we have all of the interfaces implemented and more context on how we can handle this. A macro is potential solution. The reason these contexts are different types is primarily stdio - the abstractions are very different for wasip2 and wasip3.closes #10061
closes #10063
refs bytecodealliance/wasip3-prototyping#228