Thanks! LGTM1
On Tue, Sep 3, 2024 at 11:41 AM Adam Klein <ad...@chromium.org> wrote: > On Tue, Sep 3, 2024 at 11:31 AM Chris Harrelson <chris...@google.com> > wrote: > >> >> >> On Tue, Sep 3, 2024 at 10:37 AM Adam Klein <ad...@chromium.org> wrote: >> >>> Contact emailsecmzieg...@chromium.org, jkumme...@chromium.org, >>> ad...@chromium.org >>> >>> Explainer >>> https://github.com/WebAssembly/js-string-builtins/blob/main/proposals/js-string-builtins/Overview.md >>> >>> Specificationhttps://webassembly.github.io/js-string-builtins/js-api/ >>> >>> Summary >>> >>> This feature exposes common JS string operations for easy import into >>> WebAssembly and optimizations thereof. This allows creating and >>> manipulating JS strings from WebAssembly without native support within >>> WebAssembly while still allowing for a similar performance as native string >>> references. The mechanism works by exposing suitably strict versions of JS >>> string operations in the WebAssembly JS API. These can be imported by >>> modules using externref as a generic data type for storing the strings. The >>> engine can identify that these imports can be represented by native graph >>> operators without the need for calling into JS. This leads to a comparable >>> peak performance as native string operations while allowing quick >>> interoperability with JS since no copying at the boundary is required when >>> calling into arbitrary JS functions that consume strings. >>> >>> >>> Blink componentBlink>JavaScript>WebAssembly >>> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EJavaScript%3EWebAssembly> >>> >>> TAG reviewhttps://github.com/w3ctag/design-reviews/issues/940 >>> >>> TAG review statusCompleted (with "Resolution: satisfied") >>> >>> Chromium Trial NameWebAssemblyJSStringBuiltins >>> >>> Link to origin trial feedback summary >>> https://docs.google.com/document/d/1zL9goDsawTQUFuuQ8ddI_pUcLY1_iFOsHaDZ374dnGw/edit?usp=sharing >>> >>> Origin Trial documentation link >>> https://github.com/WebAssembly/js-string-builtins/blob/main/proposals/js-string-builtins/Overview.md >>> >>> Risks >>> >>> >>> Interoperability and Compatibility >>> >>> This proposal is at Phase 4 in the WebAssembly spec process >>> >>> >>> *Gecko*: Positive >>> >> >> Is there a standards position issue tracking this? >> > > I don't believe so. The proposal is championed by Ryan Hunt of Mozilla, > who works on WebAssembly in SpiderMonkey. In order to reach Phase 4, the > proposal needed two web engine implementations, and Firefox nightly has > support for it, alongside Chrome. > > >> >> >>> >>> *WebKit*: No signal ( >>> https://github.com/WebKit/standards-positions/issues/343) >>> >>> *Web developers*: Positive (see OT feedback) >>> >>> *Other signals*: >>> >>> 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? >>> >>> None >>> >>> >>> Debuggability >>> >>> None >>> >>> >>> 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> >>> ?Yes >>> >>> Flag name on chrome://flagsNone >>> >>> Finch feature nameWebAssemblyJSStringBuiltins >>> >>> Requires code in //chrome?False >>> >>> Estimated milestones >>> Shipping on desktop 130 >>> Origin trial desktop first 119 >>> Origin trial desktop last 127 >>> Origin trial extension 1 end milestone 130 >>> Shipping on Android 130 >>> Shipping on WebView 130 >>> >>> 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/6695587390423040?gate=6542541230440448 >>> >>> Links to previous Intent discussionsIntent to Experiment: >>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAPAU7RyzxKa0Pj6q7B_jyfT%3DH%2BSK264%3Dx8wn1ans%3D8UjHRhctQ%40mail.gmail.com >>> Intent to Extend Experiment 1: >>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAM0wra_16woqtqCWOW7Gr4uy2iX3hvj3iSYXQWZaVOc9q9e1Nw%40mail.gmail.com >>> >>> >>> 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/CAEvLGc%2BP1ZN9pOGTR_83vqT7JbQVyyoZ-At5qK0sv_f0FVxnJg%40mail.gmail.com >>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAEvLGc%2BP1ZN9pOGTR_83vqT7JbQVyyoZ-At5qK0sv_f0FVxnJg%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%2Bw91qoq4cs_HaMb15H1wSf5Zssn02nCNrYpkcZ1-pM%3Dtmw%40mail.gmail.com.