Stream: git-wasmtime

Topic: wasmtime / PR #11123 update `component-model-async` plumbing


view this post on Zulip Wasmtime GitHub notifications bot (Jun 27 2025 at 21:05):

dicej edited PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 27 2025 at 21:07):

dicej edited PR #11123:

This pulls in the latest Component Model async ABI code from the wasip3-prototyping repo, including various API refactors and spec updates.

This includes all the changes to the wasmtime crate from wasip3-prototyping _except_ that the concurrent submodule and child submodules contain only non-functional stubs. A follow-up PR will contain the real concurrent implementation.

Note that this builds on https://github.com/bytecodealliance/wasmtime/pull/11114

<!--
Please make sure you include the following information:

Our development process is documented in the Wasmtime book:
https://docs.wasmtime.dev/contributing-development-process.html

Please ensure all communication follows the code of conduct:
https://github.com/bytecodealliance/wasmtime/blob/main/CODE_OF_CONDUCT.md
-->

view this post on Zulip Wasmtime GitHub notifications bot (Jun 27 2025 at 21:09):

dicej edited PR #11123:

This pulls in the latest Component Model async ABI code from the wasip3-prototyping repo, including various API refactors and spec updates.

This includes all the changes to the wasmtime crate from wasip3-prototyping _except_ that the concurrent submodule and child submodules contain only non-functional stubs. A follow-up PR will contain the real concurrent implementation.

<!--
Please make sure you include the following information:

Our development process is documented in the Wasmtime book:
https://docs.wasmtime.dev/contributing-development-process.html

Please ensure all communication follows the code of conduct:
https://github.com/bytecodealliance/wasmtime/blob/main/CODE_OF_CONDUCT.md
-->

view this post on Zulip Wasmtime GitHub notifications bot (Jun 27 2025 at 21:37):

dicej updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 27 2025 at 21:58):

dicej has marked PR #11123 as ready for review.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 27 2025 at 21:58):

dicej requested wasmtime-wasi-reviewers for a review on PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 27 2025 at 21:58):

dicej requested wasmtime-fuzz-reviewers for a review on PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 27 2025 at 21:58):

dicej requested alexcrichton for a review on PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 27 2025 at 21:58):

dicej requested wasmtime-core-reviewers for a review on PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 27 2025 at 21:58):

dicej requested wasmtime-default-reviewers for a review on PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 27 2025 at 21:59):

dicej commented on PR #11123:

I believe I've addressed all the feedback so far (except for the Options question, which I'll need clarification on).

view this post on Zulip Wasmtime GitHub notifications bot (Jun 27 2025 at 22:06):

dicej updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 27 2025 at 22:07):

dicej submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 27 2025 at 22:07):

dicej created PR review comment:

Nevermind, I understand the confusion now, and just pushed an update.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 27 2025 at 22:12):

dicej updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 27 2025 at 22:16):

dicej updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 27 2025 at 22:17):

dicej updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 27 2025 at 22:22):

dicej edited a comment on PR #11123:

I believe I've addressed all the feedback so far (except for the Options question, which I'll need clarification on).

view this post on Zulip Wasmtime GitHub notifications bot (Jun 30 2025 at 14:45):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 30 2025 at 14:47):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 30 2025 at 14:50):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 30 2025 at 14:58):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 30 2025 at 15:21):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 30 2025 at 15:22):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 30 2025 at 15:25):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 30 2025 at 15:27):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 30 2025 at 16:35):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 30 2025 at 18:42):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 30 2025 at 19:41):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 30 2025 at 19:42):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 30 2025 at 19:44):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 30 2025 at 19:54):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 30 2025 at 19:56):

alexcrichton commented on PR #11123:

@dicej ok I've reviewed everything except func.rs, func/host.rs, and func/typed.rs in this PR. I've made quite a few changes myself which I'd appreciate if you could read over as well to confirm you're ok with and such. I think that's enough async for me for today so I'm going to restart reviewing these file tomorrow.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 30 2025 at 20:14):

