Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Should blocking functions be enhanced or removed? #44

Closed
alexcrichton opened this issue Aug 30, 2023 · 2 comments
Closed

Should blocking functions be enhanced or removed? #44

alexcrichton opened this issue Aug 30, 2023 · 2 comments

Comments

@alexcrichton
Copy link
Contributor

I wanted to log a discussion I had with some folks recently (cc @lukewagner, @sunfishcode, @pchickey, @elliottt) where we were talking about the blocking-* family of functions present on the streams interface.

Attempting to summarize the discussion, my impression was that the functions were originally added for convenience for examples/tutorials/getting started/etc, but with the recent developments around writes and flush happening on bytecodealliance/wasmtime#6877 the story there was a bit more unclear and a blocking-write function is less obvious than before.

One option was to enhance/updated the blocking-* functions to do "what you might expect" e.g. bundling a check-write or things like that. The other option though was to go the other way and remove the convenience blocking-* functions for now and optionally add them back in later.

We figured that no changes should probably be done in the preview2 time frame but we would want to consider changes for a later time frame.

@pchickey
Copy link

I believe we should leave whatever blocking- family functions in that are convenient for users for preview2. For preview3, we expect all of this to go away and be replaced by component model primitives. So, there isn't much we should plan to change here.

@sunfishcode
Copy link
Member

This has been addressed by #45 and #53. We now have a set of blocking functions which provide a simple API for blocking use cases, including a check-write mechanism.

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

No branches or pull requests

3 participants