[meta] Re-enable SharedArrayBuffer and Atomics by default
Categories
(Core :: JavaScript Engine, enhancement, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox63 | --- | affected |
People
(Reporter: lth, Unassigned)
References
(Blocks 3 open bugs)
Details
(Keywords: dev-doc-complete, meta)
Reporter | ||
Updated•6 years ago
|
Reporter | ||
Updated•6 years ago
|
Updated•6 years ago
|
Updated•6 years ago
|
Comment 1•6 years ago
|
||
Is there any update on this? Chrome now already enable SharedArrayBuffer by default.
Reporter | ||
Comment 2•6 years ago
|
||
Working on it. The bugs most recently added as blockers (see directly above) are blocking this, for security reasons.
Updated•5 years ago
|
Updated•5 years ago
|
Comment 3•5 years ago
|
||
I've moved all dependencies that do not block a minimum viable product to block bug 1563480 instead. (Note that some of the dependencies here have dependencies of their own. There's still quite a bit remaining.)
Comment 4•5 years ago
|
||
Adding bug 1561594 as a dependency as it's relatively straightforward to fix and it would be good if developers did not have to copy buffers when using the encoding API from the start.
Updated•5 years ago
|
Updated•5 years ago
|
Updated•5 years ago
|
Comment 6•4 years ago
|
||
This is now considered done, see bug 1563480 and other blocking bugs for follow-up work. See bug 1619649 for information on shipping, eta Fx 79.
Comment 7•4 years ago
|
||
Updated/written docs:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/SharedArrayBuffer
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cross-Origin-Embedder-Policy
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cross-Origin-Opener-Policy
Fx 79 release notes announcements:
https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Releases/79#JavaScript
https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Releases/79#HTTP
If anyone has more feedback on these docs, please comment on https://github.com/mdn/sprints/issues/2219 where we've been discussing this a bit already.
Comment 8•4 years ago
|
||
Should this already work?
I am running Nightly 80.0a1 (2020-07-22) (64-Bit) on Linux, and when I try to run a simple pthread demo compiled with emscripten, all I get is:
Uncaught ReferenceError: SharedArrayBuffer is not defined
<anonymous> file:///home/ce/temp/threadtest.js:1414
... despite javascript.options.shared_memory is set to true in about:config.
Also, all the wasm+threads demos I found using search engines did not run and failed in one way or another.
Comment 9•4 years ago
|
||
Clemens: I think this requires the COEP and COOP headers to be correctly set too; see doc links in comment 7 to learn more about those.
Comment 10•4 years ago
|
||
Benjamin: Thanks for the hint.
I've now configured lighttpd to append those headers for every request, and thanks to the developer tools I can verify they are really served:
HTTP/1.1 200 OK
Content-Type: text/html
Accept-Ranges: bytes
ETag: "3914898211"
Last-Modified: Thu, 23 Jul 2020 12:42:20 GMT
Cross-Origin-Oper-Policy: same-origin
Cross-Origin-Embedder-Policy: require-corp
Content-Length: 102680
Date: Thu, 23 Jul 2020 12:48:25 GMT
Server: lighttpd/1.4.55
yet, all I get is:
Uncaught ReferenceError: SharedArrayBuffer is not defined
<anonymous> http://localhost/threadtest.js:1414
threadtest.js:1414:9
<anonym> http://localhost/threadtest.js:1414
Comment 11•4 years ago
|
||
ok, typo in the docs:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/SharedArrayBuffer
"Oper" should be "Opener"
Cross-Origin-Oper-Policy: same-origin
Comment 12•4 years ago
|
||
Thanks! Fixed.
You also need a secure context (https), I think.
Comment 13•4 years ago
|
||
localhost is a secure context so that part is covered.
Description
•