Closed Bug 1582348 Opened 5 years ago Closed 4 years ago

Start implementing WritableStream, behind a pref, often with stubbed-out functions that just throw

Categories

(Core :: JavaScript: Standard Library, enhancement, P1)

enhancement

Tracking

()

RESOLVED FIXED
mozilla71
Tracking Status
firefox71 --- affected

People

(Reporter: Waldo, Assigned: Waldo)

References

Details

Attachments

(63 files)

47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review

A full WritableStream implementation is going to be pretty large. We'll have to go somewhat (abstract) function by function, or group of them, or something smaller than "here's a fully usable implementation of a subset of WritableStream". Meanwhile, as long as the entrypoint to it all -- the WritableStream constructor (and eventually ReadableStream.prototype.pipeThrough, but that doesn't exist yet so I don't have to be cautious about it) -- is turned off, it should be no biggie having a bunch of code that in many many places will end up in JS_ReportErrorASCII(cx, "NYI"); return false; sorts of code paths.

I started these patches out methodically from the WritableStream constructor, but at a certain point I kind of hopped off that bandwagon and just started looking for functions that were fairly easy to implement without having to depend on implementationally-tricky things. End of day everything will be implemented. Just not yet.

There are going to be a bunch of // XXX jwalden ... comments in these patches as I stub out helpers in extremely aggressive fashion when I first hit a "need" for them. A more pedantic sort of person would insist on citing a bug in all such comments for everyone one of them, but I hope I can escape that requirement at least for now -- I really don't want to have to be thinking about bug-filling-maintenance paper-pushing as I write every single quick stub. Please?

