Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 2b5ed40d5731db32441ac0738d69bf2b3765122b
      
https://github.com/WebKit/WebKit/commit/2b5ed40d5731db32441ac0738d69bf2b3765122b
  Author: Alex Christensen <[email protected]>
  Date:   2025-11-18 (Tue, 18 Nov 2025)

  Changed paths:
    M Source/WebCore/CMakeLists.txt
    M Source/WebCore/DerivedSources-input.xcfilelist
    M Source/WebCore/DerivedSources-output.xcfilelist
    M Source/WebCore/DerivedSources.make
    M Source/WebCore/Headers.cmake
    M Source/WebCore/Modules/streams/WritableStream.h
    M Source/WebCore/Modules/webtransport/DatagramSink.cpp
    M Source/WebCore/Modules/webtransport/DatagramSink.h
    M Source/WebCore/Modules/webtransport/WebTransport.cpp
    M Source/WebCore/Modules/webtransport/WebTransport.h
    M Source/WebCore/Modules/webtransport/WebTransport.idl
    M Source/WebCore/Modules/webtransport/WebTransportDatagramDuplexStream.cpp
    M Source/WebCore/Modules/webtransport/WebTransportDatagramDuplexStream.h
    M Source/WebCore/Modules/webtransport/WebTransportDatagramDuplexStream.idl
    A Source/WebCore/Modules/webtransport/WebTransportDatagramsWritable.cpp
    A Source/WebCore/Modules/webtransport/WebTransportDatagramsWritable.h
    A Source/WebCore/Modules/webtransport/WebTransportDatagramsWritable.idl
    A Source/WebCore/Modules/webtransport/WebTransportSendGroup.cpp
    A Source/WebCore/Modules/webtransport/WebTransportSendGroup.h
    A Source/WebCore/Modules/webtransport/WebTransportSendGroup.idl
    A Source/WebCore/Modules/webtransport/WebTransportSendOptions.h
    A Source/WebCore/Modules/webtransport/WebTransportSendOptions.idl
    M Source/WebCore/Modules/webtransport/WebTransportSendStream.cpp
    M Source/WebCore/Modules/webtransport/WebTransportSendStream.h
    M Source/WebCore/Modules/webtransport/WebTransportSendStream.idl
    M Source/WebCore/Modules/webtransport/WebTransportSession.h
    M Source/WebCore/Modules/webtransport/WorkerWebTransportSession.cpp
    M Source/WebCore/Modules/webtransport/WorkerWebTransportSession.h
    M Source/WebCore/Modules/webxr/WebXRFrame.h
    M Source/WebCore/Sources.txt
    M Source/WebCore/WebCore.xcodeproj/project.pbxproj
    M Source/WebCore/bindings/js/WebCoreBuiltinNames.h
    M Source/WebKit/NetworkProcess/webtransport/NetworkTransportSession.cpp
    M Source/WebKit/NetworkProcess/webtransport/NetworkTransportSession.h
    M 
Source/WebKit/NetworkProcess/webtransport/NetworkTransportSession.messages.in
    M 
Source/WebKit/NetworkProcess/webtransport/cocoa/NetworkTransportSessionCocoa.mm
    M Source/WebKit/Scripts/webkit/messages.py
    M Source/WebKit/Scripts/webkit/tests/MessageArgumentDescriptions.cpp
    M Source/WebKit/Shared/WTFArgumentCoders.serialization.in
    M Source/WebKit/WebProcess/Network/WebTransportSession.cpp
    M Source/WebKit/WebProcess/Network/WebTransportSession.h
    M Tools/TestWebKitAPI/Tests/WebKitCocoa/WebTransport.mm

  Log Message:
  -----------
  Replace WebTransportDatagramDuplexStream.writable with createWritable
https://bugs.webkit.org/show_bug.cgi?id=302318
rdar://164461818

Reviewed by Abrar Rahman Protyasha, Brent Fulgham, and Matthew Finkel.

This matches the current spec.  Other browsers haven't done this yet,
but I'm told they intend to.  This introduces WebTransportSendGroup.

Test: Tools/TestWebKitAPI/Tests/WebKitCocoa/WebTransport.mm

