This is somewhat blocking Transferable Streams.
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/e2f0a90ec6e47284f1cb14290b79b137369de3cd commit e2f0a90ec6e47284f1cb14290b79b137369de3cd Author: Yutaka Hirano <yhirano@chromium.org> Date: Thu Nov 08 21:18:36 2018 Introduce Promise::MarkAsHandled We are migrating streams implementation from JavaScript (v8Extra) to C++. One of missing features is an ability to set promise.[[PromiseIsHandled]] to true, used for example in https://streams.spec.whatwg.org/#rs-pipe-through. This CL introduces the feature. Bug: chromium:894357 , chromium:888154 , chromium:902633 Change-Id: If6487b29a74a212761e6d2ef04ef3ca0e6957dce Reviewed-on: https://chromium-review.googlesource.com/c/1322296 Reviewed-by: Adam Klein <adamk@chromium.org> Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Yutaka Hirano <yhirano@chromium.org> Cr-Commit-Position: refs/heads/master@{#57370} [modify] https://crrev.com/e2f0a90ec6e47284f1cb14290b79b137369de3cd/include/v8.h [modify] https://crrev.com/e2f0a90ec6e47284f1cb14290b79b137369de3cd/src/api.cc [modify] https://crrev.com/e2f0a90ec6e47284f1cb14290b79b137369de3cd/test/cctest/test-api.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/cc41111f3dfe8208b56d02c2d7efc5bef40dcfc9 commit cc41111f3dfe8208b56d02c2d7efc5bef40dcfc9 Author: Yutaka Hirano <yhirano@chromium.org> Date: Fri Nov 09 05:39:22 2018 Introduce blink::ReadableStream Introduce blink::ReadableStream which is a ScriptWrappable. This CL doesn't change the behavior because the interface is not (yet) exposed. Bug: 894357 , 888165 , 902633 Change-Id: Ie0f14e0efcc7d48034fff8317ba7f70f3f8ecd3b Reviewed-on: https://chromium-review.googlesource.com/c/1319222 Reviewed-by: Kinuko Yasuda <kinuko@chromium.org> Reviewed-by: Adam Rice <ricea@chromium.org> Commit-Queue: Yutaka Hirano <yhirano@chromium.org> Cr-Commit-Position: refs/heads/master@{#606749} [modify] https://crrev.com/cc41111f3dfe8208b56d02c2d7efc5bef40dcfc9/third_party/blink/renderer/core/BUILD.gn [modify] https://crrev.com/cc41111f3dfe8208b56d02c2d7efc5bef40dcfc9/third_party/blink/renderer/core/core_idl_files.gni [modify] https://crrev.com/cc41111f3dfe8208b56d02c2d7efc5bef40dcfc9/third_party/blink/renderer/core/streams/BUILD.gn [modify] https://crrev.com/cc41111f3dfe8208b56d02c2d7efc5bef40dcfc9/third_party/blink/renderer/core/streams/ReadableStream.js [add] https://crrev.com/cc41111f3dfe8208b56d02c2d7efc5bef40dcfc9/third_party/blink/renderer/core/streams/readable_stream.cc [add] https://crrev.com/cc41111f3dfe8208b56d02c2d7efc5bef40dcfc9/third_party/blink/renderer/core/streams/readable_stream.h [add] https://crrev.com/cc41111f3dfe8208b56d02c2d7efc5bef40dcfc9/third_party/blink/renderer/core/streams/readable_stream.idl [modify] https://crrev.com/cc41111f3dfe8208b56d02c2d7efc5bef40dcfc9/third_party/blink/renderer/core/streams/readable_stream_operations.cc [modify] https://crrev.com/cc41111f3dfe8208b56d02c2d7efc5bef40dcfc9/third_party/blink/renderer/core/streams/readable_stream_operations.h [add] https://crrev.com/cc41111f3dfe8208b56d02c2d7efc5bef40dcfc9/third_party/blink/renderer/core/streams/readable_stream_test.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/6105631e4f6362a083d8ad05999f21fc7918b67f commit 6105631e4f6362a083d8ad05999f21fc7918b67f Author: Yutaka Hirano <yhirano@chromium.org> Date: Fri Nov 09 09:44:10 2018 Remove ReadableStreamOperations use from BodyStreamBuffer Replace use of ReadableStreamOperations in BodyStreamBuffer with ReadableStream. This CL doesn't change the behavior. Bug: 894357 , 888165 , 902633 Change-Id: Icd478dcc59ca86e020d540229d69f0c61fb689c0 Reviewed-on: https://chromium-review.googlesource.com/c/1319408 Commit-Queue: Yutaka Hirano <yhirano@chromium.org> Reviewed-by: Adam Rice <ricea@chromium.org> Cr-Commit-Position: refs/heads/master@{#606775} [modify] https://crrev.com/6105631e4f6362a083d8ad05999f21fc7918b67f/third_party/blink/renderer/core/fetch/body.cc [modify] https://crrev.com/6105631e4f6362a083d8ad05999f21fc7918b67f/third_party/blink/renderer/core/fetch/body.h [modify] https://crrev.com/6105631e4f6362a083d8ad05999f21fc7918b67f/third_party/blink/renderer/core/fetch/body_stream_buffer.cc [modify] https://crrev.com/6105631e4f6362a083d8ad05999f21fc7918b67f/third_party/blink/renderer/core/fetch/body_stream_buffer.h [modify] https://crrev.com/6105631e4f6362a083d8ad05999f21fc7918b67f/third_party/blink/renderer/core/fetch/request.cc [modify] https://crrev.com/6105631e4f6362a083d8ad05999f21fc7918b67f/third_party/blink/renderer/core/fetch/response.cc [modify] https://crrev.com/6105631e4f6362a083d8ad05999f21fc7918b67f/third_party/blink/renderer/core/fetch/response.h [modify] https://crrev.com/6105631e4f6362a083d8ad05999f21fc7918b67f/third_party/blink/renderer/core/streams/readable_stream.cc [modify] https://crrev.com/6105631e4f6362a083d8ad05999f21fc7918b67f/third_party/blink/renderer/core/streams/readable_stream.h [modify] https://crrev.com/6105631e4f6362a083d8ad05999f21fc7918b67f/third_party/blink/renderer/core/streams/readable_stream_operations.cc [modify] https://crrev.com/6105631e4f6362a083d8ad05999f21fc7918b67f/third_party/blink/renderer/core/streams/readable_stream_operations.h [modify] https://crrev.com/6105631e4f6362a083d8ad05999f21fc7918b67f/third_party/blink/renderer/core/streams/readable_stream_operations_test.cc [modify] https://crrev.com/6105631e4f6362a083d8ad05999f21fc7918b67f/third_party/blink/renderer/core/streams/readable_stream_test.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/e1eea35ca9bf794cf3a112a75f5672f8538f53c7 commit e1eea35ca9bf794cf3a112a75f5672f8538f53c7 Author: Yutaka Hirano <yhirano@chromium.org> Date: Mon Nov 12 02:35:02 2018 Expose blink::ReadableStream and blink::TransformStream RedableStream and TransformStream have been defined in JavaScript files. This CL changes that - now they are defined in IDL files. ReadableStream internal implementation sill resides in ReadableStream.js. This CL exposes ReadableStream and TransformStream IDL interfaces and modifies blink modules using them. There are some compatibility issues: - Function lengths (e.g., ReadableStream.prototype.cancel.length) change. (external/wpt/streams/readable-streams/general*) - pipeThough's "generic" behavior is broken. We could use [Custom] extended IDL attribute to implement it, but I'm not sure if that's the right way, I'm letting it break for now. (external/wpt/streams/piping/pipe-through*) - attribute @@toStringTag is added to ReadableStream and TransformStream. (*global-interface-listing*) Bug: 894357 , 888165 , 902633 Change-Id: I506a78fdfae1b0bedf7618b2b05b783d663a11c2 Reviewed-on: https://chromium-review.googlesource.com/c/1322172 Commit-Queue: Yutaka Hirano <yhirano@chromium.org> Reviewed-by: Adam Rice <ricea@chromium.org> Reviewed-by: Kent Tamura <tkent@chromium.org> Reviewed-by: Joshua Bell <jsbell@chromium.org> Cr-Commit-Position: refs/heads/master@{#607131} [add] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/WebKit/LayoutTests/external/wpt/streams/piping/pipe-through-expected.txt [add] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/WebKit/LayoutTests/external/wpt/streams/piping/pipe-through.dedicatedworker-expected.txt [add] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/WebKit/LayoutTests/external/wpt/streams/piping/pipe-through.serviceworker.https-expected.txt [add] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/WebKit/LayoutTests/external/wpt/streams/piping/pipe-through.sharedworker-expected.txt [add] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/WebKit/LayoutTests/external/wpt/streams/readable-streams/general-expected.txt [add] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/WebKit/LayoutTests/external/wpt/streams/readable-streams/general.dedicatedworker-expected.txt [add] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/WebKit/LayoutTests/external/wpt/streams/readable-streams/general.serviceworker.https-expected.txt [add] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/WebKit/LayoutTests/external/wpt/streams/readable-streams/general.sharedworker-expected.txt [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/WebKit/LayoutTests/http/tests/serviceworker/webexposed/global-interface-listing-service-worker-expected.txt [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/WebKit/LayoutTests/virtual/stable/http/tests/serviceworker/webexposed/global-interface-listing-service-worker-expected.txt [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/WebKit/LayoutTests/virtual/stable/webexposed/global-interface-listing-dedicated-worker-expected.txt [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/WebKit/LayoutTests/virtual/stable/webexposed/global-interface-listing-expected.txt [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/WebKit/LayoutTests/virtual/stable/webexposed/global-interface-listing-shared-worker-expected.txt [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-dedicated-worker-expected.txt [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-expected.txt [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-shared-worker-expected.txt [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/core/BUILD.gn [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/core/core_idl_files.gni [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/core/fetch/body.cc [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/core/fetch/body.h [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/core/fetch/body_stream_buffer.cc [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/core/fetch/body_stream_buffer.h [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/core/fetch/body_stream_buffer_test.cc [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/core/fetch/readable_stream_bytes_consumer_test.cc [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/core/fetch/response.cc [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/core/fetch/response.idl [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/core/streams/ReadableStream.js [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/core/streams/TransformStream.js [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/core/streams/readable_stream.cc [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/core/streams/readable_stream.h [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/core/streams/readable_stream.idl [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/core/streams/readable_stream_operations.cc [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/core/streams/readable_stream_operations_test.cc [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/core/streams/readable_stream_test.cc [add] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/core/streams/test_underlying_source.h [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/core/streams/transform_stream.cc [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/core/streams/transform_stream.h [add] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/core/streams/transform_stream.idl [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/core/streams/transform_stream_test.cc [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/modules/encoding/text_decoder_stream.cc [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/modules/encoding/text_decoder_stream.h [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/modules/encoding/text_decoder_stream.idl [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/modules/encoding/text_encoder_stream.cc [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/modules/encoding/text_encoder_stream.h [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/modules/encoding/text_encoder_stream.idl [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/modules/filesystem/file_system_writer.cc [modify] https://crrev.com/e1eea35ca9bf794cf3a112a75f5672f8538f53c7/third_party/blink/renderer/modules/filesystem/file_system_writer.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/552f1f3eefb76c8c63fb88c34dec45bba59c4e79 commit 552f1f3eefb76c8c63fb88c34dec45bba59c4e79 Author: Yutaka Hirano <yhirano@chromium.org> Date: Tue Nov 27 08:19:20 2018 Introduce blink::WritableStream Introduce blink::WritableStream which is a ScriptWrappable. There are some compatibility issues: - Function lengths (e.g., WritableStream.prototype.abort.length) change. (external/wpt/streams/writable-streams/properties*) - attribute @@toStringTag is added to ReadableStream and TransformStream. (*global-interface-listing*) Bug: 894357 , 888165 , 902633 Change-Id: I93762fec72a4654759a7fbe4e80b4704befac2c3 No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/1337220 Commit-Queue: Yutaka Hirano <yhirano@chromium.org> Reviewed-by: Kent Tamura <tkent@chromium.org> Reviewed-by: Yuki Shiino <yukishiino@chromium.org> Reviewed-by: Adam Rice <ricea@chromium.org> Cr-Commit-Position: refs/heads/master@{#611042} [modify] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/renderer/bindings/bindings.gni [add] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/renderer/bindings/core/v8/custom/v8_writable_stream_custom.cc [modify] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/renderer/core/BUILD.gn [modify] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/renderer/core/core_idl_files.gni [modify] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/renderer/core/streams/BUILD.gn [modify] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/renderer/core/streams/WritableStream.js [modify] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/renderer/core/streams/readable_stream.cc [modify] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/renderer/core/streams/readable_stream_operations.cc [modify] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/renderer/core/streams/readable_stream_operations.h [modify] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/renderer/core/streams/transform_stream.cc [modify] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/renderer/core/streams/transform_stream.h [modify] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/renderer/core/streams/transform_stream.idl [modify] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/renderer/core/streams/transform_stream_test.cc [add] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/renderer/core/streams/writable_stream.cc [add] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/renderer/core/streams/writable_stream.h [add] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/renderer/core/streams/writable_stream.idl [add] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/renderer/core/streams/writable_stream_test.cc [modify] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/renderer/modules/encoding/text_decoder_stream.cc [modify] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/renderer/modules/encoding/text_decoder_stream.h [modify] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/renderer/modules/encoding/text_decoder_stream.idl [modify] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/renderer/modules/encoding/text_encoder_stream.cc [modify] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/renderer/modules/encoding/text_encoder_stream.h [modify] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/renderer/modules/encoding/text_encoder_stream.idl [add] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/web_tests/external/wpt/streams/writable-streams/properties.any-expected.txt [add] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/web_tests/external/wpt/streams/writable-streams/properties.any.serviceworker-expected.txt [add] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/web_tests/external/wpt/streams/writable-streams/properties.any.sharedworker-expected.txt [add] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/web_tests/external/wpt/streams/writable-streams/properties.any.worker-expected.txt [modify] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/web_tests/http/tests/serviceworker/webexposed/global-interface-listing-service-worker-expected.txt [modify] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/web_tests/virtual/stable/http/tests/serviceworker/webexposed/global-interface-listing-service-worker-expected.txt [modify] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/web_tests/virtual/stable/webexposed/global-interface-listing-dedicated-worker-expected.txt [modify] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/web_tests/virtual/stable/webexposed/global-interface-listing-expected.txt [modify] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/web_tests/virtual/stable/webexposed/global-interface-listing-shared-worker-expected.txt [modify] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/web_tests/webexposed/global-interface-listing-dedicated-worker-expected.txt [modify] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/web_tests/webexposed/global-interface-listing-expected.txt [modify] https://crrev.com/552f1f3eefb76c8c63fb88c34dec45bba59c4e79/third_party/blink/web_tests/webexposed/global-interface-listing-shared-worker-expected.txt
Comment 1 by ricea@chromium.org
, Oct 11