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