-
Notifications
You must be signed in to change notification settings - Fork 320
Open
Labels
Azure.CoreThe azure_core crateThe azure_core crateClientThis issue points to a problem in the data-plane of the library.This issue points to a problem in the data-plane of the library.blocking-releaseBlocks releaseBlocks release
Milestone
Description
This is a bit of an experiment but will impact the public API.
Currently, we have a lot of conditional Send bounds all over our code because the wasm32-unknown-unknown target does not implement Send for Future as required by tokio. We want to maintain WASM/WASI support because Rust is a popular language for WASM.
@yoshuawuyts put me onto https://github.com/bytecodealliance/wstd which provides a (mostly) tokio-compatible executor that supported WASM.
What we should do is:
- Add an example async runtime using our APIs for
wstdas @cataggar has done here. Not only will that help test the next steps, but helps them watch for breaking changes. - Remove all the
#[cfg(target_arch = "wasm32")]and similar conditions. - Add some
#[wstd::test]tests (probably in the aforementioned example) to actually test that it works, which we can't do (not without a lot of additional work not funded currently) withwasm32-unknown-unknown. - Remove the WASM support from our
async_runtimemodule.
Metadata
Metadata
Assignees
Labels
Azure.CoreThe azure_core crateThe azure_core crateClientThis issue points to a problem in the data-plane of the library.This issue points to a problem in the data-plane of the library.blocking-releaseBlocks releaseBlocks release
Type
Projects
Status
Not Started