Skip to content

Make modern http streaming apis easily consumable in WebAssembly #112442

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

Closed
lewing opened this issue Feb 11, 2025 · 3 comments · Fixed by #115113
Closed

Make modern http streaming apis easily consumable in WebAssembly #112442

lewing opened this issue Feb 11, 2025 · 3 comments · Fixed by #115113
Assignees
Labels
arch-wasm WebAssembly architecture area-System.Net.Http os-browser Browser variant of arch-wasm Priority:1 Work that is critical for the release, but we could probably ship without
Milestone

Comments

@lewing
Copy link
Member

lewing commented Feb 11, 2025

The discussion in the pull request #111680 revolves around enabling response streaming for WebAssembly, which introduces a breaking change by disallowing synchronous reads and throwing NotSupportedExceptions instead. The main points discussed include:

All supported browsers support response streaming.
To disable response streaming and allow synchronous reads, a new runtime feature flag WebAssemblyEnableStreamingResponse can be set to false.
Here are the options for handling this change:

  • Take the breaking change: Accept the breaking change and update the documentation to reflect that synchronous reads are no longer supported.
  • Add a runtime feature flag: Implement the WebAssemblyEnableStreamingResponse feature flag, allowing users to opt-out of response streaming if necessary.
  • Set the feature flag directly on requests that require it: Modify the code to set the WebAssemblyEnableStreamingResponse feature flag directly on specific requests that need synchronous reads.

You can view the full discussion and details of the pull request here.

@ghost ghost added the area-System.Net.Http label Feb 11, 2025
@dotnet-policy-service dotnet-policy-service bot added the untriaged New issue has not been triaged by the area owner label Feb 11, 2025
@lewing lewing added arch-wasm WebAssembly architecture area-Extensions-HttpClientFactory and removed area-System.Net.Http untriaged New issue has not been triaged by the area owner labels Feb 11, 2025
Copy link
Contributor

Tagging subscribers to 'arch-wasm': @lewing
See info in area-owners.md if you want to be subscribed.

Copy link
Contributor

Tagging subscribers to this area: @dotnet/ncl
See info in area-owners.md if you want to be subscribed.

@lewing lewing added the os-browser Browser variant of arch-wasm label Feb 11, 2025
@lewing lewing added this to the 10.0.0 milestone Feb 11, 2025
@lewing lewing changed the title Make modern http streaming api easily consumable in WebAssembly Make modern http streaming apis easily consumable in WebAssembly Feb 11, 2025
@pavelsavara pavelsavara added the Priority:1 Work that is critical for the release, but we could probably ship without label Feb 19, 2025
@pavelsavara
Copy link
Member

This depends on #97449

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
arch-wasm WebAssembly architecture area-System.Net.Http os-browser Browser variant of arch-wasm Priority:1 Work that is critical for the release, but we could probably ship without
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants