LGTM1 On Wed, Nov 24, 2021, 10:50 Nidhi Jaju <nidhij...@chromium.org> wrote:
> On Wed, Nov 24, 2021 at 1:43 PM Yoav Weiss <yoavwe...@chromium.org> wrote: > >> Thanks for addressing the TAG's feedback! >> >> >> On Wednesday, November 24, 2021 at 8:57:12 AM UTC+1 Nidhi Jaju wrote: >> >>> Hi all, >>> >>> Another update: based on the feedback we received from TAG as previously >>> mentioned, we decided to remove the abortReason from >>> WritableStreamDefaultController which was initially proposed, and instead >>> add an "abort reason" property >>> <https://dom.spec.whatwg.org/#abortsignal-abort-reason> to AbortSignal >>> which was specced in https://github.com/whatwg/dom/pull/1027. Related >>> to this on the interface side, the static AbortSignal.abort() >>> <https://dom.spec.whatwg.org/#dom-abortsignal-abort> as well as the >>> AbortController.abort() >>> <https://dom.spec.whatwg.org/#dom-abortcontroller-abort> now take an >>> optional reason argument. Gecko and WebKit folks and some developers have >>> also expressed implementer's interest on the PR, and some have gone on to >>> update their browser implementation/polyfills already. >>> >> >> Any specifics? Does this mean other browsers are now also shipping >> AbortSignal for WritableStreams? Or did they just update their current >> AbortSignal implementation with an "abort reason"? >> > > Ah, sorry for the unclearness. I mean they (i.e. WebKit > <https://github.com/WebKit/WebKit/commit/d354a8d80fbd702d13ea293d1462b19e2652ef66>, > Deno > <https://github.com/denoland/deno/commit/ccd730a8b77c188657ec15b5d096f62a24bd0be6>, > and almost Node.js <https://github.com/nodejs/node/pull/40807>) have > updated their current AbortSignal implementation with an "abort reason". As > far as I'm aware, the signals related to shipping AbortSignal for > WritableStreams itself remain unchanged from earlier on in this thread. > Makes sense, thanks for clarifying! > >> >> >>> >>> This was also integrated into the Streams standard in >>> https://github.com/whatwg/streams/pull/1182. (FYI: the AbortSignal API >>> is connected to various different standards, so there is also an ongoing >>> effort to update those affected specs as well here >>> <https://github.com/whatwg/dom/issues/1030>.) >>> >>> I would like to resume the intent process based on these updates. Please >>> let me know if you have any questions or thoughts. >>> >>> Thank you! >>> >>> Best regards, >>> Nidhi >>> >>> On Thu, Oct 7, 2021 at 1:11 PM Yoav Weiss <yoavwe...@chromium.org> >>> wrote: >>> >>>> After talking to Nidhi offline, we can consider this intent on hold >>>> until the feedback is addressed. >>>> >>>> On Thursday, September 16, 2021 at 4:01:29 AM UTC+2 Nidhi Jaju wrote: >>>> >>>>> Hi, >>>>> >>>>> Just as an update, we have received some feedback on our TAG review ( >>>>> https://github.com/w3ctag/design-reviews/issues/672#issuecomment-919578419), >>>>> and hence we are having some discussions and deciding on next best steps >>>>> accordingly. >>>>> >>>>> Best regards, >>>>> Nidhi >>>>> >>>>> On Fri, Sep 3, 2021 at 10:44 AM Nidhi Jaju <nidhij...@chromium.org> >>>>> wrote: >>>>> >>>>>> >>>>>> >>>>>> On Fri, Sep 3, 2021 at 4:35 AM Reilly Grant <reil...@chromium.org> >>>>>> wrote: >>>>>> >>>>>>> The Web Serial API is also interested in this capability. See the >>>>>>> note on the abort algorithm when initializing the WritableStream >>>>>>> <https://wicg.github.io/serial/#writable-attribute>. >>>>>>> Reilly Grant | Software Engineer | reil...@chromium.org | Google >>>>>>> Chrome <https://www.google.com/chrome> >>>>>>> >>>>>>> >>>>>>> On Thu, Sep 2, 2021 at 12:32 PM Chris Harrelson < >>>>>>> chris...@chromium.org> wrote: >>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> On Wed, Sep 1, 2021 at 8:22 PM Nidhi Jaju <nidhij...@chromium.org> >>>>>>>> wrote: >>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> On Wed, Sep 1, 2021 at 10:54 PM Alex Russell < >>>>>>>>> slightly...@chromium.org> wrote: >>>>>>>>> >>>>>>>>>> Incremental features often benefit from TAG guidance. I'd feel >>>>>>>>>> better if this intent at least cited prior TAG reviews in this area >>>>>>>>>> or >>>>>>>>>> filed an FYI (with potential for TAG to request full review). >>>>>>>>>> >>>>>>>>>> If it was covered in a previous review of WritableStreams, that >>>>>>>>>> would also be good to know. >>>>>>>>>> >>>>>>>>> >>>>>>>>> This feature wasn't covered in a previous review of >>>>>>>>> WritableStreams, so I have filed a new TAG review: >>>>>>>>> https://github.com/w3ctag/design-reviews/issues/672 >>>>>>>>> >>>>>>>>> >>>>>>>>>> >>>>>>>>>> On Wed, Sep 1, 2021, 2:28 PM Yoav Weiss <yoavwe...@chromium.org> >>>>>>>>>> wrote: >>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> On Tue, Aug 31, 2021 at 5:14 PM Nidhi Jaju < >>>>>>>>>>> nidhij...@chromium.org> wrote: >>>>>>>>>>> >>>>>>>>>>>> Contact emailsnidhij...@chromium.org, ri...@chromium.org, >>>>>>>>>>>> yhir...@chromium.org >>>>>>>>>>>> >>>>>>>>>>>> Explainer >>>>>>>>>>>> https://github.com/whatwg/streams/blob/main/writable-stream-abort-signal-explainer.md >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> Specification >>>>>>>>>>>> https://streams.spec.whatwg.org/#writablestreamdefaultcontroller-signal >>>>>>>>>>>> >>>>>>>>>>>> Summary >>>>>>>>>>>> >>>>>>>>>>>> The streams APIs provide ubiquitous, interoperable primitives >>>>>>>>>>>> for creating, composing, and consuming streams of data. This >>>>>>>>>>>> change permits >>>>>>>>>>>> an underlying sink to rapidly abort an ongoing write or close when >>>>>>>>>>>> requested by the writer. >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> Previously, when writer.abort() was called, a long-running >>>>>>>>>>>> write would still have to continue to completion before the stream >>>>>>>>>>>> could be >>>>>>>>>>>> aborted. With this change, the write can be aborted immediately. >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> Am I correct in assuming that the stream developer would have to >>>>>>>>>>> change their code in order for that to happen, and if they won't, >>>>>>>>>>> the >>>>>>>>>>> current behavior won't change? >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> Yes, that's correct. >>>>>>>>> >>>>>>>>> >>>>>>>>>>> >>>>>>>>>>>> In addition to being exposed to streams authored in JavaScript, >>>>>>>>>>>> this facility will also be used by platform-provided streams such >>>>>>>>>>>> as >>>>>>>>>>>> WebTransport. >>>>>>>>>>>> >>>>>>>>>>>> Blink componentBlink>Network>StreamsAPI >>>>>>>>>>>> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3ENetwork%3EStreamsAPI> >>>>>>>>>>>> >>>>>>>>>>>> TAG reviewNot needed as this is an incremental improvement to >>>>>>>>>>>> an existing feature. >>>>>>>>>>>> >>>>>>>>>>>> TAG review statusNot applicable >>>>>>>>>>>> >>>>>>>>>>>> Risks >>>>>>>>>>>> Interoperability and Compatibility >>>>>>>>>>>> >>>>>>>>>>>> Low risk because streams has already been standardised for a >>>>>>>>>>>> long time (since around 2014). Other browsers have implemented >>>>>>>>>>>> other parts >>>>>>>>>>>> of the standard, and they will most likely also adapt this feature >>>>>>>>>>>> as well >>>>>>>>>>>> soon. >>>>>>>>>>>> >>>>>>>>>>>> Gecko: Positive ( >>>>>>>>>>>> https://github.com/whatwg/streams/pull/1132#issuecomment-867114529 >>>>>>>>>>>> <https://chromestatus.com/admin/features/launch/5698931422920704/5?intent=1>) >>>>>>>>>>>> Mozilla is supportive of Streams but has not yet shipped >>>>>>>>>>>> WritableStream. It >>>>>>>>>>>> is expected that they will include this feature when they do. They >>>>>>>>>>>> have >>>>>>>>>>>> also expressed interest in implementing WebTransport, and >>>>>>>>>>>> therefore are >>>>>>>>>>>> supportive of this feature. >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> While such comments don't typically count as a position, >>>>>>>>>>> combining them with >>>>>>>>>>> https://github.com/mozilla/standards-positions/issues/167 seems >>>>>>>>>>> reasonable, given the size of this change. >>>>>>>>>>> >>>>>>>>>> >>>>>>>> That said, could you comment on issue 167 giving at least an FYI >>>>>>>> that this intent is happening? >>>>>>>> >>>>>>> >>>>>> Yes, I just left a comment on the issue. ( >>>>>> https://github.com/mozilla/standards-positions/issues/167#issuecomment-912184900 >>>>>> ) >>>>>> >>>>>> >>>>>>> >>>>>>>> >>>>>>>>> >>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> WebKit: No signal >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> Have you reached out? https://bit.ly/blink-signals >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> I have requested for WebKit's position here: >>>>>>>>> https://lists.webkit.org/pipermail/webkit-dev/2021-September/031977.html >>>>>>>>> >>>>>>>>> >>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> Web developers: No signals >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> Have you reached out? https://goo.gle/developer-signals >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> Mattias Buelens has shown positive support here: >>>>>>>>> https://github.com/whatwg/streams/issues/1015#issuecomment-531188273 >>>>>>>>> <https://github.com/whatwg/streams/issues/1015#issuecomment-531188273> >>>>>>>>> >>>>>>>>> >>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> Ergonomics >>>>>>>>>>>> >>>>>>>>>>>> A lot of design efforts have been made into making the streams >>>>>>>>>>>> API easy to use. Additionally, this feature is only a small change >>>>>>>>>>>> to the >>>>>>>>>>>> existing streams API that developers are used to. An underlying >>>>>>>>>>>> sink which >>>>>>>>>>>> doesn't observe the controller.signal will continue to have the >>>>>>>>>>>> existing >>>>>>>>>>>> behavior. >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> Debuggability >>>>>>>>>>>> >>>>>>>>>>>> No special support needed. >>>>>>>>>>>> >>>>>>>>>>>> Is this feature fully tested by web-platform-tests >>>>>>>>>>>> <https://chromium.googlesource.com/chromium/src/+/master/docs/testing/web_platform_tests.md> >>>>>>>>>>>> ?Yes >>>>>>>>>>>> >>>>>>>>>>>> Flag name >>>>>>>>>>>> Requires code in //chrome?False >>>>>>>>>>>> >>>>>>>>>>>> Tracking bug >>>>>>>>>>>> https://bugs.chromium.org/p/chromium/issues/detail?id=1215992 >>>>>>>>>>>> >>>>>>>>>>>> Patch >>>>>>>>>>>> >>>>>>>>>>>> https://chromium-review.googlesource.com/c/chromium/src/+/3127824 >>>>>>>>>>>> >>>>>>>>>>>> Estimated milestonesM95 >>>>>>>>>>>> >>>>>>>>>>>> Link to entry on the Chrome Platform Status >>>>>>>>>>>> https://chromestatus.com/feature/5698931422920704 >>>>>>>>>>>> >>>>>>>>>>>> This intent message was generated by Chrome Platform Status >>>>>>>>>>>> <https://www.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/CAMZNYAP-Of819oOp4yq8vRdzx78UUCPj9YKJqx4ZwLj_YsN%3D-Q%40mail.gmail.com >>>>>>>>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAMZNYAP-Of819oOp4yq8vRdzx78UUCPj9YKJqx4ZwLj_YsN%3D-Q%40mail.gmail.com?utm_medium=email&utm_source=footer> >>>>>>>>>>>> . >>>>>>>>>>>> >>>>>>>>>>> -- >>>>>>>>>>> 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/CAL5BFfXWMCdEAA51FQ6tJyG8CfuU_oOb-x0-mmBp5qFkDpFP8A%40mail.gmail.com >>>>>>>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAL5BFfXWMCdEAA51FQ6tJyG8CfuU_oOb-x0-mmBp5qFkDpFP8A%40mail.gmail.com?utm_medium=email&utm_source=footer> >>>>>>>>>>> . >>>>>>>>>> >>>>>>>>>> >>>>>>>>> Hopefully, this addresses your questions/concerns. Thank you! >>>>>>>>> >>>>>>>>> Best regards, >>>>>>>>> Nidhi >>>>>>>>> >>>>>>>>> -- >>>>>>>>> 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/CAMZNYANY35OcJeP6h1cOEF6FOU%3D_rAVnq2Rk%2BXeQ3OU0AT0wnQ%40mail.gmail.com >>>>>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAMZNYANY35OcJeP6h1cOEF6FOU%3D_rAVnq2Rk%2BXeQ3OU0AT0wnQ%40mail.gmail.com?utm_medium=email&utm_source=footer> >>>>>>>>> . >>>>>>>>> >>>>>>>> -- >>>>>>>> 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/CAOMQ%2Bw8BuVi_JeX8PxcOWX3Y_AXi2TasLmY495YQDFnq6wLCQA%40mail.gmail.com >>>>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw8BuVi_JeX8PxcOWX3Y_AXi2TasLmY495YQDFnq6wLCQA%40mail.gmail.com?utm_medium=email&utm_source=footer> >>>>>>>> . >>>>>>> >>>>>>> -- 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/CAL5BFfXmA_V5Cf8s3qqkur9k2BmqBNEZqZb4NPPA1LgTrz%3Dhbw%40mail.gmail.com.