New issue
Advanced search Search tips

Issue 902633 link

Starred by 3 users

Issue metadata

Status: Available
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Task

Blocked on:
issue 912848

Blocking:
issue 748389
issue 759519



Sign in to add a comment

(Re)Implement streams in C++

Project Member Reported by yhirano@chromium.org, Nov 7

Issue description

(Re)Implement streams in C++
 
Status: Available (was: Untriaged)
I see a CL is in flight at https://chromium-review.googlesource.com/c/chromium/src/+/1319222. It seems like there is an incremental strategy in progress, instead of e.g. re-doing everything in idiomatic IDL and C++. For example a lot of usage of any, and only converting ReadableStream, not all streams classes at once.

Would someone mind summarizing the strategy, to better give context for reviews and spec work?
Project Member

Comment 3 by bugdroid1@chromium.org, Nov 8

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

What I'm doing right now is "D: Introduce a thin ScriptWrappable"[1]. It's needed for TransferableStreams. Defining ScriptWrappable ReadableStream, WritableStream and TransformStreams is needed for the work.

Internal algorithms are still written in JavaScript at this stage. We will re-implement the logic in C++ probably in 2019.

https://docs.google.com/document/d/1_KuZzg5c3pncLJPFa8SuVm23AP4tft6mzPCL5at3I9M/edit#heading=h.egunr8797a77
Project Member

Comment 5 by bugdroid1@chromium.org, Nov 9

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

Project Member

Comment 6 by bugdroid1@chromium.org, Nov 9

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

Blocking: 748389
Cc: bmeu...@chromium.org
Project Member

Comment 9 by bugdroid1@chromium.org, Nov 12

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

Project Member

Comment 10 by bugdroid1@chromium.org, Nov 27

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

Blocking: 759519
Labels: -Pri-3 M-75 Pri-2
This is planned for Q1 2019. I am tentatively targeting M75, although it's quite likely we won't completely switch over until a later release.
Blockedon: 912848
Project Member

Comment 14 by bugdroid1@chromium.org, Jan 15

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b7ece1e208de3215928a8c91d971945b83ca1267

commit b7ece1e208de3215928a8c91d971945b83ca1267
Author: Adam Rice <ricea@chromium.org>
Date: Tue Jan 15 14:01:13 2019

Make blink::WritableStream a pure virtual class

In preparation for adding the native implementation, rename the existing
implementation to blink::WritableStreamWrapper and make
blink::WritableStream be a virtual base class for it. When the native
implementation is added, Create() methods and other places that need to
work with the real type will check a runtime flag.

BUG=902633

Change-Id: I97c6b4e5b1461b0b3b0092773db60644b3711b5f
Reviewed-on: https://chromium-review.googlesource.com/c/1405954
Reviewed-by: Yutaka Hirano <yhirano@chromium.org>
Commit-Queue: Adam Rice <ricea@chromium.org>
Cr-Commit-Position: refs/heads/master@{#622843}
[modify] https://crrev.com/b7ece1e208de3215928a8c91d971945b83ca1267/third_party/blink/renderer/bindings/core/v8/custom/v8_writable_stream_custom.cc
[modify] https://crrev.com/b7ece1e208de3215928a8c91d971945b83ca1267/third_party/blink/renderer/core/streams/BUILD.gn
[modify] https://crrev.com/b7ece1e208de3215928a8c91d971945b83ca1267/third_party/blink/renderer/core/streams/readable_stream.cc
[modify] https://crrev.com/b7ece1e208de3215928a8c91d971945b83ca1267/third_party/blink/renderer/core/streams/transform_stream.cc
[modify] https://crrev.com/b7ece1e208de3215928a8c91d971945b83ca1267/third_party/blink/renderer/core/streams/writable_stream.cc
[modify] https://crrev.com/b7ece1e208de3215928a8c91d971945b83ca1267/third_party/blink/renderer/core/streams/writable_stream.h
[add] https://crrev.com/b7ece1e208de3215928a8c91d971945b83ca1267/third_party/blink/renderer/core/streams/writable_stream_wrapper.cc
[add] https://crrev.com/b7ece1e208de3215928a8c91d971945b83ca1267/third_party/blink/renderer/core/streams/writable_stream_wrapper.h

Sign in to add a comment