Blocks: 1474543
Priority: -- → P1
Pushed by jwalden@mit.edu:
https://hg.mozilla.org/integration/autoland/rev/d880163db39a
Add a realm creation option controlling whether WritableStream is enabled.  r=arai
https://hg.mozilla.org/integration/autoland/rev/022992275778
Add the most skeleton WritableStream class imaginable.  r=arai
https://hg.mozilla.org/integration/autoland/rev/ade306c6ac9e
Implement steps 1 and 4 of InitializeWritableStream.  r=arai
Assignee: nobody → jwalden
Status: RESOLVED → REOPENED
Keywords: leave-open
Resolution: FIXED → ---
Pushed by jwalden@mit.edu:
https://hg.mozilla.org/integration/autoland/rev/ee5c37437606
Implement steps 2-3 of InitializeWritableStream.  r=arai
https://hg.mozilla.org/integration/autoland/rev/e5c50125c477
Fill out the body of SetUpWritableStreamDefaultControllerFromUnderlyingSink.  r=arai
https://hg.mozilla.org/integration/autoland/rev/bd4746df4bfa
Move StreamController to its own header.  r=arai
https://hg.mozilla.org/integration/autoland/rev/058cbf207b36
Rename Controller*Handler to ReadableStreamController*Handler anticipating similar-in-idea, different-in-algorithm functions being needed for writable streams.  r=arai
Pushed by jwalden@mit.edu:
https://hg.mozilla.org/integration/autoland/rev/4ceb625e5eb0
Fill out the body of |SetUpWritableStreamDefaultController|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/728075c80f4d
Fill out the body of |WritableStreamDealWithRejection|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/7628d3f14514
Fill out most of the body of |WritableStreamDefaultControllerAdvanceQueueIfNeeded|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/0d8e86bb06d0
Fill out much of the body of |WritableStreamStartErroring|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/c5b476005983
Fill out some of the body of |WritableStreamFinishErroring|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/bb2e05de0638
Begin filling out |WritableStream.prototype.getWriter|.  r=arai
Pushed by jwalden@mit.edu:
https://hg.mozilla.org/integration/autoland/rev/6468d1383eed
Fill out the body of |SetUpWritableStreamDefaultController|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/3d7cb583ec80
Fill out the body of |WritableStreamDealWithRejection|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/eb99905e2a22
Fill out most of the body of |WritableStreamDefaultControllerAdvanceQueueIfNeeded|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/32d49dee2c84
Fill out much of the body of |WritableStreamStartErroring|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/7eb27b8da551
Fill out some of the body of |WritableStreamFinishErroring|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/5b8db6d5f2a3
Begin filling out |WritableStream.prototype.getWriter|.  r=arai
Flags: needinfo?(jwalden)
Pushed by jwalden@mit.edu:
https://hg.mozilla.org/integration/autoland/rev/325d52211e61
Implement |WritableStreamDefaultWriter.prototype.get closed| (although it won't actually work til we properly compute/store the [[closedPromise]] internal property).  r=arai
https://hg.mozilla.org/integration/autoland/rev/303ff0fb526a
Implement |WritableStreamDefaultWriter.prototype.get desiredSize| (although it probably won't actually work properly just yet).  r=arai
https://hg.mozilla.org/integration/autoland/rev/09a9d352a37d
Implement |WritableStreamDefaultWriter.prototype.get ready| (although it won't actually work til we properly compute/store the [[readyPromise]] internal property).  r=arai
https://hg.mozilla.org/integration/autoland/rev/c8ad32cc516d
Implement |WritableStreamFinishInFlightWrite|, |WritableStreamCloseQueuedOrInFlight|, and |WritableStreamMarkCloseRequestInFlight|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/b4429b63f237
Implement |WritableStreamFinishInFlightWriteWithError|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/bf4c77c5ef43
Implement |WritableStreamDefaultWriterClose|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/54d17d430de3
Implement |WritableStreamFinishInFlightClose|.  r=arai

Depends on D49549

Pushed by jwalden@mit.edu:
https://hg.mozilla.org/integration/autoland/rev/849e4b49a6a9
Minimize #includes using forward-declarations in WritableStreamWriterOperations.h.  r=arai
https://hg.mozilla.org/integration/autoland/rev/5a72b9b6fcb7
At least in theory, rigorously fix up all compartment mismatches in all presently-written writable streams code.  La la la...  r=arai
https://hg.mozilla.org/integration/autoland/rev/bf9d2fed4823
Add resolve/reject helper functions that will wrap the unwrapped promise for the current compartment before performing the desired operation.  r=arai
https://hg.mozilla.org/integration/autoland/rev/df86d43a91cc
Implement |WritableStreamAddWriteRequest|.  r=arai
Pushed by jwalden@mit.edu:
https://hg.mozilla.org/integration/autoland/rev/bb048f85a3a9
Implement |WritableStreamUpdateBackpressure|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/519ddce02f43
Implement |WritableStreamFinishInFlightCloseWithError|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/060a76418b95
Implement |WritableStreamMarkFirstWriteRequestInFlight|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/6dc87f50afb5
Implement |WritableStreamRejectCloseAndClosedPromiseIfNeeded|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/9194f4c3a4b0
Fill out the rest of |WritableStreamStartErroring|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/cdee74198a02
Implement |WritableStreamDefaultControllerError| and |WritableStreamDefaultControllerClearAlgorithms|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/efddf4dea6a9
Implement |WritableStreamDefaultController.prototype.error|.  r=arai
Pushed by jwalden@mit.edu:
https://hg.mozilla.org/integration/autoland/rev/461556631684
Implement the |WritableStream.prototype.locked| getter.  r=arai
https://hg.mozilla.org/integration/autoland/rev/17992c3dd43e
Implement |WritableStreamAbort|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/62bbc891288f
Implement |WritableStream.prototype.abort|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/7e6bd57c4493
Allow handler functions to store an extra object in the extra extended slot not already allocated to the target.  r=arai
https://hg.mozilla.org/integration/autoland/rev/98fda09d6d39
Finish implementing |WritableStreamFinishErroring|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/7d5a91059cc9
Implement |WritableStreamDefaultControllerGetChunkSize| and |WritableStreamDefaultControllerErrorIfNeeded|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/912867da0987
Implement |WritableStreamDefaultControllerClose|.  r=arai

Backed out 7 changesets (bug 1582348) for spidermonkey bustage at WritableStream.cpp on a CLOSED TREE.

Backout link: https://hg.mozilla.org/integration/autoland/rev/0b9f03d1ba899606b748a06bb49d5a0e55a150f0

Push with failures: https://treeherder.mozilla.org/#/jobs?repo=autoland&resultStatus=testfailed%2Cbusted%2Cexception&revision=912867da09871edf3daf04088e3333603ce2e2e4&selectedJob=273619463

Log link: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=273619463&repo=autoland&lineNumber=4087

Log snippet:
[task 2019-10-30T05:20:02.700Z] js/src/frontend/ElemOpEmitter.o
[task 2019-10-30T05:20:03.394Z] /builds/worker/fetches/gcc/bin/g++ -o testIsInsideNursery.o -c -I/builds/worker/workspace/build/src/obj-spider/dist/system_wrappers -include /builds/worker/workspace/build/src/config/gcc_hidden.h -DDEBUG=1 -DMOZ_HAS_MOZGLUE -DEXPORT_JS_API -Dtopsrcdir=/builds/worker/workspace/build/src/js/src -I/builds/worker/workspace/build/src/js/src/jsapi-tests -I/builds/worker/workspace/build/src/obj-spider/js/src/jsapi-tests -I/builds/worker/workspace/build/src/obj-spider/js/src -I/builds/worker/workspace/build/src/js/src -I/builds/worker/workspace/build/src/obj-spider/dist/include -I/builds/worker/workspace/build/src/obj-spider/dist/include/nspr -fPIC -DMOZILLA_CLIENT -include /builds/worker/workspace/build/src/obj-spider/js/src/js-confdefs.h -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector-strong -Wall -Wempty-body -Wignored-qualifiers -Woverloaded-virtual -Wpointer-arith -Wsign-compare -Wtype-limits -Wunreachable-code -Wwrite-strings -Wno-invalid-offsetof -Wduplicated-cond -Wno-error=maybe-uninitialized -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wno-error=coverage-mismatch -Wno-error=free-nonheap-object -Wformat -D_GLIBCXX_USE_CXX11_ABI=0 -fno-sized-deallocation -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector-strong -fno-rtti -ffunction-sections -fdata-sections -fno-exceptions -fno-math-errno -pthread -pipe -g -freorder-blocks -O3 -fno-omit-frame-pointer -funwind-tables -Werror -fno-strict-aliasing -Werror=format -Wno-shadow -Wno-attributes -MD -MP -MF .deps/testIsInsideNursery.o.pp /builds/worker/workspace/build/src/js/src/jsapi-tests/testIsInsideNursery.cpp
[task 2019-10-30T05:20:03.395Z] js/src/jsapi-tests/testIteratorObject.o
[task 2019-10-30T05:20:05.513Z] /builds/worker/fetches/gcc/bin/g++ -o testIteratorObject.o -c -I/builds/worker/workspace/build/src/obj-spider/dist/system_wrappers -include /builds/worker/workspace/build/src/config/gcc_hidden.h -DDEBUG=1 -DMOZ_HAS_MOZGLUE -DEXPORT_JS_API -Dtopsrcdir=/builds/worker/workspace/build/src/js/src -I/builds/worker/workspace/build/src/js/src/jsapi-tests -I/builds/worker/workspace/build/src/obj-spider/js/src/jsapi-tests -I/builds/worker/workspace/build/src/obj-spider/js/src -I/builds/worker/workspace/build/src/js/src -I/builds/worker/workspace/build/src/obj-spider/dist/include -I/builds/worker/workspace/build/src/obj-spider/dist/include/nspr -fPIC -DMOZILLA_CLIENT -include /builds/worker/workspace/build/src/obj-spider/js/src/js-confdefs.h -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector-strong -Wall -Wempty-body -Wignored-qualifiers -Woverloaded-virtual -Wpointer-arith -Wsign-compare -Wtype-limits -Wunreachable-code -Wwrite-strings -Wno-invalid-offsetof -Wduplicated-cond -Wno-error=maybe-uninitialized -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wno-error=coverage-mismatch -Wno-error=free-nonheap-object -Wformat -D_GLIBCXX_USE_CXX11_ABI=0 -fno-sized-deallocation -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector-strong -fno-rtti -ffunction-sections -fdata-sections -fno-exceptions -fno-math-errno -pthread -pipe -g -freorder-blocks -O3 -fno-omit-frame-pointer -funwind-tables -Werror -fno-strict-aliasing -Werror=format -Wno-shadow -Wno-attributes -MD -MP -MF .deps/testIteratorObject.o.pp /builds/worker/workspace/build/src/js/src/jsapi-tests/testIteratorObject.cpp
[task 2019-10-30T05:20:05.513Z] js/src/jsapi-tests/testJSEvaluateScript.o
[task 2019-10-30T05:20:05.778Z] /builds/worker/workspace/build/src/js/src/builtin/streams/WritableStream.cpp: In function 'bool WritableStream_abort(JSContext*, unsigned int, JS::Value*)':
[task 2019-10-30T05:20:05.778Z] /builds/worker/workspace/build/src/js/src/builtin/streams/WritableStream.cpp:189:35: error: 'GetErrorMessage' was not declared in this scope
[task 2019-10-30T05:20:05.778Z] JS_ReportErrorNumberASCII(cx, GetErrorMessage, nullptr,
[task 2019-10-30T05:20:05.778Z] ^~~~~~~~~~~~~~~
[task 2019-10-30T05:20:05.778Z] /builds/worker/workspace/build/src/js/src/builtin/streams/WritableStream.cpp:189:35: note: suggested alternative:
[task 2019-10-30T05:20:05.778Z] In file included from /builds/worker/workspace/build/src/js/src/vm/NativeObject.h:15:0,
[task 2019-10-30T05:20:05.778Z] from /builds/worker/workspace/build/src/js/src/vm/List.h:12,
[task 2019-10-30T05:20:05.778Z] from /builds/worker/workspace/build/src/js/src/builtin/streams/WritableStream.h:23,
[task 2019-10-30T05:20:05.778Z] from /builds/worker/workspace/build/src/js/src/builtin/streams/WritableStream.cpp:9:
[task 2019-10-30T05:20:05.778Z] /builds/worker/workspace/build/src/js/src/jsfriendapi.h:1307:49: note: 'js::GetErrorMessage'
[task 2019-10-30T05:20:05.778Z] extern JS_FRIEND_API const JSErrorFormatString* GetErrorMessage(
[task 2019-10-30T05:20:05.778Z] ^~~~~~~~~~~~~~~
[task 2019-10-30T05:20:06.113Z] /builds/worker/fetches/gcc/bin/g++ -o Memory.o -c -I/builds/worker/workspace/build/src/obj-spider/dist/system_wrappers -include /builds/worker/workspace/build/src/config/gcc_hidden.h -DDEBUG=1 -DWASM_SUPPORTS_HUGE_MEMORY -DJS_CACHEIR_SPEW -DJS_STRUCTURED_SPEW -DEXPORT_JS_API -DMOZ_HAS_MOZGLUE -I/builds/worker/workspace/build/src/js/src/gc -I/builds/worker/workspace/build/src/obj-spider/js/src/gc -I/builds/worker/workspace/build/src/obj-spider/js/src -I/builds/worker/workspace/build/src/js/src -I/builds/worker/workspace/build/src/obj-spider/dist/include -I/builds/worker/workspace/build/src/obj-spider/dist/include/nspr -fPIC -DMOZILLA_CLIENT -include /builds/worker/workspace/build/src/obj-spider/js/src/js-confdefs.h -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector-strong -Wall -Wempty-body -Wignored-qualifiers -Woverloaded-virtual -Wpointer-arith -Wsign-compare -Wtype-limits -Wunreachable-code -Wwrite-strings -Wno-invalid-offsetof -Wduplicated-cond -Wno-error=maybe-uninitialized -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wno-error=coverage-mismatch -Wno-error=free-nonheap-object -Wformat -D_GLIBCXX_USE_CXX11_ABI=0 -fno-sized-deallocation -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector-strong -fno-rtti -ffunction-sections -fdata-sections -fno-exceptions -fno-math-errno -pthread -pipe -g -freorder-blocks -O3 -fno-omit-frame-pointer -funwind-tables -Werror -fno-strict-aliasing -Werror=format -Wno-shadow -Wno-attributes -MD -MP -MF .deps/Memory.o.pp /builds/worker/workspace/build/src/js/src/gc/Memory.cpp
[task 2019-10-30T05:20:06.113Z] js/src/gc/Nursery.o
[task 2019-10-30T05:20:06.698Z] /builds/worker/fetches/gcc/bin/g++ -o ElemOpEmitter.o -c -I/builds/worker/workspace/build/src/obj-spider/dist/system_wrappers -include /builds/worker/workspace/build/src/config/gcc_hidden.h -DDEBUG=1 -DWASM_SUPPORTS_HUGE_MEMORY -DJS_CACHEIR_SPEW -DJS_STRUCTURED_SPEW -DEXPORT_JS_API -DMOZ_HAS_MOZGLUE -I/builds/worker/workspace/build/src/js/src/frontend -I/builds/worker/workspace/build/src/obj-spider/js/src/frontend -I/builds/worker/workspace/build/src/obj-spider/js/src -I/builds/worker/workspace/build/src/js/src -I/builds/worker/workspace/build/src/obj-spider/dist/include -I/builds/worker/workspace/build/src/obj-spider/dist/include/nspr -fPIC -DMOZILLA_CLIENT -include /builds/worker/workspace/build/src/obj-spider/js/src/js-confdefs.h -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector-strong -Wall -Wempty-body -Wignored-qualifiers -Woverloaded-virtual -Wpointer-arith -Wsign-compare -Wtype-limits -Wunreachable-code -Wwrite-strings -Wno-invalid-offsetof -Wduplicated-cond -Wno-error=maybe-uninitialized -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wno-error=coverage-mismatch -Wno-error=free-nonheap-object -Wformat -D_GLIBCXX_USE_CXX11_ABI=0 -fno-sized-deallocation -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector-strong -fno-rtti -ffunction-sections -fdata-sections -fno-exceptions -fno-math-errno -pthread -pipe -g -freorder-blocks -O3 -fno-omit-frame-pointer -funwind-tables -Werror -fno-strict-aliasing -Werror=format -Wno-shadow -Wno-attributes -MD -MP -MF .deps/ElemOpEmitter.o.pp /builds/worker/workspace/build/src/js/src/frontend/ElemOpEmitter.cpp
[task 2019-10-30T05:20:06.698Z] js/src/frontend/EmitterScope.o
[task 2019-10-30T05:20:07.131Z] /builds/worker/workspace/build/src/config/rules.mk:787: recipe for target 'WritableStream.o' failed
[task 2019-10-30T05:20:07.131Z] make[3]: *** [WritableStream.o] Error 1
[task 2019-10-30T05:20:07.131Z] make[3]: Leaving directory '/builds/worker/workspace/build/src/obj-spider/js/src'
[task 2019-10-30T05:20:07.132Z] /builds/worker/workspace/build/src/config/recurse.mk:74: recipe for target 'js/src/target-objects' failed
[task 2019-10-30T05:20:07.132Z] make[2]: *** [js/src/target-objects] Error 2
[task 2019-10-30T05:20:07.132Z] make[2]: *** Waiting for unfinished jobs....

Flags: needinfo?(jwalden)
Pushed by jwalden@mit.edu:
https://hg.mozilla.org/integration/autoland/rev/c43485290702
Implement the |WritableStream.prototype.locked| getter.  r=arai
https://hg.mozilla.org/integration/autoland/rev/b324f9e52e05
Implement |WritableStreamAbort|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/d3f5c02f5998
Implement |WritableStream.prototype.abort|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/0b7f8d406863
Allow handler functions to store an extra object in the extra extended slot not already allocated to the target.  r=arai
https://hg.mozilla.org/integration/autoland/rev/1a7175e8af9e
Finish implementing |WritableStreamFinishErroring|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/a9088be943d2
Implement |WritableStreamDefaultControllerGetChunkSize| and |WritableStreamDefaultControllerErrorIfNeeded|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/a605285038fe
Implement |WritableStreamDefaultControllerClose|.  r=arai
Attachment #9105128 - Attachment description: Bug 1582348 - Allow writable streams to be turned on in the browser when the javascript.options.{,writable_}streams prefs are set. r=jandem → Bug 1582348 - Enable writable streams in the browser when the javascript.options.{,writable_}streams prefs are set. (Writable streams are only half-implemented; DO NOT start reporting bugs yet, it *will* crash in all sorts of trivial ways.) r=jandem
Pushed by jwalden@mit.edu:
https://hg.mozilla.org/integration/autoland/rev/ae8a16518084
Enable writable streams in the browser when the javascript.options.{,writable_}streams prefs are set.  (Writable streams are only half-implemented; DO NOT start reporting bugs yet, it *will* crash in all sorts of trivial ways.)  r=jandem
Pushed by jwalden@mit.edu:
https://hg.mozilla.org/integration/autoland/rev/0695bdca115c
Remove |QueueEntry| and just store its elements in successive elements of a queue.  r=arai
https://hg.mozilla.org/integration/autoland/rev/61afdffa6c61
Fill out the rest of |WritableStreamDefaultControllerAdvanceQueueIfNeeded| and implement |WritableStreamDefaultControllerProcess{Close,Write}| as required by it.  r=arai
https://hg.mozilla.org/integration/autoland/rev/9515a29ca747
Implement |WritableStreamDefaultControllerWrite|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/df73afe636f4
Implement |WritableStreamDefaultWriterWrite|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/1de9eca9cdab
Implement |WritableStreamDefaultWriter.prototype.write|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/31d663782160
Implement |WritableStreamDefaultWriter.prototype.close|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/bf009da407c8
Implement |WritableStreamDefaultWriterRelease|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/18a51ecc0e31
Implement |WritableStreamDefaultWriter.prototype.releaseLock|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/31081d27ff05
Implement |WritableStreamAbort| and |WritableStreamDefaultWriter.prototype.abort|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/97f48c45c1d0
Document WritableStream::Slot_State directly by the enum initializer.  r=arai
https://hg.mozilla.org/integration/autoland/rev/f3c25182df77
Implement |WritableStreamDefaultWriterEnsure{Ready,Closed}PromiseRejected|.  r=arai
https://hg.mozilla.org/integration/autoland/rev/b74411c57592
Implement the |WritableStreamDefaultWriter| constructor.  r=arai
https://hg.mozilla.org/integration/autoland/rev/0b04695b380e
Allow |PromiseCall| to be called providing zero or two arguments, in addition to just one argument.  r=arai
https://hg.mozilla.org/integration/autoland/rev/a6bf506749c9
Implement performing "Let sinkClosePromise be the result of performing controller.[[closeAlgorithm]]."  r=arai
https://hg.mozilla.org/integration/autoland/rev/c42a3c4cccc6
Implement "Let sinkWritePromise be the result of performing controller.[[writeAlgorithm]], passing in chunk."  r=arai
https://hg.mozilla.org/integration/autoland/rev/db95a431fc20
Make WritableStreamDefault{Controller,Writer} real classes, and resolve them only when writable streams have been enabled.  r=arai
https://hg.mozilla.org/integration/autoland/rev/2786d88246d4
Save |underlyingSink| in a slot on the controller so that [[{write,close,abort}Algorithm]] can make later use of it.  r=arai
Pushed by jwalden@mit.edu:
https://hg.mozilla.org/integration/autoland/rev/05aca2d6e15a
Don't name WritableStreamDefaultWriter functions as WritableStream_* 'cause this copypasta happenstance is nonsensical (and might someday break scumbag unified builds).  r=arai
https://hg.mozilla.org/integration/autoland/rev/ef291ddea398
Implement WritableStreamClose and WritableStream.prototype.close.  r=arai
https://hg.mozilla.org/integration/autoland/rev/a4bf67b78cde
Make the .length on various writable-stream constructors correct.  r=arai
https://hg.mozilla.org/integration/autoland/rev/bf2338a0da80
Make WritableStream.prototype.abort return a promise rejected with a TypeError if passed an improper |this|, not throw that TypeError.  r=arai
https://hg.mozilla.org/integration/autoland/rev/99ed7bab2aa7
Properly clear the temporarily-pending TypeError created in WritableStreamDefaultWriterRelease.  r=arai
https://hg.mozilla.org/integration/autoland/rev/aa11d917882f
Allow an Erroring->Closed transition in assertions, as this can happen in WritableStreamFinishInFlightClose.  r=arai
https://hg.mozilla.org/integration/autoland/rev/aae7cc724b3e
Run all the writable streams WPT tests with the relevant preference(s) set, now that they all pass.  r=arai

Hrm. I'm not sure why those tests would be failing up there, when they work for me locally. Relanding all the but the last test, whilst I figure out why they pass for me locally but fail on tinderbox.

Flags: needinfo?(jwalden)
Pushed by jwalden@mit.edu:
https://hg.mozilla.org/integration/autoland/rev/eadda7d0287c
Don't name WritableStreamDefaultWriter functions as WritableStream_* 'cause this copypasta happenstance is nonsensical (and might someday break scumbag unified builds).  r=arai
https://hg.mozilla.org/integration/autoland/rev/875c829c57ce
Implement WritableStreamClose and WritableStream.prototype.close.  r=arai
https://hg.mozilla.org/integration/autoland/rev/979d77ef5692
Make the .length on various writable-stream constructors correct.  r=arai
https://hg.mozilla.org/integration/autoland/rev/9e620f21ea4f
Make WritableStream.prototype.abort return a promise rejected with a TypeError if passed an improper |this|, not throw that TypeError.  r=arai
https://hg.mozilla.org/integration/autoland/rev/3ba2ca38372d
Properly clear the temporarily-pending TypeError created in WritableStreamDefaultWriterRelease.  r=arai
https://hg.mozilla.org/integration/autoland/rev/8caeb3eb603c
Allow an Erroring->Closed transition in assertions, as this can happen in WritableStreamFinishInFlightClose.  r=arai
Attachment #9106795 - Attachment description: Bug 1582348 - Run all the writable streams WPT tests with the relevant preference(s) set, now that they all pass. r=arai → Bug 1582348 - Run all the writable streams WPT tests in the browser (shell excluded) with the relevant preference(s) set, now that they all pass. r=arai
Pushed by jwalden@mit.edu:
https://hg.mozilla.org/integration/autoland/rev/7deb597b7839
Run all the writable streams WPT tests in the browser (shell excluded) with the relevant preference(s) set, now that they all pass.  r=arai
Pushed by rmaries@mozilla.com:
https://hg.mozilla.org/mozilla-central/rev/c504652088cf
Run all the writable streams WPT tests in the browser (shell excluded) with the relevant preference(s) set, now that they all pass.  r=arai

The leave-open keyword is there and there is no activity for 6 months.
:jorendorff, maybe it's time to close this bug?

Flags: needinfo?(jorendorff)
Status: REOPENED → RESOLVED
Closed: 5 years ago4 years ago
Resolution: --- → FIXED
Flags: needinfo?(jorendorff)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: