Contact emails
v...@chromium.org, cl...@chromium.org

Explainer
None


Specification
https://tc39.github.io/ecma262/#sec-sharedarraybuffer-objects


Design docs

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/SharedArrayBuffer


Summary

Adds the JavaScript type SharedArrayBuffer gated behind COOP/COEP. The concept 
of a SharedArrayBuffer is that a message to a worker, is posted but instead of 
copying the content of the array just a reference to it is shared. The Atomic 
API provides atomic loads and stores and Read/Modify/Write accesses to 
SharedArrayBuffers. The Atomic.wait provides the ability for a worker to wait 
for another worker to signal it, without having to spinlock.



Blink component
Blink>JavaScript


Search tags
SharedArrayBuffer, SAB


TAG review
https://github.com/w3ctag/design-reviews/issues/471


TAG review status
Pending


Origin Trial Name
SharedArrayBuffers in non-isolated pages on Desktop platforms


Chromium Trial Name
UnrestrictedSharedArrayBuffer


Link to origin trial feedback summary
https://bugs.chromium.org/p/chromium/issues/entry?components=Internals%3ESandbox%3ESiteIsolation


Origin Trial documentation link
https://developer.chrome.com/blog/enabling-shared-array-buffer/


Risks




Interoperability and Compatibility




Gecko: Shipped/Shipping (https://bugzilla.mozilla.org/show_bug.cgi?id=1312446)

WebKit: Shipped/Shipping 
(https://developer.apple.com/library/content/releasenotes/General/WhatsNewInSafari/Articles/Safari_10_1.html)

Web developers: Positive

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?


Goals for experimentation




Reason this experiment is being extended

This is a deprecation trial, and we're giving more time to websites to stop 
using the deprecated behavior.



Reason this experiment is being extended

The release of DocumentIsolationPolicy in M137 is helping developers adopt 
crossOriginIsolation as a way out of this reverse Origin Trial. However, it 
will still take time for developers to adopt. We would like to extend the OT as 
the final extension and give developers 6 milestones to get out of this reverse 
Origin Trial. Once this is approved and developers have requested their token, 
we will close this trial so that no further origins adopt the deprecated 
behavior.



Ongoing technical constraints




Debuggability

DevTools warning in case SAB is used in none COI context is in place



Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, 
ChromeOS, Android, and Android WebView)?
No


Is this feature fully tested by web-platform-tests?
Yes
https://source.chromium.org/chromium/chromium/src/+/master:third_party/blink/web_tests/external/wpt/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/no-coop-coep.https.any.js
 https://github.com/tc39/test262/tree/master/test/built-ins/SharedArrayBuffer 
https://github.com/tc39/test262/tree/master/test/built-ins/Atomics



Flag name on about://flags



Finch feature name
None


Non-finch justification
None


Requires code in //chrome?
False


Tracking bug
https://bugs.chromium.org/p/chromium/issues/detail?id=709179


Launch bug
https://bugs.chromium.org/p/chromium/issues/detail?id=1138860


Estimated milestones


Origin trial desktop first 92

Origin trial desktop last 131

Origin trial extension 1 end milestone 109

Origin trial extension 2 end milestone 131

Origin trial extension 3 end milestone 124

Origin trial extension 4 end milestone 136

Origin trial extension 5 end milestone 142

DevTrial on desktop 60

DevTrial on Android 88




Link to entry on the Chrome Platform Status
https://chromestatus.com/feature/4570991992766464?gate=6222972867837952


Links to previous Intent discussions
Intent to Experiment: 
https://groups.google.com/a/chromium.org/g/blink-dev/c/1NKvbIj3dq4
Intent to Extend Experiment 1: 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAH0ixBN2JhcYtpT4UYKcAfHt1e0Wz_Uxz0CkXcAntguhbmyNCA%40mail.gmail.com
Intent to Extend Experiment 2: 
https://groups.google.com/u/1/a/chromium.org/g/blink-dev/c/4tDmckQLZLQ
Intent to Extend Experiment 3: 
https://groups.google.com/a/chromium.org/g/blink-dev/c/UospzV3lZMk/m/X9K0k8kuAQAJ
Intent to Extend Experiment 4: 
https://groups.google.com/a/chromium.org/g/blink-dev/c/A4CR6MIVzds/m/rpsWnzq6AAAJ?e=48417069
Intent to Ship: 
https://groups.google.com/a/chromium.org/g/blink-dev/c/1NKvbIj3dq4



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+unsubscr...@chromium.org.
To view this discussion visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/681b67ca.170a0220.4750a.028e.GAE%40google.com.

Reply via email to