Diff
Modified: trunk/LayoutTests/ChangeLog (221996 => 221997)
--- trunk/LayoutTests/ChangeLog 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/LayoutTests/ChangeLog 2017-09-13 22:47:18 UTC (rev 221997)
@@ -1,3 +1,16 @@
+2017-09-13 Matt Lewis <jlew...@apple.com>
+
+ Unreviewed, rolling out r221976.
+
+ The test introduced was flaky from point of addition.
+
+ Reverted changeset:
+
+ "Introduce Storage Access API (document parts) as an
+ experimental feature"
+ https://bugs.webkit.org/show_bug.cgi?id=175759
+ http://trac.webkit.org/changeset/221976
+
2017-09-13 Said Abou-Hallawa <sabouhall...@apple.com>
Followup (r221805): Address comments and add more tests
Deleted: trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-and-deny-storage-access-cross-origin-iframe-expected.txt (221996 => 221997)
--- trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-and-deny-storage-access-cross-origin-iframe-expected.txt 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-and-deny-storage-access-cross-origin-iframe-expected.txt 2017-09-13 22:47:18 UTC (rev 221997)
@@ -1,20 +0,0 @@
-main frame - didStartProvisionalLoadForFrame
-main frame - didCommitLoadForFrame
-frame "theIframe" - didStartProvisionalLoadForFrame
-main frame - didFinishDocumentLoadForFrame
-frame "theIframe" - didCommitLoadForFrame
-frame "theIframe" - didFinishDocumentLoadForFrame
-CONSOLE MESSAGE: line 70: PASS document.hasStorageAccess was denied.
-frame "theIframe" - didHandleOnloadEventsForFrame
-main frame - didHandleOnloadEventsForFrame
-frame "theIframe" - didFinishLoadForFrame
-main frame - didFinishLoadForFrame
-Tests that cross-origin iframe storage access is denied if the iframe is not sandboxed.
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
Deleted: trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-and-deny-storage-access-cross-origin-iframe.html (221996 => 221997)
--- trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-and-deny-storage-access-cross-origin-iframe.html 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-and-deny-storage-access-cross-origin-iframe.html 2017-09-13 22:47:18 UTC (rev 221997)
@@ -1,35 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
- <script src=""
- <script src=""
- <script>
- description("Tests that cross-origin iframe storage access is denied if the iframe is not sandboxed.");
- jsTestIsAsync = true;
-
- function activateElement(elementId) {
- var element = document.getElementById(elementId);
- var centerX = element.offsetLeft + element.offsetWidth / 2;
- var centerY = element.offsetTop + element.offsetHeight / 2;
- UIHelper.activateAt(centerX, centerY).then(
- function () {
- if (window.eventSender)
- eventSender.keyDown("escape");
- finishJSTest();
- },
- function () {
- testFailed("Promise rejected.");
- finishJSTest();
- }
- );
- }
-
- function runTest() {
- activateElement("theIframe");
- }
- </script>
-</head>
-<body>
- <iframe _onload_="runTest()" id="theIframe" src=""
-</body>
-</html>
\ No newline at end of file
Deleted: trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-and-deny-storage-access-cross-origin-sandboxed-iframe-expected.txt (221996 => 221997)
--- trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-and-deny-storage-access-cross-origin-sandboxed-iframe-expected.txt 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-and-deny-storage-access-cross-origin-sandboxed-iframe-expected.txt 2017-09-13 22:47:18 UTC (rev 221997)
@@ -1,22 +0,0 @@
-main frame - didStartProvisionalLoadForFrame
-main frame - didCommitLoadForFrame
-frame "theIframe" - didStartProvisionalLoadForFrame
-main frame - didFinishDocumentLoadForFrame
-frame "theIframe" - didCommitLoadForFrame
-frame "theIframe" - didFinishDocumentLoadForFrame
-CONFIRM: Do you want to use your ID on ?
-CONFIRM: Do you want to use your ID on ?
-CONSOLE MESSAGE: line 70: PASS document.hasStorageAccess was denied.
-frame "theIframe" - didHandleOnloadEventsForFrame
-main frame - didHandleOnloadEventsForFrame
-frame "theIframe" - didFinishLoadForFrame
-main frame - didFinishLoadForFrame
-Tests that cross-origin iframe storage access is denied if the iframe is sandboxed, has the allow token, but the user opts out.
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
Deleted: trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-and-deny-storage-access-cross-origin-sandboxed-iframe.html (221996 => 221997)
--- trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-and-deny-storage-access-cross-origin-sandboxed-iframe.html 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-and-deny-storage-access-cross-origin-sandboxed-iframe.html 2017-09-13 22:47:18 UTC (rev 221997)
@@ -1,35 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
- <script src=""
- <script src=""
- <script>
- description("Tests that cross-origin iframe storage access is denied if the iframe is sandboxed, has the allow token, but the user opts out.");
- jsTestIsAsync = true;
-
- function activateElement(elementId) {
- var element = document.getElementById(elementId);
- var centerX = element.offsetLeft + element.offsetWidth / 2;
- var centerY = element.offsetTop + element.offsetHeight / 2;
- UIHelper.activateAt(centerX, centerY).then(
- function () {
- if (window.eventSender)
- eventSender.keyDown("escape");
- finishJSTest();
- },
- function () {
- testFailed("Promise rejected.");
- finishJSTest();
- }
- );
- }
-
- function runTest() {
- activateElement("theIframe");
- }
- </script>
-</head>
-<body>
- <iframe sandbox="allow-storage-access-by-user-activation allow-scripts allow-same-origin allow-modals" _onload_="runTest()" id="theIframe" src=""
-</body>
-</html>
\ No newline at end of file
Deleted: trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-and-grant-storage-access-cross-origin-iframe-expected.txt (221996 => 221997)
--- trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-and-grant-storage-access-cross-origin-iframe-expected.txt 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-and-grant-storage-access-cross-origin-iframe-expected.txt 2017-09-13 22:47:18 UTC (rev 221997)
@@ -1,20 +0,0 @@
-main frame - didStartProvisionalLoadForFrame
-main frame - didCommitLoadForFrame
-frame "theIframe" - didStartProvisionalLoadForFrame
-main frame - didFinishDocumentLoadForFrame
-frame "theIframe" - didCommitLoadForFrame
-frame "theIframe" - didFinishDocumentLoadForFrame
-CONSOLE MESSAGE: line 70: PASS document.hasStorageAccess was denied.
-frame "theIframe" - didHandleOnloadEventsForFrame
-main frame - didHandleOnloadEventsForFrame
-frame "theIframe" - didFinishLoadForFrame
-main frame - didFinishLoadForFrame
-Tests that cross-origin iframe storage access is denied if the iframe is not sandboxed.
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
Deleted: trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-and-grant-storage-access-cross-origin-iframe.html (221996 => 221997)
--- trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-and-grant-storage-access-cross-origin-iframe.html 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-and-grant-storage-access-cross-origin-iframe.html 2017-09-13 22:47:18 UTC (rev 221997)
@@ -1,35 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
- <script src=""
- <script src=""
- <script>
- description("Tests that cross-origin iframe storage access is denied if the iframe is not sandboxed.");
- jsTestIsAsync = true;
-
- function activateElement(elementId) {
- var element = document.getElementById(elementId);
- var centerX = element.offsetLeft + element.offsetWidth / 2;
- var centerY = element.offsetTop + element.offsetHeight / 2;
- UIHelper.activateAt(centerX, centerY).then(
- function () {
- if (window.eventSender)
- eventSender.keyDown("escape");
- finishJSTest();
- },
- function () {
- testFailed("Promise rejected.");
- finishJSTest();
- }
- );
- }
-
- function runTest() {
- activateElement("theIframe");
- }
- </script>
-</head>
-<body>
- <iframe _onload_="runTest()" id="theIframe" src=""
-</body>
-</html>
\ No newline at end of file
Deleted: trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-and-grant-storage-access-cross-origin-sandboxed-iframe-expected.txt (221996 => 221997)
--- trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-and-grant-storage-access-cross-origin-sandboxed-iframe-expected.txt 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-and-grant-storage-access-cross-origin-sandboxed-iframe-expected.txt 2017-09-13 22:47:18 UTC (rev 221997)
@@ -1,21 +0,0 @@
-main frame - didStartProvisionalLoadForFrame
-main frame - didCommitLoadForFrame
-frame "theIframe" - didStartProvisionalLoadForFrame
-main frame - didFinishDocumentLoadForFrame
-frame "theIframe" - didCommitLoadForFrame
-frame "theIframe" - didFinishDocumentLoadForFrame
-CONFIRM: Do you want to use your ID on ?
-CONSOLE MESSAGE: line 66: PASS document.hasStorageAccess was granted.
-frame "theIframe" - didHandleOnloadEventsForFrame
-main frame - didHandleOnloadEventsForFrame
-frame "theIframe" - didFinishLoadForFrame
-main frame - didFinishLoadForFrame
-Tests that cross-origin iframe storage access is granted if the iframe is sandboxed, has the allow token, and the user opts in.
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
Deleted: trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-and-grant-storage-access-cross-origin-sandboxed-iframe.html (221996 => 221997)
--- trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-and-grant-storage-access-cross-origin-sandboxed-iframe.html 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-and-grant-storage-access-cross-origin-sandboxed-iframe.html 2017-09-13 22:47:18 UTC (rev 221997)
@@ -1,35 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
- <script src=""
- <script src=""
- <script>
- description("Tests that cross-origin iframe storage access is granted if the iframe is sandboxed, has the allow token, and the user opts in.");
- jsTestIsAsync = true;
-
- function activateElement(elementId) {
- var element = document.getElementById(elementId);
- var centerX = element.offsetLeft + element.offsetWidth / 2;
- var centerY = element.offsetTop + element.offsetHeight / 2;
- UIHelper.activateAt(centerX, centerY).then(
- function () {
- if (window.eventSender)
- eventSender.keyDown("escape");
- finishJSTest();
- },
- function () {
- testFailed("Promise rejected.");
- finishJSTest();
- }
- );
- }
-
- function runTest() {
- activateElement("theIframe");
- }
- </script>
-</head>
-<body>
- <iframe sandbox="allow-storage-access-by-user-activation allow-scripts allow-same-origin allow-modals" _onload_="runTest()" id="theIframe" src=""
-</body>
-</html>
\ No newline at end of file
Deleted: trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-cross-origin-sandboxed-iframe-with-unique-origin-expected.txt (221996 => 221997)
--- trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-cross-origin-sandboxed-iframe-with-unique-origin-expected.txt 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-cross-origin-sandboxed-iframe-with-unique-origin-expected.txt 2017-09-13 22:47:18 UTC (rev 221997)
@@ -1,20 +0,0 @@
-main frame - didStartProvisionalLoadForFrame
-main frame - didCommitLoadForFrame
-frame "theIframe" - didStartProvisionalLoadForFrame
-main frame - didFinishDocumentLoadForFrame
-frame "theIframe" - didCommitLoadForFrame
-frame "theIframe" - didFinishDocumentLoadForFrame
-CONSOLE MESSAGE: line 70: PASS document.hasStorageAccess was denied.
-frame "theIframe" - didHandleOnloadEventsForFrame
-main frame - didHandleOnloadEventsForFrame
-frame "theIframe" - didFinishLoadForFrame
-main frame - didFinishLoadForFrame
-Tests that cross-origin iframe storage access is denied if the iframe is sandboxed and has the unique origin because it lacks the allow-same-origin token.
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
Deleted: trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-cross-origin-sandboxed-iframe-with-unique-origin.html (221996 => 221997)
--- trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-cross-origin-sandboxed-iframe-with-unique-origin.html 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-cross-origin-sandboxed-iframe-with-unique-origin.html 2017-09-13 22:47:18 UTC (rev 221997)
@@ -1,35 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
- <script src=""
- <script src=""
- <script>
- description("Tests that cross-origin iframe storage access is denied if the iframe is sandboxed and has the unique origin because it lacks the allow-same-origin token.");
- jsTestIsAsync = true;
-
- function activateElement(elementId) {
- var element = document.getElementById(elementId);
- var centerX = element.offsetLeft + element.offsetWidth / 2;
- var centerY = element.offsetTop + element.offsetHeight / 2;
- UIHelper.activateAt(centerX, centerY).then(
- function () {
- if (window.eventSender)
- eventSender.keyDown("escape");
- finishJSTest();
- },
- function () {
- testFailed("Promise rejected.");
- finishJSTest();
- }
- );
- }
-
- function runTest() {
- activateElement("theIframe");
- }
- </script>
-</head>
-<body>
- <iframe sandbox="allow-storage-access-by-user-activation allow-scripts allow-modals" _onload_="runTest()" id="theIframe" src=""
-</body>
-</html>
\ No newline at end of file
Deleted: trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-cross-origin-sandboxed-iframe-without-allow-token-expected.txt (221996 => 221997)
--- trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-cross-origin-sandboxed-iframe-without-allow-token-expected.txt 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-cross-origin-sandboxed-iframe-without-allow-token-expected.txt 2017-09-13 22:47:18 UTC (rev 221997)
@@ -1,20 +0,0 @@
-main frame - didStartProvisionalLoadForFrame
-main frame - didCommitLoadForFrame
-frame "theIframe" - didStartProvisionalLoadForFrame
-main frame - didFinishDocumentLoadForFrame
-frame "theIframe" - didCommitLoadForFrame
-frame "theIframe" - didFinishDocumentLoadForFrame
-CONSOLE MESSAGE: line 70: PASS document.hasStorageAccess was denied.
-frame "theIframe" - didHandleOnloadEventsForFrame
-main frame - didHandleOnloadEventsForFrame
-frame "theIframe" - didFinishLoadForFrame
-main frame - didFinishLoadForFrame
-Tests that cross-origin iframe storage access is denied if the iframe is sandboxed and doesn't have the allow token.
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
Deleted: trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-cross-origin-sandboxed-iframe-without-allow-token.html (221996 => 221997)
--- trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-cross-origin-sandboxed-iframe-without-allow-token.html 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-cross-origin-sandboxed-iframe-without-allow-token.html 2017-09-13 22:47:18 UTC (rev 221997)
@@ -1,35 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
- <script src=""
- <script src=""
- <script>
- description("Tests that cross-origin iframe storage access is denied if the iframe is sandboxed and doesn't have the allow token.");
- jsTestIsAsync = true;
-
- function activateElement(elementId) {
- var element = document.getElementById(elementId);
- var centerX = element.offsetLeft + element.offsetWidth / 2;
- var centerY = element.offsetTop + element.offsetHeight / 2;
- UIHelper.activateAt(centerX, centerY).then(
- function () {
- if (window.eventSender)
- eventSender.keyDown("escape");
- finishJSTest();
- },
- function () {
- testFailed("Promise rejected.");
- finishJSTest();
- }
- );
- }
-
- function runTest() {
- activateElement("theIframe");
- }
- </script>
-</head>
-<body>
- <iframe sandbox="allow-scripts allow-same-origin allow-modals" _onload_="runTest()" id="theIframe" src=""
-</body>
-</html>
\ No newline at end of file
Deleted: trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-same-origin-iframe-expected.txt (221996 => 221997)
--- trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-same-origin-iframe-expected.txt 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-same-origin-iframe-expected.txt 2017-09-13 22:47:18 UTC (rev 221997)
@@ -1,20 +0,0 @@
-main frame - didStartProvisionalLoadForFrame
-main frame - didCommitLoadForFrame
-frame "theIframe" - didStartProvisionalLoadForFrame
-main frame - didFinishDocumentLoadForFrame
-frame "theIframe" - didCommitLoadForFrame
-frame "theIframe" - didFinishDocumentLoadForFrame
-CONSOLE MESSAGE: line 70: PASS document.hasStorageAccess was denied.
-frame "theIframe" - didHandleOnloadEventsForFrame
-main frame - didHandleOnloadEventsForFrame
-frame "theIframe" - didFinishLoadForFrame
-main frame - didFinishLoadForFrame
-Tests that same-origin iframe storage access is denied if the iframe is not sandboxed.
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
Deleted: trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-same-origin-iframe.html (221996 => 221997)
--- trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-same-origin-iframe.html 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-same-origin-iframe.html 2017-09-13 22:47:18 UTC (rev 221997)
@@ -1,35 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
- <script src=""
- <script src=""
- <script>
- description("Tests that same-origin iframe storage access is denied if the iframe is not sandboxed.");
- jsTestIsAsync = true;
-
- function activateElement(elementId) {
- var element = document.getElementById(elementId);
- var centerX = element.offsetLeft + element.offsetWidth / 2;
- var centerY = element.offsetTop + element.offsetHeight / 2;
- UIHelper.activateAt(centerX, centerY).then(
- function () {
- if (window.eventSender)
- eventSender.keyDown("escape");
- finishJSTest();
- },
- function () {
- testFailed("Promise rejected.");
- finishJSTest();
- }
- );
- }
-
- function runTest() {
- activateElement("theIframe");
- }
- </script>
-</head>
-<body>
- <iframe _onload_="runTest()" id="theIframe" src=""
-</body>
-</html>
\ No newline at end of file
Deleted: trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-same-origin-sandboxed-iframe-expected.txt (221996 => 221997)
--- trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-same-origin-sandboxed-iframe-expected.txt 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-same-origin-sandboxed-iframe-expected.txt 2017-09-13 22:47:18 UTC (rev 221997)
@@ -1,20 +0,0 @@
-main frame - didStartProvisionalLoadForFrame
-main frame - didCommitLoadForFrame
-frame "theIframe" - didStartProvisionalLoadForFrame
-main frame - didFinishDocumentLoadForFrame
-frame "theIframe" - didCommitLoadForFrame
-frame "theIframe" - didFinishDocumentLoadForFrame
-CONSOLE MESSAGE: line 66: PASS document.hasStorageAccess was granted.
-frame "theIframe" - didHandleOnloadEventsForFrame
-main frame - didHandleOnloadEventsForFrame
-frame "theIframe" - didFinishLoadForFrame
-main frame - didFinishLoadForFrame
-Tests that same-origin iframe storage access is granted if the iframe is sandboxed and has the allow token.
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
Deleted: trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-same-origin-sandboxed-iframe-without-allow-token-expected.txt (221996 => 221997)
--- trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-same-origin-sandboxed-iframe-without-allow-token-expected.txt 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-same-origin-sandboxed-iframe-without-allow-token-expected.txt 2017-09-13 22:47:18 UTC (rev 221997)
@@ -1,20 +0,0 @@
-main frame - didStartProvisionalLoadForFrame
-main frame - didCommitLoadForFrame
-frame "theIframe" - didStartProvisionalLoadForFrame
-main frame - didFinishDocumentLoadForFrame
-frame "theIframe" - didCommitLoadForFrame
-frame "theIframe" - didFinishDocumentLoadForFrame
-CONSOLE MESSAGE: line 70: PASS document.hasStorageAccess was denied.
-frame "theIframe" - didHandleOnloadEventsForFrame
-main frame - didHandleOnloadEventsForFrame
-frame "theIframe" - didFinishLoadForFrame
-main frame - didFinishLoadForFrame
-Tests that same-origin iframe storage access is denied if the iframe is sandboxed but doesn't have the allow token.
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
Deleted: trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-same-origin-sandboxed-iframe-without-allow-token.html (221996 => 221997)
--- trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-same-origin-sandboxed-iframe-without-allow-token.html 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-same-origin-sandboxed-iframe-without-allow-token.html 2017-09-13 22:47:18 UTC (rev 221997)
@@ -1,35 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
- <script src=""
- <script src=""
- <script>
- description("Tests that same-origin iframe storage access is denied if the iframe is sandboxed but doesn't have the allow token.");
- jsTestIsAsync = true;
-
- function activateElement(elementId) {
- var element = document.getElementById(elementId);
- var centerX = element.offsetLeft + element.offsetWidth / 2;
- var centerY = element.offsetTop + element.offsetHeight / 2;
- UIHelper.activateAt(centerX, centerY).then(
- function () {
- if (window.eventSender)
- eventSender.keyDown("escape");
- finishJSTest();
- },
- function () {
- testFailed("Promise rejected.");
- finishJSTest();
- }
- );
- }
-
- function runTest() {
- activateElement("theIframe");
- }
- </script>
-</head>
-<body>
- <iframe sandbox="allow-scripts allow-same-origin allow-modals" _onload_="runTest()" id="theIframe" src=""
-</body>
-</html>
\ No newline at end of file
Deleted: trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-same-origin-sandboxed-iframe.html (221996 => 221997)
--- trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-same-origin-sandboxed-iframe.html 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-same-origin-sandboxed-iframe.html 2017-09-13 22:47:18 UTC (rev 221997)
@@ -1,35 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
- <script src=""
- <script src=""
- <script>
- description("Tests that same-origin iframe storage access is granted if the iframe is sandboxed and has the allow token.");
- jsTestIsAsync = true;
-
- function activateElement(elementId) {
- var element = document.getElementById(elementId);
- var centerX = element.offsetLeft + element.offsetWidth / 2;
- var centerY = element.offsetTop + element.offsetHeight / 2;
- UIHelper.activateAt(centerX, centerY).then(
- function () {
- if (window.eventSender)
- eventSender.keyDown("escape");
- finishJSTest();
- },
- function () {
- testFailed("Promise rejected.");
- finishJSTest();
- }
- );
- }
-
- function runTest() {
- activateElement("theIframe");
- }
- </script>
-</head>
-<body>
- <iframe sandbox="allow-storage-access-by-user-activation allow-scripts allow-same-origin allow-modals" _onload_="runTest()" id="theIframe" src=""
-</body>
-</html>
\ No newline at end of file
Deleted: trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-top-frame-expected.txt (221996 => 221997)
--- trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-top-frame-expected.txt 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-top-frame-expected.txt 2017-09-13 22:47:18 UTC (rev 221997)
@@ -1,18 +0,0 @@
-main frame - didStartProvisionalLoadForFrame
-main frame - didCommitLoadForFrame
-main frame - didFinishDocumentLoadForFrame
-main frame - didHandleOnloadEventsForFrame
-main frame - didFinishLoadForFrame
-Tests that top frame storage access is always granted in case the page requests it.
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-PASS requestStorageAccessReturnValue is true
-PASS document.hasStorageAccess is true
-PASS requestStorageAccessReturnValue is true
-PASS document.hasStorageAccess is true
-PASS successfullyParsed is true
-
-TEST COMPLETE
-Request Access
Deleted: trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-top-frame.html (221996 => 221997)
--- trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-top-frame.html 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/request-storage-access-top-frame.html 2017-09-13 22:47:18 UTC (rev 221997)
@@ -1,53 +0,0 @@
-<!DOCTYPE html>
-<html>
-<body _onload_="runTest()">
-<script src=""
-<script src=""
-<script>
- description("Tests that top frame storage access is always granted in case the page requests it.");
- jsTestIsAsync = true;
-
- function activateElement(elementId) {
- var element = document.getElementById(elementId);
- var centerX = element.offsetLeft + element.offsetWidth / 2;
- var centerY = element.offsetTop + element.offsetHeight / 2;
- UIHelper.activateAt(centerX, centerY).then(
- function() { },
- function() {
- testFailed("Promise rejected.");
- finishJSTest();
- }
- );
- }
-
- var requestStorageAccessReturnValue;
-
- function makeRequestWithoutUserGesture() {
- document.requestStorageAccess();
- var promise = document.requestStorageAccess();
- promise.then(function (hasAccess) {
- requestStorageAccessReturnValue = hasAccess;
- shouldBe("requestStorageAccessReturnValue", "true");
- shouldBe("document.hasStorageAccess", "true");
- activateElement("theButton");
- });
- }
-
- function makeRequestWithUserGesture() {
- document.requestStorageAccess();
- var promise = document.requestStorageAccess();
- promise.then(function (hasAccess) {
- requestStorageAccessReturnValue = hasAccess;
- shouldBe("requestStorageAccessReturnValue", "true");
- shouldBe("document.hasStorageAccess", "true");
- finishJSTest();
- });
- }
-
- function runTest() {
- makeRequestWithoutUserGesture();
- }
-</script>
-<button id="theButton" _onclick_="makeRequestWithUserGesture()">Request Access</button>
-</body>
-</html>
\ No newline at end of file
Deleted: trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/resources/request-storage-access-iframe.html (221996 => 221997)
--- trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/resources/request-storage-access-iframe.html 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/resources/request-storage-access-iframe.html 2017-09-13 22:47:18 UTC (rev 221997)
@@ -1,84 +0,0 @@
-<html>
-<head>
- <script>
- const hashArguments = document.location.hash.substring(1).split(",");
- const userShouldGrantAccess = hashArguments[0] === "userShouldGrantAccess";
- const userShouldBeConsulted = hashArguments[1] === "userShouldBeConsulted";
- const policyShouldGrantAccess = hashArguments[2] === "policyShouldGrantAccess";
- const isSameOriginIframe = hashArguments[3] === "isSameOriginIframe";
-
- if (internals && userShouldGrantAccess)
- internals.setUserGrantsStorageAccess(true);
-
- function storageAccessShouldBeFalse() {
- if (document.hasStorageAccess)
- console.log("FAIL document.hasStorageAccess was true when it was not supposed to.");
- if (requestStorageAccessReturnValue)
- console.log("FAIL requestStorageAccessReturnValue was true when it was not supposed to.");
- }
-
- function storageAccessShouldBeTrue() {
- if (!document.hasStorageAccess)
- console.log("FAIL document.hasStorageAccess was false when it was not supposed to.");
- if (!requestStorageAccessReturnValue)
- console.log("FAIL requestStorageAccessReturnValue was false when it was not supposed to.");
- }
-
- var requestStorageAccessReturnValue;
-
- function makeRequestWithoutUserGesture() {
- storageAccessShouldBeFalse();
-
- document.requestStorageAccess();
- var promise = document.requestStorageAccess();
- promise.then(function (hasAccess) {
- requestStorageAccessReturnValue = hasAccess;
- continueAfterRequestWithoutUserGesture();
- });
- }
-
- function continueAfterRequestWithoutUserGesture() {
- if (isSameOriginIframe && policyShouldGrantAccess)
- storageAccessShouldBeTrue();
- else
- storageAccessShouldBeFalse();
- }
-
- function makeRequestWithUserGesture() {
- if (isSameOriginIframe && policyShouldGrantAccess)
- storageAccessShouldBeTrue();
- else
- storageAccessShouldBeFalse();
-
- document.requestStorageAccess();
- var promise = document.requestStorageAccess();
- promise.then(function (hasAccess) {
- requestStorageAccessReturnValue = hasAccess;
- continueAfterRequestWithUserGesture();
- });
- }
-
- function continueAfterRequestWithUserGesture() {
- if (requestStorageAccessReturnValue
- && document.hasStorageAccess
- && (userShouldGrantAccess || !userShouldBeConsulted)
- && policyShouldGrantAccess)
- console.log("PASS document.hasStorageAccess was granted.");
- else if (!document.hasStorageAccess
- && !requestStorageAccessReturnValue
- && ((!userShouldGrantAccess && userShouldBeConsulted) || !policyShouldGrantAccess))
- console.log("PASS document.hasStorageAccess was denied.");
- else
- console.log("FAIL document.hasStorageAccess was " +
- (document.hasStorageAccess ? "" : "not ") +
- "granted and requestStorageAccessReturnValue was " +
- (requestStorageAccessReturnValue ? "" : "not ") +
- "granted but should " +
- (userShouldGrantAccess && policyShouldGrantAccess ? "" : "not ") +
- "have been granted.");
- }
- </script>
-</head>
-<body _onload_="makeRequestWithoutUserGesture()" _onclick_="makeRequestWithUserGesture()">
-</body>
-</html>
\ No newline at end of file
Modified: trunk/LayoutTests/platform/mac-wk2/TestExpectations (221996 => 221997)
--- trunk/LayoutTests/platform/mac-wk2/TestExpectations 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/LayoutTests/platform/mac-wk2/TestExpectations 2017-09-13 22:47:18 UTC (rev 221997)
@@ -742,19 +742,10 @@
webkit.org/b/172397 [ Sierra Debug ] animations/needs-layout.html [ Pass ImageOnlyFailure ]
-# Touch events are not available on open source bots, thus only tested on Mac.
+# Move to general wk2 expectations once webkit.org/b/175170 is resolved.
http/tests/loading/resourceLoadStatistics/user-interaction-in-cross-origin-sub-frame.html [ Pass ]
http/tests/loading/resourceLoadStatistics/user-interaction-only-reported-once-within-short-period-of-time.html [ Pass ]
http/tests/loading/resourceLoadStatistics/user-interaction-reported-after-website-data-removal.html [ Pass ]
-http/tests/loading/resourceLoadStatistics/request-and-deny-storage-access-cross-origin-iframe.html [ Pass ]
-http/tests/loading/resourceLoadStatistics/request-and-deny-storage-access-cross-origin-sandboxed-iframe.html [ Pass ]
-http/tests/loading/resourceLoadStatistics/request-and-grant-storage-access-cross-origin-iframe.html [ Pass ]
-http/tests/loading/resourceLoadStatistics/request-and-grant-storage-access-cross-origin-sandboxed-iframe.html [ Pass ]
-http/tests/loading/resourceLoadStatistics/request-storage-access-cross-origin-sandboxed-iframe-with-unique-origin.html [ Pass ]
-http/tests/loading/resourceLoadStatistics/request-storage-access-cross-origin-sandboxed-iframe-without-allow-token.html [ Pass ]
-http/tests/loading/resourceLoadStatistics/request-storage-access-same-origin-iframe.html [ Pass ]
-http/tests/loading/resourceLoadStatistics/request-storage-access-same-origin-sandboxed-iframe-without-allow-token.html [ Pass ]
-http/tests/loading/resourceLoadStatistics/request-storage-access-same-origin-sandboxed-iframe.html [ Pass ]
webkit.org/b/173861 [ Release ] http/tests/webrtc/filtering-ice-candidate-same-origin-frame.html [ Pass Timeout ]
webkit.org/b/173861 [ Release ] http/tests/webrtc/filtering-ice-candidate-cross-origin-frame.html [ Pass Timeout ]
Modified: trunk/LayoutTests/platform/wk2/TestExpectations (221996 => 221997)
--- trunk/LayoutTests/platform/wk2/TestExpectations 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/LayoutTests/platform/wk2/TestExpectations 2017-09-13 22:47:18 UTC (rev 221997)
@@ -688,7 +688,6 @@
webkit.org/b/172452 http/tests/loading/resourceLoadStatistics/grandfathering.html [ Pass Failure Timeout ]
webkit.org/b/173499 http/tests/loading/resourceLoadStatistics/telemetry-generation.html [ Pass Failure ]
http/tests/loading/resourceLoadStatistics/prune-statistics.html [ Pass ]
-http/tests/loading/resourceLoadStatistics/request-storage-access-top-frame.html [ Pass ]
### END OF (5) Progressions, expected successes that are expected failures in WebKit1.
########################################
Modified: trunk/Source/WebCore/ChangeLog (221996 => 221997)
--- trunk/Source/WebCore/ChangeLog 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/Source/WebCore/ChangeLog 2017-09-13 22:47:18 UTC (rev 221997)
@@ -1,3 +1,16 @@
+2017-09-13 Matt Lewis <jlew...@apple.com>
+
+ Unreviewed, rolling out r221976.
+
+ The test introduced was flaky from point of addition.
+
+ Reverted changeset:
+
+ "Introduce Storage Access API (document parts) as an
+ experimental feature"
+ https://bugs.webkit.org/show_bug.cgi?id=175759
+ http://trac.webkit.org/changeset/221976
+
2017-09-13 Said Abou-Hallawa <sabouhall...@apple.com>
Followup (r221805): Address comments and add more tests
Modified: trunk/Source/WebCore/dom/Document.cpp (221996 => 221997)
--- trunk/Source/WebCore/dom/Document.cpp 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/Source/WebCore/dom/Document.cpp 2017-09-13 22:47:18 UTC (rev 221997)
@@ -103,7 +103,6 @@
#include "ImageLoader.h"
#include "InspectorInstrumentation.h"
#include "JSCustomElementInterface.h"
-#include "JSDOMPromiseDeferred.h"
#include "JSLazyEventListener.h"
#include "KeyboardEvent.h"
#include "LayoutDisallowedScope.h"
@@ -148,7 +147,6 @@
#include "RenderView.h"
#include "RenderWidget.h"
#include "RequestAnimationFrameCallback.h"
-#include "ResourceLoadObserver.h"
#include "RuntimeEnabledFeatures.h"
#include "SVGDocumentExtensions.h"
#include "SVGElement.h"
@@ -7287,65 +7285,4 @@
return *m_logger;
}
-void Document::requestStorageAccess(Ref<DeferredPromise>&& passedPromise)
-{
- ASSERT(settings().storageAccessAPIEnabled());
-
- RefPtr<DeferredPromise> promise(WTFMove(passedPromise));
-
- if (m_hasStorageAccess) {
- promise->resolve<IDLBoolean>(true);
- return;
- }
-
- if (!m_frame || securityOrigin().isUnique()) {
- promise->resolve<IDLBoolean>(false);
- return;
- }
-
- if (m_frame->isMainFrame()) {
- m_hasStorageAccess = true;
- promise->resolve<IDLBoolean>(true);
- return;
- }
-
- // There has to be a sandbox and it has to allow the storage access API to be called.
- if (sandboxFlags() == SandboxNone || isSandboxed(SandboxStorageAccessByUserActivation)) {
- promise->resolve<IDLBoolean>(false);
- return;
- }
-
- auto& securityOrigin = this->securityOrigin();
- auto& topSecurityOrigin = topDocument().securityOrigin();
- if (securityOrigin.equal(&topSecurityOrigin)) {
- m_hasStorageAccess = true;
- promise->resolve<IDLBoolean>(true);
- return;
- }
-
- if (!UserGestureIndicator::processingUserGesture()) {
- promise->resolve<IDLBoolean>(false);
- return;
- }
-
- auto partitionDomain = securityOrigin.domainForCachePartition();
- auto topPartitionDomain = topSecurityOrigin.domainForCachePartition();
- StringBuilder builder;
- builder.appendLiteral("Do you want to use your ");
- builder.append(partitionDomain);
- builder.appendLiteral(" ID on ");
- builder.append(topPartitionDomain);
- builder.appendLiteral("?");
- Page* page = this->page();
- // FIXME: Don't use runJavaScriptConfirm because it responds synchronously.
- if ((page && page->chrome().runJavaScriptConfirm(*m_frame, builder.toString())) || m_grantStorageAccessOverride) {
- m_hasStorageAccess = true;
- ResourceLoadObserver::shared().registerStorageAccess(partitionDomain, topPartitionDomain);
- promise->resolve<IDLBoolean>(true);
- return;
- }
-
- promise->resolve<IDLBoolean>(false);
-}
-
} // namespace WebCore
Modified: trunk/Source/WebCore/dom/Document.h (221996 => 221997)
--- trunk/Source/WebCore/dom/Document.h 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/Source/WebCore/dom/Document.h 2017-09-13 22:47:18 UTC (rev 221997)
@@ -103,7 +103,6 @@
class DOMWrapperWorld;
class Database;
class DatabaseThread;
-class DeferredPromise;
class DocumentFragment;
class DocumentLoader;
class DocumentMarkerController;
@@ -1362,10 +1361,6 @@
PAL::Logger& logger() const;
- bool hasStorageAccess() const { return m_hasStorageAccess; };
- void requestStorageAccess(Ref<DeferredPromise>&& passedPromise);
- void setUserGrantsStorageAccessOverride(bool value) { m_grantStorageAccessOverride = value; }
-
protected:
enum ConstructionFlags { Synthesized = 1, NonRenderedPlaceholder = 1 << 1 };
Document(Frame*, const URL&, unsigned = DefaultDocumentClass, unsigned constructionFlags = 0);
@@ -1819,9 +1814,6 @@
mutable RefPtr<PAL::Logger> m_logger;
static bool hasEverCreatedAnAXObjectCache;
-
- bool m_hasStorageAccess { false };
- bool m_grantStorageAccessOverride { false };
};
Element* eventTargetElementForDocument(Document*);
Modified: trunk/Source/WebCore/dom/Document.idl (221996 => 221997)
--- trunk/Source/WebCore/dom/Document.idl 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/Source/WebCore/dom/Document.idl 2017-09-13 22:47:18 UTC (rev 221997)
@@ -192,9 +192,6 @@
// Non standard (https://developer.apple.com/reference/webkitjs/document/1633863-webkitgetnamedflows).
[Conditional=CSS_REGIONS] DOMNamedFlowCollection webkitGetNamedFlows();
- // Non standard, to bring up with standards working group.
- [EnabledBySetting=StorageAccessAPI] readonly attribute boolean hasStorageAccess;
- [EnabledBySetting=StorageAccessAPI] Promise<boolean> requestStorageAccess();
// Obsolete features from https://html.spec.whatwg.org/multipage/obsolete.html
Modified: trunk/Source/WebCore/dom/SecurityContext.cpp (221996 => 221997)
--- trunk/Source/WebCore/dom/SecurityContext.cpp 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/Source/WebCore/dom/SecurityContext.cpp 2017-09-13 22:47:18 UTC (rev 221997)
@@ -85,7 +85,7 @@
bool SecurityContext::isSupportedSandboxPolicy(StringView policy)
{
static const char* const supportedPolicies[] = {
- "allow-forms", "allow-same-origin", "allow-scripts", "allow-top-navigation", "allow-pointer-lock", "allow-popups", "allow-popups-to-escape-sandbox", "allow-top-navigation-by-user-activation", "allow-modals", "allow-storage-access-by-user-activation"
+ "allow-forms", "allow-same-origin", "allow-scripts", "allow-top-navigation", "allow-pointer-lock", "allow-popups", "allow-popups-to-escape-sandbox", "allow-top-navigation-by-user-activation", "allow-modals"
};
for (auto* supportedPolicy : supportedPolicies) {
@@ -136,8 +136,6 @@
flags &= ~SandboxTopNavigationByUserActivation;
else if (equalLettersIgnoringASCIICase(sandboxToken, "allow-modals"))
flags &= ~SandboxModals;
- else if (equalLettersIgnoringASCIICase(sandboxToken, "allow-storage-access-by-user-activation"))
- flags &= ~SandboxStorageAccessByUserActivation;
else {
if (numberOfTokenErrors)
tokenErrors.appendLiteral(", '");
Modified: trunk/Source/WebCore/dom/SecurityContext.h (221996 => 221997)
--- trunk/Source/WebCore/dom/SecurityContext.h 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/Source/WebCore/dom/SecurityContext.h 2017-09-13 22:47:18 UTC (rev 221997)
@@ -54,7 +54,6 @@
SandboxTopNavigationByUserActivation = 1 << 10,
SandboxDocumentDomain = 1 << 11,
SandboxModals = 1 << 12,
- SandboxStorageAccessByUserActivation = 1 << 13,
SandboxAll = -1 // Mask with all bits set to 1.
};
Modified: trunk/Source/WebCore/loader/ResourceLoadObserver.cpp (221996 => 221997)
--- trunk/Source/WebCore/loader/ResourceLoadObserver.cpp 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/Source/WebCore/loader/ResourceLoadObserver.cpp 2017-09-13 22:47:18 UTC (rev 221997)
@@ -284,23 +284,6 @@
notifyObserver();
}
-void ResourceLoadObserver::registerStorageAccess(const String& subFrameTopPrivatelyControlledDomain, const String& topFrameTopPrivatelyControlledDomain)
-{
- auto addResult = m_storageAccessMap.add(subFrameTopPrivatelyControlledDomain, HashSet<String> { });
- if (!addResult.isNewEntry && addResult.iterator->value.contains(topFrameTopPrivatelyControlledDomain))
- return;
-
- if (addResult.isNewEntry)
- addResult.iterator->value = HashSet<String> { topFrameTopPrivatelyControlledDomain };
- else
- m_storageAccessMap.get(subFrameTopPrivatelyControlledDomain).add(topFrameTopPrivatelyControlledDomain);
-
- auto& statistics = ensureResourceStatisticsForPrimaryDomain(subFrameTopPrivatelyControlledDomain);
- statistics.storageAccessUnderTopFrameOrigins.add(topFrameTopPrivatelyControlledDomain);
- m_notificationTimer.stop();
- notifyObserver();
-}
-
ResourceLoadStatistics& ResourceLoadObserver::ensureResourceStatisticsForPrimaryDomain(const String& primaryDomain)
{
auto addResult = m_resourceStatisticsMap.ensure(primaryDomain, [&primaryDomain] {
Modified: trunk/Source/WebCore/loader/ResourceLoadObserver.h (221996 => 221997)
--- trunk/Source/WebCore/loader/ResourceLoadObserver.h 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/Source/WebCore/loader/ResourceLoadObserver.h 2017-09-13 22:47:18 UTC (rev 221997)
@@ -27,7 +27,6 @@
#include "Timer.h"
#include <wtf/HashMap.h>
-#include <wtf/HashSet.h>
#include <wtf/NeverDestroyed.h>
#include <wtf/text/WTFString.h>
@@ -60,7 +59,6 @@
void logWebSocketLoading(const Frame*, const URL&);
void logUserInteractionWithReducedTimeResolution(const Document&);
- void registerStorageAccess(const String& subFrameTopPrivatelyControlledDomain, const String& topFrameTopPrivatelyControlledDomain);
WEBCORE_EXPORT String statisticsForOrigin(const String&);
WEBCORE_EXPORT void setNotificationCallback(WTF::Function<void (Vector<ResourceLoadStatistics>&&)>&&);
@@ -77,7 +75,6 @@
Vector<ResourceLoadStatistics> takeStatistics();
HashMap<String, ResourceLoadStatistics> m_resourceStatisticsMap;
- HashMap<String, HashSet<String>> m_storageAccessMap;
HashMap<String, WTF::WallTime> m_lastReportedUserInteractionMap;
WTF::Function<void (Vector<ResourceLoadStatistics>&&)> m_notificationCallback;
Timer m_notificationTimer;
Modified: trunk/Source/WebCore/loader/ResourceLoadStatistics.cpp (221996 => 221997)
--- trunk/Source/WebCore/loader/ResourceLoadStatistics.cpp 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/Source/WebCore/loader/ResourceLoadStatistics.cpp 2017-09-13 22:47:18 UTC (rev 221997)
@@ -46,16 +46,6 @@
});
}
-static void encodeHashSet(KeyedEncoder& encoder, const String& label, const HashSet<String>& hashSet)
-{
- if (hashSet.isEmpty())
- return;
-
- encoder.encodeObjects(label, hashSet.begin(), hashSet.end(), [](KeyedEncoder& encoderInner, const String& origin) {
- encoderInner.encodeString("origin", origin);
- });
-}
-
void ResourceLoadStatistics::encode(KeyedEncoder& encoder) const
{
encoder.encodeString("PrevalentResourceOrigin", highLevelDomain);
@@ -66,10 +56,7 @@
encoder.encodeBool("hadUserInteraction", hadUserInteraction);
encoder.encodeDouble("mostRecentUserInteraction", mostRecentUserInteractionTime.secondsSinceEpoch().value());
encoder.encodeBool("grandfathered", grandfathered);
-
- // Storage access
- encodeHashSet(encoder, "storageAccessUnderTopFrameOrigins", storageAccessUnderTopFrameOrigins);
-
+
// Subframe stats
encodeHashCountedSet(encoder, "subframeUnderTopFrameOrigins", subframeUnderTopFrameOrigins);
@@ -98,18 +85,6 @@
});
}
-static void decodeHashSet(KeyedDecoder& decoder, const String& label, HashSet<String>& hashSet)
-{
- Vector<String> ignore;
- decoder.decodeObjects(label, ignore, [&hashSet](KeyedDecoder& decoderInner, String& origin) {
- if (!decoderInner.decodeString("origin", origin))
- return false;
-
- hashSet.add(origin);
- return true;
- });
-}
-
bool ResourceLoadStatistics::decode(KeyedDecoder& decoder)
{
if (!decoder.decodeString("PrevalentResourceOrigin", highLevelDomain))
@@ -118,10 +93,7 @@
// User interaction
if (!decoder.decodeBool("hadUserInteraction", hadUserInteraction))
return false;
-
- // Storage access
- decodeHashSet(decoder, "storageAccessUnderTopFrameOrigins", storageAccessUnderTopFrameOrigins);
-
+
// Subframe stats
decodeHashCountedSet(decoder, "subframeUnderTopFrameOrigins", subframeUnderTopFrameOrigins);
@@ -178,22 +150,6 @@
}
}
-static void appendHashSet(StringBuilder& builder, const String& label, const HashSet<String>& hashSet)
-{
- if (hashSet.isEmpty())
- return;
-
- builder.appendLiteral(" ");
- builder.append(label);
- builder.appendLiteral(":\n");
-
- for (auto& entry : hashSet) {
- builder.appendLiteral(" ");
- builder.append(entry);
- builder.append('\n');
- }
-}
-
String ResourceLoadStatistics::toString() const
{
StringBuilder builder;
@@ -210,10 +166,7 @@
builder.append('\n');
appendBoolean(builder, " grandfathered", grandfathered);
builder.append('\n');
-
- // Storage access
- appendHashSet(builder, "storageAccessUnderTopFrameOrigins", storageAccessUnderTopFrameOrigins);
-
+
// Subframe stats
appendHashCountedSet(builder, "subframeUnderTopFrameOrigins", subframeUnderTopFrameOrigins);
@@ -243,13 +196,6 @@
to.add(entry.key, entry.value);
}
-template <typename T>
-static void mergeHashSet(HashSet<T>& to, const HashSet<T>& from)
-{
- for (auto& entry : from)
- to.add(entry);
-}
-
void ResourceLoadStatistics::merge(const ResourceLoadStatistics& other)
{
ASSERT(other.highLevelDomain == highLevelDomain);
@@ -270,10 +216,7 @@
mostRecentUserInteractionTime = other.mostRecentUserInteractionTime;
}
grandfathered |= other.grandfathered;
-
- // Storage access
- mergeHashSet(storageAccessUnderTopFrameOrigins, other.storageAccessUnderTopFrameOrigins);
-
+
// Subframe stats
mergeHashCountedSet(subframeUnderTopFrameOrigins, other.subframeUnderTopFrameOrigins);
Modified: trunk/Source/WebCore/loader/ResourceLoadStatistics.h (221996 => 221997)
--- trunk/Source/WebCore/loader/ResourceLoadStatistics.h 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/Source/WebCore/loader/ResourceLoadStatistics.h 2017-09-13 22:47:18 UTC (rev 221997)
@@ -27,7 +27,6 @@
#include "URL.h"
#include <wtf/HashCountedSet.h>
-#include <wtf/HashSet.h>
#include <wtf/WallTime.h>
#include <wtf/text/StringHash.h>
#include <wtf/text/WTFString.h>
@@ -69,10 +68,7 @@
// Timestamp. Default value is negative, 0 means it was reset.
WallTime mostRecentUserInteractionTime { WallTime::fromRawSeconds(-1) };
bool grandfathered { false };
-
- // Storage access
- HashSet<String> storageAccessUnderTopFrameOrigins;
-
+
// Subframe stats
HashCountedSet<String> subframeUnderTopFrameOrigins;
Modified: trunk/Source/WebCore/page/Settings.in (221996 => 221997)
--- trunk/Source/WebCore/page/Settings.in 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/Source/WebCore/page/Settings.in 2017-09-13 22:47:18 UTC (rev 221997)
@@ -300,5 +300,3 @@
allowMediaContentTypesRequiringHardwareSupportAsFallback initial=false
paymentRequestEnabled initial=false, conditional=PAYMENT_REQUEST
-
-storageAccessAPIEnabled initial=false
Modified: trunk/Source/WebCore/testing/Internals.cpp (221996 => 221997)
--- trunk/Source/WebCore/testing/Internals.cpp 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/Source/WebCore/testing/Internals.cpp 2017-09-13 22:47:18 UTC (rev 221997)
@@ -466,8 +466,6 @@
#if USE(LIBWEBRTC)
WebCore::useRealRTCPeerConnectionFactory();
#endif
-
- page.settings().setStorageAccessAPIEnabled(false);
}
Internals::Internals(Document& document)
@@ -3838,15 +3836,6 @@
Settings::setResourceLoadStatisticsEnabled(enable);
}
-void Internals::setUserGrantsStorageAccess(bool value)
-{
- Document* document = contextDocument();
- if (!document)
- return;
-
- document->setUserGrantsStorageAccessOverride(value);
-}
-
String Internals::composedTreeAsText(Node& node)
{
if (!is<ContainerNode>(node))
Modified: trunk/Source/WebCore/testing/Internals.h (221996 => 221997)
--- trunk/Source/WebCore/testing/Internals.h 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/Source/WebCore/testing/Internals.h 2017-09-13 22:47:18 UTC (rev 221997)
@@ -538,7 +538,6 @@
String resourceLoadStatisticsForOrigin(const String& origin);
void setResourceLoadStatisticsEnabled(bool);
- void setUserGrantsStorageAccess(bool);
#if ENABLE(STREAMS_API)
bool isReadableStreamDisturbed(JSC::ExecState&, JSC::JSValue);
Modified: trunk/Source/WebCore/testing/Internals.idl (221996 => 221997)
--- trunk/Source/WebCore/testing/Internals.idl 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/Source/WebCore/testing/Internals.idl 2017-09-13 22:47:18 UTC (rev 221997)
@@ -496,7 +496,6 @@
DOMString resourceLoadStatisticsForOrigin(DOMString domain);
void setResourceLoadStatisticsEnabled(boolean enable);
- [EnabledBySetting=StorageAccessAPI] void setUserGrantsStorageAccess(boolean value);
[MayThrowException] void setCanShowModalDialogOverride(boolean allow);
Modified: trunk/Source/WebKit/ChangeLog (221996 => 221997)
--- trunk/Source/WebKit/ChangeLog 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/Source/WebKit/ChangeLog 2017-09-13 22:47:18 UTC (rev 221997)
@@ -1,3 +1,16 @@
+2017-09-13 Matt Lewis <jlew...@apple.com>
+
+ Unreviewed, rolling out r221976.
+
+ The test introduced was flaky from point of addition.
+
+ Reverted changeset:
+
+ "Introduce Storage Access API (document parts) as an
+ experimental feature"
+ https://bugs.webkit.org/show_bug.cgi?id=175759
+ http://trac.webkit.org/changeset/221976
+
2017-09-13 Youenn Fablet <you...@apple.com>
Internals clearCacheStorageMemoryRepresentation should return a Promise
Modified: trunk/Source/WebKit/Shared/WebCoreArgumentCoders.cpp (221996 => 221997)
--- trunk/Source/WebKit/Shared/WebCoreArgumentCoders.cpp 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/Source/WebKit/Shared/WebCoreArgumentCoders.cpp 2017-09-13 22:47:18 UTC (rev 221997)
@@ -2398,10 +2398,7 @@
encoder << statistics.hadUserInteraction;
encoder << statistics.mostRecentUserInteractionTime.secondsSinceEpoch().value();
encoder << statistics.grandfathered;
-
- // Storage access
- encoder << statistics.storageAccessUnderTopFrameOrigins;
-
+
// Subframe stats
encoder << statistics.subframeUnderTopFrameOrigins;
@@ -2435,11 +2432,7 @@
if (!decoder.decode(statistics.grandfathered))
return false;
-
- // Storage access
- if (!decoder.decode(statistics.storageAccessUnderTopFrameOrigins))
- return false;
-
+
// Subframe stats
if (!decoder.decode(statistics.subframeUnderTopFrameOrigins))
return false;
Modified: trunk/Source/WebKit/Shared/WebPreferencesDefinitions.h (221996 => 221997)
--- trunk/Source/WebKit/Shared/WebPreferencesDefinitions.h 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/Source/WebKit/Shared/WebPreferencesDefinitions.h 2017-09-13 22:47:18 UTC (rev 221997)
@@ -369,7 +369,6 @@
macro(IsSecureContextAttributeEnabled, isSecureContextAttributeEnabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, "Secure Contexts API", "Enable Secure Contexts API") \
macro(ServiceWorkersEnabled, serviceWorkersEnabled, Bool, bool, false, "ServiceWorkers", "Enable ServiceWorkers") \
macro(CacheAPIEnabled, cacheAPIEnabled, Bool, bool, false, "Cache API", "Enable Cache API") \
- macro(StorageAccessAPIEnabled, storageAccessAPIEnabled, Bool, bool, false, "Storage Access API", "Enable Storage Access API") \
macro(SubresourceIntegrityEnabled, subresourceIntegrityEnabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, "SubresourceIntegrity", "Enable SubresourceIntegrity") \
macro(ViewportFitEnabled, viewportFitEnabled, Bool, bool, true, "Viewport Fit", "Enable viewport-fit viewport parameter") \
macro(WebAnimationsEnabled, webAnimationsEnabled, Bool, bool, false, "Web Animations", "Web Animations prototype") \
Modified: trunk/Source/WebKit/UIProcess/API/C/WKPreferences.cpp (221996 => 221997)
--- trunk/Source/WebKit/UIProcess/API/C/WKPreferences.cpp 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/Source/WebKit/UIProcess/API/C/WKPreferences.cpp 2017-09-13 22:47:18 UTC (rev 221997)
@@ -1879,13 +1879,3 @@
{
return toImpl(preferencesRef)->paymentRequestEnabled();
}
-
-void WKPreferencesSetStorageAccessAPIEnabled(WKPreferencesRef preferencesRef, bool flag)
-{
- toImpl(preferencesRef)->setStorageAccessAPIEnabled(flag);
-}
-
-bool WKPreferencesGetStorageAccessAPIEnabled(WKPreferencesRef preferencesRef)
-{
- return toImpl(preferencesRef)->storageAccessAPIEnabled();
-}
Modified: trunk/Source/WebKit/UIProcess/API/C/WKPreferencesRefPrivate.h (221996 => 221997)
--- trunk/Source/WebKit/UIProcess/API/C/WKPreferencesRefPrivate.h 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/Source/WebKit/UIProcess/API/C/WKPreferencesRefPrivate.h 2017-09-13 22:47:18 UTC (rev 221997)
@@ -529,10 +529,6 @@
WK_EXPORT void WKPreferencesSetPaymentRequestEnabled(WKPreferencesRef, bool flag);
WK_EXPORT bool WKPreferencesGetPaymentRequestEnabled(WKPreferencesRef);
-// Defaults to false.
-WK_EXPORT void WKPreferencesSetStorageAccessAPIEnabled(WKPreferencesRef, bool flag);
-WK_EXPORT bool WKPreferencesGetStorageAccessAPIEnabled(WKPreferencesRef);
-
#ifdef __cplusplus
}
#endif
Modified: trunk/Source/WebKit/UIProcess/WebResourceLoadStatisticsStore.cpp (221996 => 221997)
--- trunk/Source/WebKit/UIProcess/WebResourceLoadStatisticsStore.cpp 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/Source/WebKit/UIProcess/WebResourceLoadStatisticsStore.cpp 2017-09-13 22:47:18 UTC (rev 221997)
@@ -45,7 +45,7 @@
namespace WebKit {
constexpr unsigned operatingDatesWindow { 30 };
-constexpr unsigned statisticsModelVersion { 10 };
+constexpr unsigned statisticsModelVersion { 9 };
constexpr unsigned maxImportance { 3 };
template<typename T> static inline String isolatedPrimaryDomain(const T& value)
Modified: trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp (221996 => 221997)
--- trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp 2017-09-13 22:47:18 UTC (rev 221997)
@@ -3386,8 +3386,6 @@
settings.setPaymentRequestEnabled(store.getBoolValueForKey(WebPreferencesKey::paymentRequestEnabledKey()));
#endif
- settings.setStorageAccessAPIEnabled(store.getBoolValueForKey(WebPreferencesKey::storageAccessAPIEnabledKey()));
-
platformPreferencesDidChange(store);
if (m_drawingArea)
Modified: trunk/Tools/ChangeLog (221996 => 221997)
--- trunk/Tools/ChangeLog 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/Tools/ChangeLog 2017-09-13 22:47:18 UTC (rev 221997)
@@ -1,3 +1,16 @@
+2017-09-13 Matt Lewis <jlew...@apple.com>
+
+ Unreviewed, rolling out r221976.
+
+ The test introduced was flaky from point of addition.
+
+ Reverted changeset:
+
+ "Introduce Storage Access API (document parts) as an
+ experimental feature"
+ https://bugs.webkit.org/show_bug.cgi?id=175759
+ http://trac.webkit.org/changeset/221976
+
2017-09-13 Lucas Forschler <lforsch...@apple.com>
Compress spindumps on client side before packaging into layout test results zip (mac & ios)
Modified: trunk/Tools/WebKitTestRunner/TestController.cpp (221996 => 221997)
--- trunk/Tools/WebKitTestRunner/TestController.cpp 2017-09-13 22:00:13 UTC (rev 221996)
+++ trunk/Tools/WebKitTestRunner/TestController.cpp 2017-09-13 22:47:18 UTC (rev 221997)
@@ -741,8 +741,6 @@
WKPreferencesSetPaymentRequestEnabled(preferences, true);
#endif
- WKPreferencesSetStorageAccessAPIEnabled(preferences, true);
-
platformResetPreferencesToConsistentValues();
}