Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 38bdd513e152d3f58ddea624652f00cc1e314b97
https://github.com/WebKit/WebKit/commit/38bdd513e152d3f58ddea624652f00cc1e314b97
Author: Yoav Weiss <[email protected]>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M LayoutTests/TestExpectations
M LayoutTests/imported/w3c/web-platform-tests/common/get-host-info.sub.js
M
LayoutTests/imported/w3c/web-platform-tests/speculation-rules/prefetch/cross-origin-cookies.https-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/speculation-rules/prefetch/out-of-document-rule-set.https.html
M
LayoutTests/imported/w3c/web-platform-tests/speculation-rules/prefetch/referrer-policy-from-rules.https_3-3-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/speculation-rules/prefetch/referrer-policy-from-rules.https_4-4-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/speculation-rules/prefetch/referrer-policy-from-rules.https_6-6-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/speculation-rules/prefetch/referrer-policy-from-rules.https_7-7-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/speculation-rules/prefetch/referrer-policy-not-accepted.https_2-2-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/speculation-rules/prefetch/referrer-policy-not-accepted.https_3-last-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/speculation-rules/prefetch/user-pass.https_cross-origin=true-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/speculation-rules/speculation-tags/cross-site-prefetch.https-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/speculation-rules/speculation-tags/cross-site-to-same-site-redirection-prefetch.https-expected.txt
M LayoutTests/platform/gtk/TestExpectations
M LayoutTests/platform/win/TestExpectations
M LayoutTests/platform/wpe/TestExpectations
M Source/WebCore/dom/Document.cpp
M Source/WebCore/dom/Document.h
M Source/WebCore/dom/SpeculationRulesMatcher.h
M Source/WebCore/html/HTMLAnchorElement.cpp
M Source/WebCore/html/HTMLAnchorElement.h
M Source/WebCore/loader/DocumentPrefetcher.cpp
M Source/WebCore/loader/DocumentPrefetcher.h
M Source/WebCore/loader/FrameLoader.cpp
M Source/WebCore/loader/FrameLoader.h
M Source/WebCore/loader/SpeculationRules.cpp
M Source/WebCore/loader/SpeculationRules.h
Log Message:
-----------
Speculation Rules: fix referrer-policy tests
https://bugs.webkit.org/show_bug.cgi?id=300608
Reviewed by Alex Christensen.
The current referrer-policy speculation rules tests are failing for multiple
reasons:
* get-host-info is out-of-date and they use undefined parts of it.
* Invalid referrer-policy doesn't currently prevent a prefetch from happening.
This PR fixes that by manually importing the missing parts of get-host-info,
and by aligning the implementation to the spec.
No new tests, but fixing expectations on existing tests.
* LayoutTests/TestExpectations: Remove referrer-policy as expected failure.
* LayoutTests/imported/w3c/web-platform-tests/common/get-host-info.sub.js:
(get_host_info): Update to the latest.
*
LayoutTests/imported/w3c/web-platform-tests/speculation-rules/prefetch/cross-origin-cookies.https-expected.txt:
Adjusted expectations.
*
LayoutTests/imported/w3c/web-platform-tests/speculation-rules/prefetch/out-of-document-rule-set.https.html:
Removed no-longer needed difference from upstream WPTs.
*
LayoutTests/imported/w3c/web-platform-tests/speculation-rules/prefetch/referrer-policy-from-rules.https_3-3-expected.txt:
Progression.
*
LayoutTests/imported/w3c/web-platform-tests/speculation-rules/prefetch/referrer-policy-from-rules.https_4-4-expected.txt:
Progression.
*
LayoutTests/imported/w3c/web-platform-tests/speculation-rules/prefetch/referrer-policy-from-rules.https_6-6-expected.txt:
Progression.
*
LayoutTests/imported/w3c/web-platform-tests/speculation-rules/prefetch/referrer-policy-from-rules.https_7-7-expected.txt:
Progression.
*
LayoutTests/imported/w3c/web-platform-tests/speculation-rules/prefetch/referrer-policy-not-accepted.https_2-2-expected.txt:
Progression.
*
LayoutTests/imported/w3c/web-platform-tests/speculation-rules/prefetch/referrer-policy-not-accepted.https_3-last-expected.txt:
Progression.
*
LayoutTests/imported/w3c/web-platform-tests/speculation-rules/prefetch/user-pass.https_cross-origin=true-expected.txt:
Adjusted expectations.
*
LayoutTests/imported/w3c/web-platform-tests/speculation-rules/speculation-tags/cross-site-prefetch.https-expected.txt:
Adjusted expectations.
*
LayoutTests/imported/w3c/web-platform-tests/speculation-rules/speculation-tags/cross-site-to-same-site-redirection-prefetch.https-expected.txt:
Adjusted expectations.
* LayoutTests/platform/gtk/TestExpectations: Remove referrer-policy as expected
failure.
* LayoutTests/platform/win/TestExpectations: Remove referrer-policy as expected
failure.
* LayoutTests/platform/wpe/TestExpectations: Remove referrer-policy as expected
failure.
* Source/WebCore/dom/Document.cpp:
(WebCore::Document::prefetch): Pass ReferrerPolicy instead of String.
* Source/WebCore/dom/Document.h:
* Source/WebCore/dom/SpeculationRulesMatcher.h:
* Source/WebCore/html/HTMLAnchorElement.cpp:
(WebCore::HTMLAnchorElement::setShouldBePrefetched): Pass ReferrerPolicy
instead of String.
(WebCore::HTMLAnchorElement::checkForSpeculationRules): Pass ReferrerPolicy
instead of String.
* Source/WebCore/html/HTMLAnchorElement.h:
* Source/WebCore/loader/DocumentPrefetcher.cpp: Pass ReferrerPolicy instead of
String.
(WebCore::makePrefetchRequest):
(WebCore::DocumentPrefetcher::prefetch): Pass ReferrerPolicy instead of String.
* Source/WebCore/loader/DocumentPrefetcher.h:
* Source/WebCore/loader/FrameLoader.cpp:
(WebCore::FrameLoader::prefetch): Pass ReferrerPolicy instead of String.
* Source/WebCore/loader/FrameLoader.h:
* Source/WebCore/loader/SpeculationRules.cpp:
(WebCore::parseSingleRule): Align implementation to the spec.
* Source/WebCore/loader/SpeculationRules.h:
Canonical link: https://commits.webkit.org/301476@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