Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 50359d9c2caefaf74470bb65798b902460ee4376
      
https://github.com/WebKit/WebKit/commit/50359d9c2caefaf74470bb65798b902460ee4376
  Author: Youenn Fablet <[email protected]>
  Date:   2026-02-03 (Tue, 03 Feb 2026)

  Changed paths:
    M LayoutTests/streams/transfer-internal-expected.txt
    M LayoutTests/streams/transfer-internal.html
    M Source/WebCore/Modules/filesystem/FileSystemWritableFileStreamSink.cpp
    M Source/WebCore/Modules/filesystem/FileSystemWritableFileStreamSink.h
    M Source/WebCore/Modules/mediastream/VideoTrackGenerator.cpp
    M Source/WebCore/Modules/mediastream/VideoTrackGenerator.h
    M Source/WebCore/Modules/streams/StreamTransferUtilities.cpp
    M Source/WebCore/Modules/streams/StreamTransferUtilities.h
    M Source/WebCore/Modules/streams/WritableStream.idl
    A Source/WebCore/Modules/streams/WritableStreamSink.cpp
    M Source/WebCore/Modules/streams/WritableStreamSink.h
    M Source/WebCore/Modules/streams/WritableStreamSink.idl
    M Source/WebCore/Modules/webtransport/DatagramSink.h
    M Source/WebCore/Modules/webtransport/WebTransportSendStreamSink.cpp
    M Source/WebCore/Modules/webtransport/WebTransportSendStreamSink.h
    M Source/WebCore/Sources.txt
    M Source/WebCore/WebCore.xcodeproj/project.pbxproj
    M Source/WebCore/testing/Internals.cpp
    M Source/WebCore/testing/Internals.h
    M Source/WebCore/testing/Internals.idl

  Log Message:
  -----------
  Implement SetUpCrossRealTransformWritable
rdar://169174026
https://bugs.webkit.org/show_bug.cgi?id=306518

Reviewed by Chris Dumez.

Follow the spec by introducing 
https://streams.spec.whatwg.org/#abstract-opdef-setupcrossrealmtransformwritable
 and related methods.
This will be useful to implement transferring of readable and writable streams.

To add sufficient support, we have to beef up WritableStreamSink.
In particular, we have to be able to support asynchronous aborting.
We do this by updating WritableStreamSink IDL.

We also have to expose a way to error the writable from the sink.
We add support for exposing the controller given by WritableStream to its sink 
at start time.
We can then call errorIfNeeded on the controller whenever the 
WritableStreamSink is start.

We implement this support like we do for ReadableStreamSource.
The controller is kept alive for the lifetime of the JSWritableStreamSink.
The JSWritableStreamSink is kept alive for the lifetime of its 
InternalWritableStream, which is kept alive by its WritableStream as a 
DOMGuarded object.

Covered by added API test, using new internal API.

Canonical link: https://commits.webkit.org/306689@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to