elliottt opened PR #6764 from bytecodealliance:trevor/stdio-stream-testing
to bytecodealliance:main
:
wip
<!--
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
-->
pchickey updated PR #6764.
elliottt updated PR #6764.
elliottt edited PR #6764:
Add a helper for writing tests of wasi-streams that rely on piped stdin, and re-implement the worker thread stdin implementation for windows.
<!--
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
-->
pchickey updated PR #6764.
elliottt updated PR #6764.
pchickey updated PR #6764.
pchickey updated PR #6764.
pchickey updated PR #6764.
pchickey updated PR #6764.
elliottt updated PR #6764.
elliottt updated PR #6764.
elliottt updated PR #6764.
elliottt updated PR #6764.
elliottt edited PR #6764:
Test the stdio implementations in the wasi crate, which yielded a few needed changes:
AsyncReadStream
andAsyncWriteStream
both now terminate the associated tokio::task when they are dropped.- The
stdin
implementation on unix and windows now properly handles spanning tokio runtime restarts, and process termination.After implementing these changes, the wasi implementation of
stdin
works on windows now and is better tested on unix.<!--
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
-->
elliottt edited PR #6764:
Test the stdio implementations in the wasi crate, by forking a child process and controlling its stdin directly. This testing exposed a few needed changes:
AsyncReadStream
andAsyncWriteStream
both now terminate the associated tokio::task when they are dropped.- The
stdin
implementation on unix and windows now properly handles spanning tokio runtime restarts, and process termination.After implementing these changes, the wasi implementation of
stdin
works on windows now and is better tested on unix.<!--
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
-->
elliottt has marked PR #6764 as ready for review.
elliottt requested fitzgen for a review on PR #6764.
elliottt requested wasmtime-core-reviewers for a review on PR #6764.
elliottt updated PR #6764.
elliottt requested pchickey for a review on PR #6764.
pchickey submitted PR review.
pchickey has enabled auto merge for PR #6764.
pchickey updated PR #6764.
elliottt updated PR #6764.
pchickey merged PR #6764.
Last updated: Dec 23 2024 at 12:05 UTC