Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 35e8180fb6a59d692d514729393ebd7f4810436a
      
https://github.com/WebKit/WebKit/commit/35e8180fb6a59d692d514729393ebd7f4810436a
  Author: Alex Christensen <[email protected]>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml
    M Source/WTF/wtf/PlatformHave.h
    M 
Source/WebKit/NetworkProcess/webtransport/cocoa/NetworkTransportSessionCocoa.mm
    M Source/WebKit/Shared/WebPreferencesDefaultValues.cpp
    M Source/WebKit/Shared/WebPreferencesDefaultValues.h
    M Tools/TestWebKitAPI/Helpers/cocoa/WebTransportServer.mm
    M Tools/TestWebKitAPI/Tests/WebKit/WKWebView/WebTransport.mm

  Log Message:
  -----------
  Remove support for WebTransport on Cocoa platforms without 
nw_webtransport_options_set_allow_joining_before_ready
https://bugs.webkit.org/show_bug.cgi?id=318692
rdar://181510062

Reviewed by Brady Eidson.

309043@main removed compile-time macros around our WebTransport implementation 
with the intent to
enable WebTransport "everywhere" in Safari Tech Preview.  However, this 
resulted in Safari Tech Preview
on old macOS enabling an incomplete and broken WebTransport implementation that 
can't be improved
because it is built on top of a Network.framework that is no longer being 
updated.

This is a step towards only enabling WebTransport on platforms where it is 
completely supported
and cleaning up the code.  
nw_webtransport_options_set_allow_joining_before_ready was a big change
in the initialization flow, so I use it as a check before returning a valid 
NetworkTransportSession.

Test: Tools/TestWebKitAPI/Tests/WebKit/WKWebView/WebTransport.mm

* Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml:
* Source/WTF/wtf/PlatformHave.h:
* 
Source/WebKit/NetworkProcess/webtransport/cocoa/NetworkTransportSessionCocoa.mm:
(WebKit::createParameters):
(WebKit::NetworkTransportSession::create):
(WebKit::NetworkTransportSession::initialize):
(WebKit::NetworkTransportSession::setupDatagramConnection):
(WebKit::NetworkTransportSession::createStream):
* Source/WebKit/Shared/WebPreferencesDefaultValues.cpp:
(WebKit::defaultWebTransportEnabled):
* Source/WebKit/Shared/WebPreferencesDefaultValues.h:
* Tools/TestWebKitAPI/Helpers/cocoa/WebTransportServer.mm:
(TestWebKitAPI::WebTransportServer::isAvailable):
* Tools/TestWebKitAPI/Tests/WebKit/WKWebView/WebTransport.mm:
(TestWebKitAPI::TEST(WebTransport, Worker)):
(TestWebKitAPI::TEST(WebTransport, ServiceWorker)):
(TestWebKitAPI::CreateStreamsBeforeReady)):

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



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

Reply via email to