dicej commented on PR #11123:

Thanks, @alexcrichton! Your changes so far look reasonable to me.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 30 2025 at 20:51):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 30 2025 at 20:52):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jul 01 2025 at 19:05):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jul 01 2025 at 20:24):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jul 01 2025 at 21:53):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jul 02 2025 at 14:58):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jul 02 2025 at 15:45):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jul 02 2025 at 16:45):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jul 02 2025 at 20:58):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jul 02 2025 at 21:02):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jul 02 2025 at 21:13):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jul 02 2025 at 22:37):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jul 02 2025 at 22:39):

alexcrichton commented on PR #11123:

@dicej ok https://github.com/bytecodealliance/wasmtime/pull/11123/commits/cba8a799d9f6584286081fe7b553f3c93d7d1b22 is the culmination of my attempt to keep Params: 'static out of this the async impl. That's functionally inert in this PR and won't get activated until the next PR. With that I'm going to call typed.rs and func.rs done. I'm still concerned about the two different paths through the code but this seems about as good as we can get it for now so I think it's best to tackle that in the next PR, and/or as a follow-up in the future.

I ran out of time to get to the rest of host.rs today, but I'll work on benchmarking tomorrow and scanning through host.rs.

view this post on Zulip Wasmtime GitHub notifications bot (Jul 02 2025 at 23:06):

dicej submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Jul 02 2025 at 23:06):

dicej created PR review comment:

This part is definitely critical.

view this post on Zulip Wasmtime GitHub notifications bot (Jul 02 2025 at 23:06):

dicej created PR review comment:

            // which removes `prepared.task` from the store to ensure that the

view this post on Zulip Wasmtime GitHub notifications bot (Jul 02 2025 at 23:06):

dicej created PR review comment:

                // future of the outer function (we're in an `async fn`) so it'll

view this post on Zulip Wasmtime GitHub notifications bot (Jul 02 2025 at 23:34):

alexcrichton submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Jul 02 2025 at 23:34):

alexcrichton created PR review comment:

Yeah my thinking is that this'll be easier to write up in the next PR once concurrent.rs is filled out

view this post on Zulip Wasmtime GitHub notifications bot (Jul 02 2025 at 23:35):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jul 03 2025 at 19:23):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jul 03 2025 at 20:17):

alexcrichton commented on PR #11123:

Benchmarking update:

As-is this PR yields these numbers in the preexisting call.rs benchmarks:

<details>

![image](https://github.com/user-attachments/assets/50aed20d-3654-4787-85fb-b98cc69ead76)

</details>

not amazing, not awful.

I ran ./benches/wasmtime-serve-rps.sh and saw no measurable difference with before/after.

view this post on Zulip Wasmtime GitHub notifications bot (Jul 03 2025 at 20:17):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jul 03 2025 at 20:18):

alexcrichton updated PR #11123.

view this post on Zulip Wasmtime GitHub notifications bot (Jul 03 2025 at 20:19):

alexcrichton submitted PR review:

Ok @dicej I'm comfortable with everything here. Mind giving it another once-over on your end to confirm too? If you're ok with it all feel free to enqueue for merge.

view this post on Zulip Wasmtime GitHub notifications bot (Jul 03 2025 at 20:20):

alexcrichton commented on PR #11123:

I'll say I was originally planning to squash everything into one commit but we had some merge commits along the way which makes that slightly annoying so I'm content to let github merges figure out how to squash it instead.

view this post on Zulip Wasmtime GitHub notifications bot (Jul 03 2025 at 20:24):

alexcrichton commented on PR #11123:

(also, to reiterate, thank you again for being patient with my review on this!)

view this post on Zulip Wasmtime GitHub notifications bot (Jul 03 2025 at 22:04):

dicej commented on PR #11123:

Thanks for persisting with this, @alexcrichton! Your changes look good to me.

view this post on Zulip Wasmtime GitHub notifications bot (Jul 03 2025 at 22:25):

dicej merged PR #11123.


Last updated: Dec 06 2025 at 06:05 UTC