* Source/WebCore/CMakeLists.txt:
* Source/WebCore/DerivedSources-input.xcfilelist:
* Source/WebCore/DerivedSources-output.xcfilelist:
* Source/WebCore/DerivedSources.make:
* Source/WebCore/Headers.cmake:
* Source/WebCore/Modules/streams/WritableStream.h:
* Source/WebCore/Modules/webtransport/DatagramSink.cpp:
(WebCore::DatagramSink::DatagramSink):
(WebCore::DatagramSink::attachTo):
(WebCore::DatagramSink::write):
* Source/WebCore/Modules/webtransport/DatagramSink.h:
(WebCore::DatagramSink::create):
* Source/WebCore/Modules/webtransport/WebTransport.cpp:
(WebCore::WebTransport::create):
(WebCore::WebTransport::initializeOverHTTP):
(WebCore::createBidirectionalStream):
(WebCore::WebTransport::receiveBidirectionalStream):
(WebCore::WebTransport::cleanup):
(WebCore::WebTransport::datagramsWritableCreated):
(WebCore::WebTransport::createBidirectionalStream):
(WebCore::WebTransport::createUnidirectionalStream):
(WebCore::WebTransport::createSendGroup):
* Source/WebCore/Modules/webtransport/WebTransport.h:
* Source/WebCore/Modules/webtransport/WebTransport.idl:
* Source/WebCore/Modules/webtransport/WebTransportDatagramDuplexStream.cpp:
(WebCore::WebTransportDatagramDuplexStream::create):
(WebCore::WebTransportDatagramDuplexStream::WebTransportDatagramDuplexStream):
(WebCore::WebTransportDatagramDuplexStream::attachTo):
(WebCore::WebTransportDatagramDuplexStream::createWritable):
* Source/WebCore/Modules/webtransport/WebTransportDatagramDuplexStream.h:
(WebCore::WebTransportDatagramDuplexStream::writable): Deleted.
* Source/WebCore/Modules/webtransport/WebTransportDatagramDuplexStream.idl:
* Source/WebCore/Modules/webtransport/WebTransportDatagramsWritable.cpp: Added.
(WebCore::WebTransportDatagramsWritable::create):
(WebCore::WebTransportDatagramsWritable::WebTransportDatagramsWritable):
(WebCore::WebTransportDatagramsWritable::sendGroup):
(WebCore::WebTransportDatagramsWritable::setSendGroup):
(WebCore::WebTransportDatagramsWritable::sendOrder):
(WebCore::WebTransportDatagramsWritable::setSendOrder):
* Source/WebCore/Modules/webtransport/WebTransportDatagramsWritable.h: Copied 
from Source/WebCore/Modules/webtransport/DatagramSink.h.
(isType):
* Source/WebCore/Modules/webtransport/WebTransportDatagramsWritable.idl: Copied 
from Source/WebCore/Modules/webtransport/WebTransportSendStream.idl.
* Source/WebCore/Modules/webtransport/WebTransportSendGroup.cpp: Copied from 
Source/WebCore/Modules/webtransport/WebTransportSendStream.cpp.
(WebCore::WebTransportSendGroup::create):
(WebCore::WebTransportSendGroup::WebTransportSendGroup):
(WebCore::WebTransportSendGroup::getStats):
(WebCore::WebTransportSendGroup::transport):
* Source/WebCore/Modules/webtransport/WebTransportSendGroup.h: Copied from 
Source/WebCore/Modules/webtransport/DatagramSink.h.
(WebCore::WebTransportSendGroup::identifier const):
* Source/WebCore/Modules/webtransport/WebTransportSendGroup.idl: Copied from 
Source/WebCore/Modules/webtransport/WebTransportSendStream.idl.
* Source/WebCore/Modules/webtransport/WebTransportSendOptions.h: Copied from 
Source/WebCore/Modules/webtransport/WebTransportSendStream.idl.
* Source/WebCore/Modules/webtransport/WebTransportSendOptions.idl: Copied from 
Source/WebCore/Modules/webtransport/WebTransportSendStream.idl.
* Source/WebCore/Modules/webtransport/WebTransportSendStream.cpp:
(WebCore::WebTransportSendStream::create):
(WebCore::WebTransportSendStream::WebTransportSendStream):
(WebCore::WebTransportSendStream::getStats):
(WebCore::WebTransportSendStream::sendGroup):
(WebCore::WebTransportSendStream::setSendGroup):
* Source/WebCore/Modules/webtransport/WebTransportSendStream.h:
* Source/WebCore/Modules/webtransport/WebTransportSendStream.idl:
* Source/WebCore/Modules/webtransport/WebTransportSession.h:
* Source/WebCore/Modules/webtransport/WorkerWebTransportSession.cpp:
(WebCore::WorkerWebTransportSession::sendDatagram):
(WebCore::WorkerWebTransportSession::getSendGroupStats):
* Source/WebCore/Modules/webtransport/WorkerWebTransportSession.h:
* Source/WebCore/Modules/webxr/WebXRFrame.h:
* Source/WebCore/Sources.txt:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/bindings/js/WebCoreBuiltinNames.h:
* Source/WebKit/NetworkProcess/webtransport/NetworkTransportSession.cpp:
(WebKit::NetworkTransportSession::getSendGroupStats):
(WebKit::NetworkTransportSession::sendDatagram):
* Source/WebKit/NetworkProcess/webtransport/NetworkTransportSession.h:
* Source/WebKit/NetworkProcess/webtransport/NetworkTransportSession.messages.in:
* 
Source/WebKit/NetworkProcess/webtransport/cocoa/NetworkTransportSessionCocoa.mm:
(WebKit::NetworkTransportSession::sendDatagram):
* Source/WebKit/Scripts/webkit/messages.py:
(serialized_identifiers):
(headers_for_type):
* Source/WebKit/Scripts/webkit/tests/MessageArgumentDescriptions.cpp:
(IPC::serializedIdentifiers):
* Source/WebKit/Shared/WTFArgumentCoders.serialization.in:
* Source/WebKit/WebProcess/Network/WebTransportSession.cpp:
(WebKit::WebTransportSession::sendDatagram):
(WebKit::WebTransportSession::getSendGroupStats):
* Source/WebKit/WebProcess/Network/WebTransportSession.h:
* Tools/TestWebKitAPI/Tests/WebKitCocoa/WebTransport.mm:
(TestWebKitAPI::TEST(WebTransport, Datagram)):
(TestWebKitAPI::TEST(WebTransport, NetworkProcessCrash)):
(TestWebKitAPI::TEST(WebTransport, CreateStreamsBeforeReady)):

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



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

Reply via email to