https://streams.spec.whatwg.org/#ts
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/9dc1afc153c4b2d10cd03fb555fccf4bba2b8c01 commit 9dc1afc153c4b2d10cd03fb555fccf4bba2b8c01 Author: Adam Rice <ricea@chromium.org> Date: Fri Nov 10 10:18:59 2017 Implement TransformStream behind a flag Add an implementation of TransformStream using v8 extras. It will be enabled when --enable-experimental-web-platform-features is enabled. Implementation is conformant to the standard: https://streams.spec.whatwg.org/#ts Tests are not included in this CL, as they are due to move from the whatwg/streams repository to the w3c/web-platform-tests repository very soon. All transform stream tests pass. Some changes have been made to the existing ReadableStream and WritableStream extensions to enable the implementation. ReadableStream: - ReadableStreamDefaultControllerHasBackpressure and ReadableStreamDefaultControllerCanCloseOrEnqueue abstract operations have been implemented. These were already in the standard. - getReadableStreamEnqueueError has been factored out so that enqueue() for ReadableStreamDefaultController and TransformStreamDefaultController can share common error messages. - Internal accessors getReadableStreamController and getReadableStreamStoredError have been added for TransformStream to use. WritableStream: - New accessors isWritableStreamWritable, isWritableStreamErroring and getWritableStreamController have been added. - WritableStreamDefaultControllerErrorIfNeeded is newly exported on the binding object. Bug: 780689 TBR=brettw@chromium.org R=domenic@chromium.org Change-Id: I3d0d5442f2ccad8350ab52caad2961374446656d Reviewed-on: https://chromium-review.googlesource.com/750502 Commit-Queue: Adam Rice <ricea@chromium.org> Reviewed-by: Takeshi Yoshino <tyoshino@chromium.org> Reviewed-by: Adam Rice <ricea@chromium.org> Cr-Commit-Position: refs/heads/master@{#515521} [modify] https://crrev.com/9dc1afc153c4b2d10cd03fb555fccf4bba2b8c01/.gn [delete] https://crrev.com/11bc1f22a806c84671939139d6ab108618cdda24/third_party/WebKit/LayoutTests/external/wpt/streams/piping/transform-streams-expected.txt [delete] https://crrev.com/11bc1f22a806c84671939139d6ab108618cdda24/third_party/WebKit/LayoutTests/external/wpt/streams/piping/transform-streams.dedicatedworker-expected.txt [delete] https://crrev.com/11bc1f22a806c84671939139d6ab108618cdda24/third_party/WebKit/LayoutTests/external/wpt/streams/piping/transform-streams.serviceworker.https-expected.txt [delete] https://crrev.com/11bc1f22a806c84671939139d6ab108618cdda24/third_party/WebKit/LayoutTests/external/wpt/streams/piping/transform-streams.sharedworker-expected.txt [modify] https://crrev.com/9dc1afc153c4b2d10cd03fb555fccf4bba2b8c01/third_party/WebKit/LayoutTests/http/tests/serviceworker/webexposed/global-interface-listing-service-worker-expected.txt [modify] https://crrev.com/9dc1afc153c4b2d10cd03fb555fccf4bba2b8c01/third_party/WebKit/LayoutTests/http/tests/worklet/webexposed/global-interface-listing-paint-worklet-expected.txt [modify] https://crrev.com/9dc1afc153c4b2d10cd03fb555fccf4bba2b8c01/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-dedicated-worker-expected.txt [modify] https://crrev.com/9dc1afc153c4b2d10cd03fb555fccf4bba2b8c01/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-expected.txt [modify] https://crrev.com/9dc1afc153c4b2d10cd03fb555fccf4bba2b8c01/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-shared-worker-expected.txt [modify] https://crrev.com/9dc1afc153c4b2d10cd03fb555fccf4bba2b8c01/third_party/WebKit/Source/core/streams/CommonOperations.js [modify] https://crrev.com/9dc1afc153c4b2d10cd03fb555fccf4bba2b8c01/third_party/WebKit/Source/core/streams/ReadableStream.js [add] https://crrev.com/9dc1afc153c4b2d10cd03fb555fccf4bba2b8c01/third_party/WebKit/Source/core/streams/TransformStream.js [modify] https://crrev.com/9dc1afc153c4b2d10cd03fb555fccf4bba2b8c01/third_party/WebKit/Source/core/streams/WritableStream.js
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/e33ce4dfdbe1aec5d6eb85ac553c0e3f45d205e7 commit e33ce4dfdbe1aec5d6eb85ac553c0e3f45d205e7 Author: Adam Rice <ricea@chromium.org> Date: Thu Mar 22 11:21:04 2018 Update TransformStream to latest standard version Update TransformStream to match the standard version https://github.com/whatwg/streams/commit/7b8dffe8ec270bb918340e011349e2c1b5521a15. Significant changes: Method lookups are now cached at construction time. Changing underlyingSink.write after construction will no longer do anything. This is https://github.com/whatwg/streams/pull/860. When the readable side is cancelled, the stored error on the writable side will be set to the |reason| that was passed to cancel(), rather than a TypeError. This is https://github.com/whatwg/streams/pull/903. Bug: 780689 , 820387 Change-Id: I33c59541eea1bfc5f96722bce750ba4fa7ff96ee Reviewed-on: https://chromium-review.googlesource.com/964112 Reviewed-by: Yutaka Hirano <yhirano@chromium.org> Commit-Queue: Adam Rice <ricea@chromium.org> Cr-Commit-Position: refs/heads/master@{#545038} [delete] https://crrev.com/9e767b2f1828ea3093d0e62d3d15ecf5f9dcfd63/third_party/WebKit/LayoutTests/external/wpt/streams/transform-streams/errors-expected.txt [delete] https://crrev.com/9e767b2f1828ea3093d0e62d3d15ecf5f9dcfd63/third_party/WebKit/LayoutTests/external/wpt/streams/transform-streams/errors.dedicatedworker-expected.txt [delete] https://crrev.com/9e767b2f1828ea3093d0e62d3d15ecf5f9dcfd63/third_party/WebKit/LayoutTests/external/wpt/streams/transform-streams/errors.serviceworker.https-expected.txt [delete] https://crrev.com/9e767b2f1828ea3093d0e62d3d15ecf5f9dcfd63/third_party/WebKit/LayoutTests/external/wpt/streams/transform-streams/errors.sharedworker-expected.txt [delete] https://crrev.com/9e767b2f1828ea3093d0e62d3d15ecf5f9dcfd63/third_party/WebKit/LayoutTests/external/wpt/streams/transform-streams/properties-expected.txt [delete] https://crrev.com/9e767b2f1828ea3093d0e62d3d15ecf5f9dcfd63/third_party/WebKit/LayoutTests/external/wpt/streams/transform-streams/properties.dedicatedworker-expected.txt [delete] https://crrev.com/9e767b2f1828ea3093d0e62d3d15ecf5f9dcfd63/third_party/WebKit/LayoutTests/external/wpt/streams/transform-streams/properties.serviceworker.https-expected.txt [delete] https://crrev.com/9e767b2f1828ea3093d0e62d3d15ecf5f9dcfd63/third_party/WebKit/LayoutTests/external/wpt/streams/transform-streams/properties.sharedworker-expected.txt [delete] https://crrev.com/9e767b2f1828ea3093d0e62d3d15ecf5f9dcfd63/third_party/WebKit/LayoutTests/external/wpt/streams/transform-streams/reentrant-strategies-expected.txt [delete] https://crrev.com/9e767b2f1828ea3093d0e62d3d15ecf5f9dcfd63/third_party/WebKit/LayoutTests/external/wpt/streams/transform-streams/reentrant-strategies.dedicatedworker-expected.txt [delete] https://crrev.com/9e767b2f1828ea3093d0e62d3d15ecf5f9dcfd63/third_party/WebKit/LayoutTests/external/wpt/streams/transform-streams/reentrant-strategies.serviceworker.https-expected.txt [delete] https://crrev.com/9e767b2f1828ea3093d0e62d3d15ecf5f9dcfd63/third_party/WebKit/LayoutTests/external/wpt/streams/transform-streams/reentrant-strategies.sharedworker-expected.txt [modify] https://crrev.com/e33ce4dfdbe1aec5d6eb85ac553c0e3f45d205e7/third_party/WebKit/Source/core/streams/CommonOperations.js [modify] https://crrev.com/e33ce4dfdbe1aec5d6eb85ac553c0e3f45d205e7/third_party/WebKit/Source/core/streams/TransformStream.js
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/bf8191d041cfbfc59285c584f42241dc9c43da32 commit bf8191d041cfbfc59285c584f42241dc9c43da32 Author: Adam Rice <ricea@chromium.org> Date: Mon Apr 02 11:34:28 2018 Ship TransformStream Intent to Ship thread: https://groups.google.com/a/chromium.org/forum/#!topic/blink-dev/YEHinDOBaBw Move TransformStream.js from v8_experimental_extra_library_files to v8_extra_library_files in //.gn. Also update the stable webexposed interface expectations. Bug: 780689 Change-Id: Ia16a9c2d7a45a00a0cdf72b1e53f72d60dd07e71 Reviewed-on: https://chromium-review.googlesource.com/985933 Commit-Queue: Adam Rice <ricea@chromium.org> Reviewed-by: Bruce Dawson <brucedawson@chromium.org> Reviewed-by: Yutaka Hirano <yhirano@chromium.org> Reviewed-by: Kent Tamura <tkent@chromium.org> Cr-Commit-Position: refs/heads/master@{#547427} [modify] https://crrev.com/bf8191d041cfbfc59285c584f42241dc9c43da32/.gn [modify] https://crrev.com/bf8191d041cfbfc59285c584f42241dc9c43da32/third_party/WebKit/LayoutTests/virtual/stable/http/tests/serviceworker/webexposed/global-interface-listing-service-worker-expected.txt [modify] https://crrev.com/bf8191d041cfbfc59285c584f42241dc9c43da32/third_party/WebKit/LayoutTests/virtual/stable/webexposed/global-interface-listing-dedicated-worker-expected.txt [modify] https://crrev.com/bf8191d041cfbfc59285c584f42241dc9c43da32/third_party/WebKit/LayoutTests/virtual/stable/webexposed/global-interface-listing-expected.txt [modify] https://crrev.com/bf8191d041cfbfc59285c584f42241dc9c43da32/third_party/WebKit/LayoutTests/virtual/stable/webexposed/global-interface-listing-shared-worker-expected.txt
Comment 1 by bugdroid1@chromium.org
, Nov 10 2017