jianj...@intel.com, ri...@chromium.org, nidh...@chromium.org
https://github.com/w3c/webtransport/blob/main/explainer.md
https://github.com/w3c/webtransport/issues/35
https://www.w3.org/TR/webtransport
https://streams.spec.whatwg.org/#readablestreambyobreader
Support BYOB(bring-your-own-buffer) readers for WebTransport to allow reading into a developer-supplied buffer. BYOB readers can minimize buffer copies, as well as reduce memory allocations.
This feature aligns blink implementation with the WebTransport spec (https://www.w3.org/TR/webtransport/#webtransportreceivestream-create). The underlying source of blink::IncomingStream and blink::DatagramDuplexStream are changed to UnderlyingByteSource to support this feature.
https://github.com/w3ctag/design-reviews/issues/669
Not applicable
Gecko: Worth prototyping (https://github.com/mozilla/standards-positions/issues/167)
WebKit: No signal
Web developers: No signals
Other signals:
Developers can acquire a BYOB reader by calling getReader({ mode: "byob" }) of a WebTransportDatagramDuplexStream.readable, or a WebTransportBidirectionalStream.readable, or a WebTransportReceiveStream.
This feature doesn’t change the behaviors of exiting APIs. Calling getReader() without options returns a default reader.
This feature can be debugged with existing DevTools JavaScript debugger.
Yes
Yes
False
https://bugs.chromium.org/p/chromium/issues/detail?id=1259886
https://github.com/w3c/webtransport/pull/415
108
No
https://chromestatus.com/feature/5948016536584192
This intent message was generated by Chrome Platform Status.
Are these the correct links? It seems to be about webtransport in
general, and I'm not sure how to interpret issue 35 (likely I'm
just missing a lot of context). Is there something close to an
explainer for BYOB readers?
Specification
https://www.w3.org/TR/webtransport
https://streams.spec.whatwg.org/#readablestreambyobreader
Summary
Support BYOB(bring-your-own-buffer) readers for WebTransport to allow reading into a developer-supplied buffer. BYOB readers can minimize buffer copies, as well as reduce memory allocations.
This feature aligns blink implementation with the WebTransport spec (https://www.w3.org/TR/webtransport/#webtransportreceivestream-create). The underlying source of blink::IncomingStream and blink::DatagramDuplexStream are changed to UnderlyingByteSource to support this feature.
Blink component
TAG review
https://github.com/w3ctag/design-reviews/issues/669
TAG review status
Not applicable
Risks
Interoperability and Compatibility
Gecko: Worth prototyping (https://github.com/mozilla/standards-positions/issues/167) WebKit: No signal Web developers: No signals
Other signals:
Activation
Developers can acquire a BYOB reader by calling getReader({ mode: "byob" }) of a WebTransportDatagramDuplexStream.readable, or a WebTransportBidirectionalStream.readable, or a WebTransportReceiveStream.
WebView application risks
This feature doesn’t change the behaviors of exiting APIs. Calling getReader() without options returns a default reader.
Debuggability
This feature can be debugged with existing DevTools JavaScript debugger.
Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?
Yes
Is this feature fully tested by web-platform-tests?
Yes
Flag name
Requires code in //chrome?
False
Tracking bug
https://bugs.chromium.org/p/chromium/issues/detail?id=1259886
Sample links
https://github.com/w3c/webtransport/pull/415Estimated milestones
108
Anticipated spec changes
No
Link to entry on the Chrome Platform Status
https://chromestatus.com/feature/5948016536584192
This intent message was generated by Chrome Platform Status.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/PH0PR11MB488707A531780543D97765FBFB5F9%40PH0PR11MB4887.namprd11.prod.outlook.com.