Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 572b27ab8d5202df1c58f781ea58b9fc4d4ddc54
https://github.com/WebKit/WebKit/commit/572b27ab8d5202df1c58f781ea58b9fc4d4ddc54
Author: Youenn Fablet <[email protected]>
Date: 2024-08-31 (Sat, 31 Aug 2024)
Changed paths:
M LayoutTests/TestExpectations
M
LayoutTests/http/wpt/service-workers/fetch-service-worker-navigation-preload.https-expected.txt
M
LayoutTests/http/wpt/service-workers/fetch-service-worker-navigation-preload.https.html
M
LayoutTests/http/wpt/service-workers/fetch-service-worker-preload-cache.https-expected.txt
M
LayoutTests/http/wpt/service-workers/fetch-service-worker-preload-cache.https.html
M
LayoutTests/http/wpt/service-workers/fetch-service-worker-preload-changing-request.https-expected.txt
M
LayoutTests/http/wpt/service-workers/fetch-service-worker-preload-changing-request.https.html
M
LayoutTests/http/wpt/service-workers/fetch-service-worker-preload-download-through-direct-preload.https.html
M
LayoutTests/http/wpt/service-workers/fetch-service-worker-preload-download.https.html
M
LayoutTests/http/wpt/service-workers/fetch-service-worker-preload-use-download-and-clone.https-expected.txt
M
LayoutTests/http/wpt/service-workers/fetch-service-worker-preload-use-download-and-clone.https.html
M
LayoutTests/http/wpt/service-workers/fetch-service-worker-preload-use-download.https-expected.txt
M
LayoutTests/http/wpt/service-workers/fetch-service-worker-preload-use-download.https.html
M
LayoutTests/http/wpt/service-workers/fetch-service-worker-preload-worker.js
M
LayoutTests/http/wpt/service-workers/fetch-service-worker-preload.https-expected.txt
M
LayoutTests/http/wpt/service-workers/fetch-service-worker-preload.https.html
M
LayoutTests/http/wpt/service-workers/navigation-preload-without-worker-connection.https.html
M
LayoutTests/http/wpt/service-workers/resources/fetch-service-worker-preload-script.py
M LayoutTests/http/wpt/service-workers/resources/routines.js
R
LayoutTests/http/wpt/service-workers/simple-fetch-service-worker-preload-worker.js
M LayoutTests/platform/ios/TestExpectations
M
LayoutTests/platform/ios/http/wpt/service-workers/fetch-service-worker-preload-use-download-and-clone.https-expected.txt
M
LayoutTests/platform/ios/http/wpt/service-workers/fetch-service-worker-preload-use-download.https-expected.txt
M LayoutTests/platform/mac/TestExpectations
Log Message:
-----------
[ iOS MacOS ] 4x http/wpt/service-workers/fetch-service-worker-preload*
(layout-tests) are flaky failures
https://bugs.webkit.org/show_bug.cgi?id=277720
rdar://133334390
Reviewed by Chris Dumez.
These tests are trying to trigger a navigation load on an activating but not
yet activated service worker.
But the activation is racy and may happen before the navigation load gets to
network process.
If that happens, the test is not using preloads and fails.
To prevent this race, we now do the following:
1. Setup a service worker registration and wait until the corresponding service
worker is activated.
2. Stop all service workers.
3. At this point, the registration is there, the worker is activated but is not
running. Preloads will be triggered in that case.
This prevents the race and ensures we are still doing preloads.
This patch is also tyding a bit some tests.
In particular, we alway set the preload response (instead of relying on
nothing).
This triggers updating the download test expectation (going froma size 7 to 11).
We also await the fetch that sets the preload response to remove another
potential race.
Given we no longer need to trigger activation, we can simplify
etch-service-worker-preload-worker.js and we introduce a routine
to create an activated but not running service worker in
LayoutTests/http/wpt/service-workers/resources/routines.js.
We also simplify fetch-service-worker-preload-script.py to use the token and
not a digest, as this seems to trigger issues when iterating a lot on the tests.
Instead, we pass the token and a specific path to stash.
* LayoutTests/TestExpectations:
*
LayoutTests/http/wpt/service-workers/fetch-service-worker-navigation-preload.https-expected.txt:
*
LayoutTests/http/wpt/service-workers/fetch-service-worker-navigation-preload.https.html:
*
LayoutTests/http/wpt/service-workers/fetch-service-worker-preload-cache.https-expected.txt:
*
LayoutTests/http/wpt/service-workers/fetch-service-worker-preload-cache.https.html:
*
LayoutTests/http/wpt/service-workers/fetch-service-worker-preload-changing-request.https-expected.txt:
*
LayoutTests/http/wpt/service-workers/fetch-service-worker-preload-changing-request.https.html:
*
LayoutTests/http/wpt/service-workers/fetch-service-worker-preload-download-through-direct-preload.https.html:
*
LayoutTests/http/wpt/service-workers/fetch-service-worker-preload-download.https.html:
*
LayoutTests/http/wpt/service-workers/fetch-service-worker-preload-use-download-and-clone.https-expected.txt:
*
LayoutTests/http/wpt/service-workers/fetch-service-worker-preload-use-download-and-clone.https.html:
*
LayoutTests/http/wpt/service-workers/fetch-service-worker-preload-use-download.https-expected.txt:
*
LayoutTests/http/wpt/service-workers/fetch-service-worker-preload-use-download.https.html:
* LayoutTests/http/wpt/service-workers/fetch-service-worker-preload-worker.js:
(oninstall): Deleted.
(onmessage): Deleted.
(onactivate): Deleted.
*
LayoutTests/http/wpt/service-workers/fetch-service-worker-preload.https-expected.txt:
* LayoutTests/http/wpt/service-workers/fetch-service-worker-preload.https.html:
*
LayoutTests/http/wpt/service-workers/navigation-preload-without-worker-connection.https.html:
*
LayoutTests/http/wpt/service-workers/resources/fetch-service-worker-preload-script.py:
(main):
* LayoutTests/http/wpt/service-workers/resources/routines.js:
(async setupActivatedButNotRunningServiceWorker):
*
LayoutTests/http/wpt/service-workers/simple-fetch-service-worker-preload-worker.js:
Removed.
* LayoutTests/platform/ios/TestExpectations:
*
LayoutTests/platform/ios/http/wpt/service-workers/fetch-service-worker-preload-use-download-and-clone.https-expected.txt:
*
LayoutTests/platform/ios/http/wpt/service-workers/fetch-service-worker-preload-use-download.https-expected.txt:
* LayoutTests/platform/mac/TestExpectations:
Canonical link: https://commits.webkit.org/283017@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes