Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b95b9b255ec4b8494fe03dde36118e18f2be1d71
      
https://github.com/WebKit/WebKit/commit/b95b9b255ec4b8494fe03dde36118e18f2be1d71
  Author: Chris Dumez <[email protected]>
  Date:   2026-04-29 (Wed, 29 Apr 2026)

  Changed paths:
    M Source/WebCore/workers/service/server/SWServer.cpp
    M Tools/TestWebKitAPI/Tests/WebKit/WKWebView/ServiceWorkerBasic.mm

  Log Message:
  -----------
  REGRESSION (312195@main): ServiceWorkerProcessSwapWithNoDelay and 
WindowClientNavigate API tests failing
https://bugs.webkit.org/show_bug.cgi?id=313642

Reviewed by Youenn Fablet.

After 312195@main made service worker registration imports lazy, the origin list
became available much faster than before. This changed timing so that ITP's
ResourceLoadStatisticsStore::removeDataRecords() could discover and clear
service worker registrations before the tests' navigations completed.

Fix by disabling ITP in both tests, matching the pattern already used by
other service worker tests in this file.

Apply this to other tests in this file as well since this is likely causing
flakiness for them too.

Also fix a logging bug introduced in 312195@main where RELEASE_LOG read
result->size() after the HashSet had been moved from, always printing 0.

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

* Source/WebCore/workers/service/server/SWServer.cpp:
(WebCore::SWServer::SWServer):
* Tools/TestWebKitAPI/Tests/WebKit/WKWebView/ServiceWorkerBasic.mm:
((ServiceWorkers, UserAgentOverride)):
((ServiceWorkers, RestoreFromDisk)):
((ServiceWorkers, UpdateCheckAfterRestoreFromDisk)):
((ServiceWorkers, CheckRegistrationWithoutMainScript)):
((ServiceWorkers, CheckRegistrationWithoutImportedScript)):
((ServiceWorkers, ThirdPartyRestoredFromDisk)):
((ServiceWorkers, CacheStorageRestoreFromDisk)):
((ServiceWorkers, FetchAfterRestoreFromDisk)):
((ServiceWorkers, InterceptFirstLoadAfterRestoreFromDisk)):
((ServiceWorkers, MainThreadSWInterceptsLoad)):
((ServiceWorkers, WaitForPolicyDelegate)):
((ServiceWorkers, SWProcessConnectionCreation)):
((ServiceWorkers, ServiceWorkerProcessCreation)):
((ServiceWorkers, ServiceWorkerCacheAccessEphemeralSession)):
((ServiceWorkers, DifferentSessionsUseDifferentRegistrations)):
((ServiceWorkers, ServiceWorkerAndCacheStorageDefaultDirectories)):
((ServiceWorkers, ServiceWorkerAndCacheStorageSpecificDirectories)):
((ServiceWorkers, ProcessPerSite)):
((ServiceWorkers, ParallelProcessLaunch)):
((ServiceWorkers, LockdownModeInSharedWorkerProcess)):
((ServiceWorkers, ThrottleCrash)):
((ServiceWorkers, LoadData)):
((ServiceWorkers, SuspendNetworkProcess)):
((ServiceWorkers, V2DatabaseUpgrade)):
((ServiceWorkers, ProcessPerSession)):
((ServiceWorkers, ContentRuleList)):
((ServiceWorkers, ClearDOMCacheAlsoIncludesServiceWorkerRegistrations)):
((ServiceWorkers, WebProcessCache)):
((ServiceWorker, ExtensionServiceWorker)):
((ServiceWorker, ExtensionServiceWorkerDisableCORS)):
((ServiceWorker, ExtensionServiceWorkerWithModules)):
((ServiceWorker, ExtensionServiceWorkerFailureBadScript)):
((ServiceWorker, ExtensionServiceWorkerFailureBadURL)):
((ServiceWorker, ExtensionServiceWorkerFailureViewClosed)):
((ServiceWorker, ExtensionServiceWorkerFailureViewDestroyed)):
((ServiceWorker, RemovalOfSameRegistrableDomainButDifferentOrigin)):
((ServiceWorkers, CacheStorageNetworkProcessCrash)):
((ServiceWorker, ServiceWorkerWindowClientFocus)):
((ServiceWorker, ServiceWorkerWindowClientFocusRequiresUserGesture)):
((ServiceWorker, openWindowWithoutDelegate)):
((ServiceWorker, WindowClientNavigate)):
((ServiceWorker, WindowClientNavigateCrossOrigin)):
((ServiceWorker, OpenWindowWebsiteDataStoreDelegate)):
((ServiceWorker, OpenWindowCOOP)):
((ServiceWorker, FocusNotYetLoadedClient)):
((ServiceWorkers, ServiceWorkerStorageTiming)):
((ServiceWorker, ServiceWorkerProcessSwapWithNoDelay)):
((ServiceWorkers, ServiceWorkerCacheReference)):
((ServiceWorker, ServiceWorkerIdleOnMemoryPressure)):
((ServiceWorker, ServiceWorkerReadableStreamDownloadCancel)):

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



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

Reply via email to