Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: b949f0f6d399dd158150f29b298f930a02d43d08 https://github.com/WebKit/WebKit/commit/b949f0f6d399dd158150f29b298f930a02d43d08 Author: Youenn Fablet <you...@apple.com> Date: 2025-03-03 (Mon, 03 Mar 2025)
Changed paths: M LayoutTests/TestExpectations A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/direct.css A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/direct.html A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/direct.js A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/direct.py A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/direct.txt A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/imported-sw.js A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/or-test/direct1.text A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/or-test/direct1.text.headers A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/or-test/direct2.text A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/or-test/direct2.text.headers A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/or-test/w3c-import.log A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/router-rules.js A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/static-router-helpers.sub.js A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/static-router-no-fetch-handler-sw.js A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/static-router-race-network-and-fetch-handler-sw.js A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/static-router-sw.js A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/static-router-sw.sub.js A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-fetch-event.https-expected.txt A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-fetch-event.https.html A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-invalid-rules.https-expected.txt A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-invalid-rules.https.html A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-main-resource.https-expected.txt A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-main-resource.https.html A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-multiple-router-registrations.https-expected.txt A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-multiple-router-registrations.https.html A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-mutiple-conditions.https-expected.txt A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-mutiple-conditions.https.html A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-no-fetch-handler.https-expected.txt A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-no-fetch-handler.https.html A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-race-network-and-fetch-handler.https-expected.txt A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-race-network-and-fetch-handler.https.html A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-request-destination.https-expected.txt A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-request-destination.https.html A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-request-method.https-expected.txt A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-request-method.https.html A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-subresource.https-expected.txt A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-subresource.https.html A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/tentative/static-router/README.md A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/tentative/static-router/static-router-resource-timing.https-expected.txt A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/tentative/static-router/static-router-resource-timing.https.html A LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/tentative/static-router/w3c-import.log M Source/WebCore/Sources.txt M Source/WebCore/WebCore.xcodeproj/project.pbxproj M Source/WebCore/workers/service/ExtendableEvent.cpp M Source/WebCore/workers/service/ExtendableEvent.h M Source/WebCore/workers/service/InstallEvent.cpp M Source/WebCore/workers/service/SWClientConnection.h M Source/WebCore/workers/service/ServiceWorkerGlobalScope.cpp M Source/WebCore/workers/service/ServiceWorkerGlobalScope.h A Source/WebCore/workers/service/ServiceWorkerRoute.cpp A Source/WebCore/workers/service/ServiceWorkerRoute.h M Source/WebCore/workers/service/WorkerSWClientConnection.cpp M Source/WebCore/workers/service/WorkerSWClientConnection.h M Source/WebCore/workers/service/context/ServiceWorkerThread.cpp M Source/WebKit/WebProcess/Storage/WebSWClientConnection.cpp M Source/WebKit/WebProcess/Storage/WebSWClientConnection.h Log Message: ----------- Implement WebProcess side of InstallEvent addRoutes rdar://144078980 https://bugs.webkit.org/show_bug.cgi?id=286914 Reviewed by Ben Nham. Add parsing of service worker routes and handling in service worker context. The data is sent up to WebSWClientConnection which rejects the promise (next patch will implement this method). * LayoutTests/TestExpectations: * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/direct.css: Added. (body): * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/direct.html: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/direct.js: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/direct.py: Added. (main): * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/direct.txt: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/imported-sw.js: Added. (key.async e): * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/or-test/direct1.text: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/or-test/direct1.text.headers: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/or-test/direct2.text: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/or-test/direct2.text.headers: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/or-test/w3c-import.log: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/router-rules.js: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/static-router-helpers.sub.js: Added. (const.get_info_from_worker.async worker.): (const.get_info_from_worker.async worker): (const.reset_info_in_worker.async worker.): (const.reset_info_in_worker.async worker): (const.scriptDir.document.currentScript.src.match.const.registerAndActivate.async test): (const.createIframe.async t): (name.return.promise_test.async t): (iframeTest): (randomString): * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/static-router-no-fetch-handler-sw.js: Added. (async e): * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/static-router-race-network-and-fetch-handler-sw.js: Added. (async e): (url.searchParams.has): * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/static-router-sw.js: Added. (async e): * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/static-router-sw.sub.js: Added. (const.recordError): (const.getRecords): (const.resetRecords): * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-fetch-event.https-expected.txt: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-fetch-event.https.html: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-invalid-rules.https-expected.txt: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-invalid-rules.https.html: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-main-resource.https-expected.txt: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-main-resource.https.html: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-multiple-router-registrations.https-expected.txt: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-multiple-router-registrations.https.html: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-mutiple-conditions.https-expected.txt: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-mutiple-conditions.https.html: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-no-fetch-handler.https-expected.txt: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-no-fetch-handler.https.html: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-race-network-and-fetch-handler.https-expected.txt: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-race-network-and-fetch-handler.https.html: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-request-destination.https-expected.txt: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-request-destination.https.html: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-request-method.https-expected.txt: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-request-method.https.html: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-subresource.https-expected.txt: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/static-router-subresource.https.html: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/tentative/static-router/README.md: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/tentative/static-router/static-router-resource-timing.https-expected.txt: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/tentative/static-router/static-router-resource-timing.https.html: Added. * LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/tentative/static-router/w3c-import.log: Added. * Source/WebCore/Sources.txt: * Source/WebCore/WebCore.xcodeproj/project.pbxproj: * Source/WebCore/workers/service/ExtendableEvent.cpp: (WebCore::ExtendableEvent::addExtendLifetimePromise): (WebCore::ExtendableEvent::whenAllExtendLifetimePromisesAreSettled): * Source/WebCore/workers/service/ExtendableEvent.h: (WebCore::ExtendableEvent::isWaiting const): * Source/WebCore/workers/service/InstallEvent.cpp: (WebCore::toServiceWorkerRoutePattern): (WebCore::toServiceWorkerRouteCondition): (WebCore::toServiceWorkerRoute): (WebCore::verifyRouterCondition): (WebCore::addServiceWorkerRoute): (WebCore::InstallEvent::addRoutes): * Source/WebCore/workers/service/SWClientConnection.h: * Source/WebCore/workers/service/ServiceWorkerContextData.h: * Source/WebCore/workers/service/ServiceWorkerGlobalScope.cpp: (WebCore::ServiceWorkerGlobalScope::storeEventTypesToHandle): * Source/WebCore/workers/service/ServiceWorkerGlobalScope.h: * Source/WebCore/workers/service/ServiceWorkerRoute.cpp: Added. (WebCore::validateURLPatternComponent): (WebCore::validateServiceWorkerRouteCondition): (WebCore::validateServiceWorkerRoute): (WebCore::matchURLPatternComponent): (WebCore::matchURLPattern): (WebCore::matchRouterCondition): (WebCore::ServiceWorkerRouteCondition::isolatedCopy): (WebCore::ServiceWorkerRouteCondition::copy const): (WebCore::ServiceWorkerRoutePattern::isolatedCopy): (WebCore::crossThreadCopyRouterSource): (WebCore::ServiceWorkerRoute::isolatedCopy): * Source/WebCore/workers/service/ServiceWorkerRoute.h: Added. (WebCore::ServiceWorkerRoute::copy const): * Source/WebCore/workers/service/WorkerSWClientConnection.cpp: (WebCore::WorkerSWClientConnection::addRoutes): * Source/WebCore/workers/service/WorkerSWClientConnection.h: * Source/WebCore/workers/service/context/ServiceWorkerThread.cpp: (WebCore::ServiceWorkerThread::queueTaskToFireInstallEvent): (WebCore::ServiceWorkerThread::finishedEvaluatingScript): (WebCore::createInstallEvent): Deleted. * Source/WebKit/WebProcess/Storage/WebSWClientConnection.cpp: (WebKit::WebSWClientConnection::addRoutes): * Source/WebKit/WebProcess/Storage/WebSWClientConnection.h: Canonical link: https://commits.webkit.org/291492@main To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes