-
Notifications
You must be signed in to change notification settings - Fork 3.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add feature policy for client hints, used for third-party subresources. #16720
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Already reviewed downstream.
87d462a
to
aeba71b
Compare
0179b13
to
6e490cd
Compare
I've pinged the CL authors to check if the flakiness is something they could look at. |
6e490cd
to
831eb66
Compare
From the logs of https://tools.taskcluster.net/groups/av_5AV-US8GCEQVMLK22Dw/tasks/V3EPGIvXSHKYoK9Bb1ommA/details: Unstable results
I suspect this is like #15036, where the test isn't written to be possible to run multiple times in a row. |
https://crrev.com/c/1584400 also builds on these tests and might change the results here. I wouldn't bet on it, but I'll push that commit to this PR to see if it does have an impact. |
The logs now say: Unstable results
That is the same as before AFAICT. I've tested /client-hints/accept_ch_lifetime_same_origin_iframe.tentative.https.html locally and it does begin to fail after a few reloads. In an incognito window it then passes again but fails on reload. Some of the failures seem related to pre-existing |
This disables all client hints for third parties by default, except for the simplified UA hint. Feature Policy can then be used to delegate specific hints. Currently, only the hints which were previously being sent to third parties on Android are available for delagation. A follow- up CL adds the remaining ones. Bug: 968201 Change-Id: Idea42e814078592f3bdaec67bd931a99cfaea046 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1567927 Commit-Queue: Ian Clelland <[email protected]> Reviewed-by: Ken Buchanan <[email protected]> Reviewed-by: Yoav Weiss <[email protected]> Cr-Commit-Position: refs/heads/master@{#664347}
This allows all client hints to be potentially delegated to third-party requests. By default, no hints (Except for the simplified UA hint) are sent with any third party resource requests, but these can be enabled for specific origins through the use of Feature Policy. Bug: 968201 Change-Id: I60a94deb0e5553b85da351f08cbabfc8ae0f6e65 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1584400 Commit-Queue: Ian Clelland <[email protected]> Reviewed-by: Ken Buchanan <[email protected]> Reviewed-by: Yoav Weiss <[email protected]> Cr-Commit-Position: refs/heads/master@{#664498}
8e16855
to
932e188
Compare
Now the logs say: Unstable results
That removes two lines from the previous round. In https://wpt.fyi/results/client-hints?diff&filter=ADC&run_id=250780005&run_id=230730003 the results of these tests are unchanged. I'll submit a PR adding whitespace to the two flaky tests to see if they were already flaky. |
Probing in #17166. |
From #17166 (comment) it looks like accept_ch_lifetime_same_origin_iframe.tentative.https.html and accept_ch_lifetime_subresource.tentative.https.html were already flaky, which leaves http_equiv_accept_ch_lifetime_subresource.tentative.https.html as possibly newly flaky. |
@@ -5,6 +5,8 @@ def main(request, response): | |||
""" | |||
|
|||
response.headers.append("Access-Control-Allow-Origin", "*") | |||
response.headers.append("Access-Control-Allow-Headers", "*") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@clelland this resource is used by http_equiv_accept_ch_lifetime_subresource.tentative.https.html.
Do you think these changes could have made that test flaky?
Giving it another spin in https://tools.taskcluster.net/groups/ITD387cHQ4iP6gWIa-hugg. |
OK, the flakiness affects only Chrome and so I'm going to admin merge this and see how it fares. I've filed https://bugs.chromium.org/p/chromium/issues/detail?id=972569 to enable the tests in Chromium. |
This disables all client hints for third parties by default, except for
the simplified UA hint. Feature Policy can then be used to delegate
specific hints. Currently, only the hints which were previously being
sent to third parties on Android are available for delagation. A follow-
up CL adds the remaining ones.
Bug: 968201
Change-Id: Idea42e814078592f3bdaec67bd931a99cfaea046
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1567927
Commit-Queue: Ian Clelland <[email protected]>
Reviewed-by: Ken Buchanan <[email protected]>
Reviewed-by: Yoav Weiss <[email protected]>
Cr-Commit-Position: refs/heads/master@{#664347}
Combined by @foolip with a follow-up change: