Skip to content

Add support for pure WASIp2 builds - #44

Merged
tschneidereit merged 1 commit into
mainfrom
wasip2-platform
Nov 2, 2026
Merged

tschneidereit merged 1 commit into
mainfrom
wasip2-platform

Conversation

@tschneidereit

Copy link
Copy Markdown
Member

This changes the wasm32-wasip2 build target to really target WASIp2, without any P3 APIs or Component Model async features.

In most regards, the behavior is the same, but there are some key differences in custom WIT bindings. Specifically, where WASIp3 streamss and futures are mapped to JavaScript ReadableStreams and Promises, WASIp2 bindings expose wasi:io interfaces directly. For builtin features, the key difference is that the inbound HTTP handler can't process multiple requests concurrently, since the incoming handler only returns once the request has been fully handled.

This changes the `wasm32-wasip2` build target to really target WASIp2, without any P3 APIs or Component Model async features.

In most regards, the behavior is the same, but there are some key differences in custom WIT bindings. Specifically, where WASIp3 `streams`s and `future`s are mapped to JavaScript `ReadableStream`s and `Promise`s, WASIp2 bindings expose `wasi:io` interfaces directly. For builtin features, the key difference is that the inbound HTTP handler can't process multiple requests concurrently, since the incoming handler only returns once the request has been fully handled.
@tschneidereit
tschneidereit merged commit bb399cc into main Nov 2, 2026
17 checks passed
@tschneidereit
tschneidereit deleted the wasip2-platform branch November 2, 2026 17:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant