dicej requested alexcrichton for a review on PR #12181.
dicej opened PR #12181 from dicej:relax-intra-component-read-write-rules to bytecodealliance:main:
Per https://github.com/WebAssembly/component-model/pull/580, we now allow intra-component reads and writes for all numeric payloads.
While I was implementing this, Alex and I spotted a couple of bugs, which I've fixed here:
- We can't treat
boolandcharpayloads as "flat" (i.e. trivially copy-able) since not all bit patterns are valid for those types.- We weren't enforcing the rules (old or new) for streams with non-"flat" payloads (i.e. the ones that most needed them enforced :facepalm:)
Also, now that https://github.com/WebAssembly/component-model/pull/578 has been merged, I've updated the
tests/component-modelsubmodule and reduced the list of "expect fail" tests for that directory.Finally, note that the
p3_http_middleware_host_to_hosttest is still expected to trap, but now for a different reason. Previously, it trapped because it tried to do an intra-component read/write on astream<u8>. Now that that's allowed, it instead traps when doing an intra-component read/write on afuture<result<option<trailers>, error-code>>, which is still prohibited.<!--
Please make sure you include the following information:
If this work has been discussed elsewhere, please include a link to that
conversation. If it was discussed in an issue, just mention "issue #...".Explain why this change is needed. If the details are in an issue already,
this can be brief.Our development process is documented in the Wasmtime book:
https://docs.wasmtime.dev/contributing-development-process.htmlPlease ensure all communication follows the code of conduct:
https://github.com/bytecodealliance/wasmtime/blob/main/CODE_OF_CONDUCT.md
-->
dicej requested wasmtime-compiler-reviewers for a review on PR #12181.
dicej requested wasmtime-core-reviewers for a review on PR #12181.
dicej requested wasmtime-wasi-reviewers for a review on PR #12181.
alexcrichton submitted PR review.
dicej merged PR #12181.
Last updated: Jan 09 2026 at 13:15 UTC