I am 'ok' with a shorter extension. I asked for 6 months because I foresee 
a reasonable risk of needing more than 3 milestones.

I am not 'ok' with shipping without the imprimatur of progress in the 
standardization. We recently did ship a phase 3 standard -- exceptions -- 
that turned out to be a mistake. It is likely going to be many years before 
that can be fully unwound.

 To be clear: I do not anticipate any issues with the standard; but then, 
no-one does.

Francis
On Monday, June 24, 2024 at 12:47:23 PM UTC-7 rby...@chromium.org wrote:

> Hi Francis,
> We only do OT extensions for 3 milestones at a time 
> <https://www.chromium.org/blink/launching-features/#origin-trials:~:text=An%20initial%20origin%20trial%20or%20experiment%20for%20a%20feature%20may%20only%20run%20for%206%20milestones%20of%20Chromium.%20Each%20request%20to%20extend%20beyond%20that%20limit%20may%20only%20be%20for%203%20milestones%20at%20a%20time%2C%20and%20will%20not%20be%20approved%20unless%20substantial%20progress%20is%20demonstrated%20in%20all%20of%20these%20areas%3A>.
>  
> It sounds like there's been a meaningful change in the API that we need to 
> validate, so extending for another 3 to 131 sounds OK to me if you'd like 
> to do that, but that gets you only to October.
>
> Outside of JS / WASM features, we generally do not block on standards 
> maturity when shipping new APIs, since the chromium project has a policy of 
> limiting the cost on velocity that we're willing to pay in order to reach 
> standards consensus. What do you think the harm would be in shipping this 
> now and coming up with a versioning and/or breaking change strategy for any 
> changes which are deemed necessary after that? It sounds like you already 
> have customers relying on this feature (given the commitments you mention 
> around evolution of the API while in OT), so it's unclear whether shipping 
> and iterating would really be all that different in practice?
>
> Thanks,
>    Rick
>
> On Mon, Jun 24, 2024 at 1:31 PM Francis McCabe <f...@chromium.org> wrote:
>
>> Contact emailsf...@chromium.org
>>
>> Explainer
>> https://github.com/WebAssembly/js-promise-integration/blob/main/proposals/js-promise-integration/Overview.md
>>
>> Specification
>> https://github.com/WebAssembly/js-promise-integration/blob/main/proposals/js-promise-integration/Overview.md
>>
>> Design docs
>>
>> https://docs.google.com/document/d/16Us-pyte2-9DECJDfGm5tnUpfngJJOc8jbj54HMqE9Y/edit#heading=h.n1atlriavj6v
>>
>> Summary
>>
>> Stack Switching denotes a technology that allows programs to suspend and 
>> resume computation. This is an active area that is part of the WebAssembly 
>> standards track. See https://github.com/WebAssembly/stack-switching and 
>> https://github.com/WebAssembly/meetings/tree/main/stack. This particular 
>> feature refers to the integration between JavaScript Promises and stack 
>> switching. This is described in more detail in 
>> https://docs.google.com/document/d/16Us-pyte2-9DECJDfGm5tnUpfngJJOc8jbj54HMqE9Y/edit#
>>
>>
>> Blink componentBlink>JavaScript>WebAssembly 
>> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EJavaScript%3EWebAssembly>
>>
>> Search tagsstack switching 
>> <https://chromestatus.com/features#tags:stack%20switching>, Promise 
>> <https://chromestatus.com/features#tags:Promise>, JSPI 
>> <https://chromestatus.com/features#tags:JSPI>
>>
>> TAG reviewhttps://github.com/w3ctag/design-reviews/issues/809
>>
>> TAG review statusPending
>>
>> Chromium Trial NameWebAssemblyJSPromiseIntegration
>>
>> Origin Trial documentation link
>> https://github.com/WebAssembly/js-promise-integration
>>
>> WebFeature UseCounter namekV8WasmJavaScriptPromiseIntegration
>>
>> Risks
>>
>>
>> Interoperability and Compatibility
>>
>> This spec is backed by a standardization effort. We do not plan to ship 
>> the JSPI until it has been standardized by the W3C Wasm WG. However, post 
>> standardization, we will depend on all browsers implementing the standard.
>>
>>
>> *Gecko*: Positive (https://bugzilla.mozilla.org/show_bug.cgi?id=1850627) 
>> Mozilla have started their own imlementation
>>
>> *WebKit*: No signal
>>
>> *Web developers*: No signals
>>
>> *Other signals*:
>>
>> Activation
>>
>> Making use of JSPI requires some changes by WebAssembly-based developers 
>> (no impact on JavaScript developers). Depending on their toolchain usage a 
>> developer will need to modify their code. For Emscripten users, this is 
>> likely to be minimal as support for JSPI exists in Emscripten.
>>
>>
>> Security
>>
>> 1. Control flow integrity. 2. Ensuring that JavaScript programs cannot 
>> suspend via JSPI.
>>
>>
>> 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?
>>
>>
>>
>> Goals for experimentation
>>
>>
>>
>> Reason this experiment is being extended
>>
>> JSPI is part of a standards track effort. We are currently in 'stage 3' 
>> of a five stage process. The next stage (4) is when a specification is 
>> deemed final. There was a change in the API which we soft launched in M126 
>> but we would like to formally switch to this new API in M129. (We had 
>> informed our users that we would be maintaining the old API through the end 
>> of the OT.) So, in summary there are two reasons for extending the origin 
>> trial: 1. We are not quite ready to move the spec to phase 4. This is for 
>> non-implementation reasons: we need to draft and review the specification 
>> text. 2. We would like to allow sufficient time for users to fully 
>> experiment with the new API. We anticipate being able to fully ship JSPI 
>> before the end of 2024, but also dont want to have to ask for yet another 
>> extension.
>>
>>
>> Ongoing technical constraints
>>
>> None.
>>
>>
>> Debuggability
>>
>> Developers can piggyback on existing DevTools support for Promises to 
>> help with debugging JSPI applications. In particular the existing 
>> mechanisms for constructing extended stack traces from so-called Promise 
>> chains will also include stack traces from JSPI applications.
>>
>>
>> Will this feature be supported on all six Blink platforms (Windows, Mac, 
>> Linux, ChromeOS, 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>
>> ?Partially
>>
>> Flag name on chrome://flags
>> enable-experimental-webassembly-stack-switching
>>
>> Finch feature nameNone
>>
>> Non-finch justificationNone
>>
>> Requires code in //chrome?False
>>
>> Tracking bug
>> https://bugs.chromium.org/p/v8/issues/detail?id=12191&q=owner%3Ame&can=2
>>
>> Estimated milestones
>> Origin trial desktop first 123
>> Origin trial desktop last 128
>> Origin trial extension 1 end milestone 134
>> DevTrial on desktop 109
>> OriginTrial Android last 128
>> OriginTrial Android first 123
>> OriginTrial webView last 128
>> OriginTrial webView first 123
>>
>> Link to entry on the Chrome Platform Status
>> https://chromestatus.com/feature/5674874568704000?gate=5078038869180416
>>
>> Links to previous Intent discussionsIntent to prototype: 
>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAAdKk6BGFseZ6pBO2qEW_xeovVw1_guVq26rcNM1nWY442Y5Ng%40mail.gmail.com
>>  Intent 
>> to Experiment: 
>> https://groups.google.com/a/chromium.org/g/blink-dev/c/Fu79zrp7MoE
>>
>>
>> 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+...@chromium.org.
>> To view this discussion on the web visit 
>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAE65UWBDn_Vvj5uqqOVMABJWopy_ZfOz4P5ZZYiqCxa7HACxCA%40mail.gmail.com
>>  
>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAE65UWBDn_Vvj5uqqOVMABJWopy_ZfOz4P5ZZYiqCxa7HACxCA%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/46b78c6b-ae44-49ab-919c-3bd2194314f1n%40chromium.org.

Reply via email to