Contact emailsdome...@chromium.org ExplainerNone (below "Summary" and "Motivation" should be enough).
Specificationhttps://streams.spec.whatwg.org/#ts-default-controller-class Summary This exposes the TransformStreamDefaultController class on the global scope. This class already exists and can be accessed using code such as let TransformStreamDefaultController; new TransformStream({ start(c) { TransformStreamDefaultController = c.constructor; } }); This change makes such code unnecessary as now TransformStreamDefaultController just exists on the global scope. *Motivation* Possible uses for the exposed class include monkeypatching properties onto TransformStreamDefaultController.prototype, or feature-testing existing properties of it more easily. (Note that the class is not constructible, i.e. new TransformStreamDefaultController() always throws, so that is not a potential use.) However, these uses are fairly esoteric. In practice this is mostly a spec-conformance fix motivated by consistency. Blink componentBlink>Network>StreamsAPI <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3ENetwork%3EStreamsAPI> TAG review statusNot applicable Risks Interoperability and Compatibility No interop risk. This is already implemented in all other browsers. Compat risk is minimal. It would be hard for any existing code to take a dependency on this class not being exposed. Other related classes (e.g. TransformStream itself) are already exposed. And we expose lots of classes all the time without issue whenever shipping new features. *Gecko*: Shipped/Shipping ( https://wpt.fyi/results/streams/idlharness.any.html?label=experimental&label=master&aligned ) *WebKit*: Shipped/Shipping ( https://wpt.fyi/results/streams/idlharness.any.html?label=experimental&label=master&aligned ) *Web developers*: No signals Activation This feature can be polyfilled with the single line of code: new TransformStream({ start(c) { self.TransformStreamDefaultController = c.constructor; } }); WebView application risks *Does this intent deprecate or change behavior of existing APIs, such that it has potentially high risk for Android WebView-based applications?* No Debuggability No special DevTools support needed. 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 <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md> ?Yes <https://wpt.fyi/results/streams/idlharness.any.html?label=experimental&label=master&aligned> Requires code in //chrome? False Tracking bughttps://bugs.chromium.org/p/chromium/issues/detail?id=1093862 Estimated milestones M105 Anticipated spec changes Open questions about a feature may be a source of future web compat or interop issues. Please list open issues (e.g. links to known github issues in the project for the feature specification) whose resolution may introduce web compat/interop risk (e.g., changing to naming or structure of the API in a non-backward-compatible way). None. Link to entry on the Chrome Platform Status https://chromestatus.com/feature/5130793182035968 This intent message was generated by Chrome Platform Status <https://chromestatus.com/>. -- 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+unsubscr...@chromium.org. To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAM0wra9GC6CsrapMO8CHdk7YQZnsJpv4MxV98u%2BKuM_N8z-8yw%40mail.gmail.com.