New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 699277 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Closed: Mar 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 1
Type: Bug

Blocking:
issue 594215



Sign in to add a comment

Add a deprecation warning for data URL blocking

Project Member Reported by mea...@chromium.org, Mar 7 2017

Issue description

I already landed this in https://chromium.googlesource.com/chromium/src.git/+/b29954e8ac243142eaedbcc3c6e54d480373ee38 but filing this bug separately to track the merges.

Requesting a merge of b29954e8ac243142eaedbcc3c6e54d480373ee38 to M-57. We will be deprecating navigations to data URLs, and would like to warn developers as early as possible.

Note that even if the CL is large, the actual change is very small (See https://codereview.chromium.org/2694903007/diff/100001/content/browser/frame_host/navigation_handle_impl.cc). The rest is tests.


 
Project Member

Comment 1 by sheriffbot@chromium.org, Mar 7 2017

Labels: -Merge-Request-57 Hotlist-Merge-Review Merge-Review-57
This bug requires manual review: We are only 6 days from stable.
Please contact the milestone owner if you have questions.
Owners: amineer@(clank), cmasso@(bling), ketakid@(cros), govind@(desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Thank you  meacer@. It would be great if this change can wait till M58 as it is too late for M57 although the change is very small. The reason I'm asking to wait for M58 is :
* b29954e8ac243142eaedbcc3c6e54d480373ee38 is not yet made to canary
*  Bug 594215  exists since March, 2016
* We're very close to M57 Stable RC cut for Desktop (possibly today) and we're taking ONLY important merges in at this point.
I do think this is an important merge, since we have multiple external stakeholders expecting the deprecation in M58, and we need to warn devs before. Is there a refresh of M57 that we could possibly get this into?
re #3:  ok, got it(just curious to know why the merge request came so late if this is an important merge). Thank you.

meacer@, please update the bug with canary result tomorrow. If it is looks good in Canary, I will approve the merge.

Note: Stable cut may get delayed due to ongoing investigation on bug 698681. So we might be able to pick up merge for current  bug 699277  for initial stable roll out if not it will go to future M57 stable refresh (if any). Please let me know if there is any concern here. Thank you
> re #3:  ok, got it(just curious to know why the merge request came so late if this is an important merge). Thank you.

Yes, sorry about that. I was able to only land the patch earlier today hence the late merge request.

> meacer@, please update the bug with canary result tomorrow. If it is looks good in Canary, I will approve the merge.

Thanks! I'll keep an eye on it and update tomorrow. I think merging this to a stable refresh is reasonable too. emilyschechter, wdyt?
Labels: -Pri-3 Pri-1
Checked on Canary and it looks okay. estark@ helped me check crash reports and we didn't find any either. Note that this also applies to Android. 
Cc: amineer@chromium.org
Thank you meacer@. 

+amineer@ as this is also applicable to Android (This is a late M57 merge request, small cl per original bug description, important merge per comment #3 and change looks good in Canary per comment #7). 
Do we not translate console warnings?  It looks like the string with the warning is hard coded as English.  If this is normal practice I suppose it's fine, just curious.

I don't have objections to the merge, but I'm not holding up our Android release for this.  I'd recommend escalating and reaching out to developers using other channels in addition to the warning.  Have we looped in the web platform team to see if they have recommendations on how to do this?  Do we have an entry on chromestatus.com that relates to this?
We don't translate console warnings. Most (all?) devtools console strings are hardcoded in English.

Yes, we have a chromestatus page: https://www.chromestatus.com/feature/5669602927312896
Here is the external blink intent to deprecate thread: https://groups.google.com/a/chromium.org/forum/#!topic/blink-dev/GbVcuwg_QjM

I think we might be okay with not merging it into Android, as there is no developer tools on Android. Does that sound okay?
Labels: -Merge-Review-57 Merge-Approved-57
Approving merge to M57 branch 2987 based on comment #8, #9 and #10. Please merge ASAP. Thank you.
This will also require a merge to M58, right? 
Labels: Merge-Request-58
Yes, will need a merge to m-58 too.
Labels: -Merge-Request-58 Merge-Approved-58
Approving merge to M58 branch 3029 based on comment #11. 
We are planning to cut Dev RC today (03/08) at 5.00 PM PST. Please merge the CL to M58 branch (3029) ASAP.
Labels: -Merge-Approved-57 merge-merged-2987
Merged to M-57 in https://codereview.chromium.org/2741513002/
Project Member

Comment 17 by bugdroid1@chromium.org, Mar 8 2017

Labels: -merge-approved-58 merge-merged-3029
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c2f35d38c64165cd85b8600f939b801b9281f53e

commit c2f35d38c64165cd85b8600f939b801b9281f53e
Author: Mustafa Acer <meacer@chromium.org>
Date: Wed Mar 08 20:59:09 2017

[Merge to M-58] Add a warning for the deprecation of content-initiated data URL navigations

This CL adds a console warning when a page navigates the top level frame to a
data URL.

The browser tests are added to WebContentsImpl tests to be consistent with
the view-source URL tests.

This CL also updates most of the layout tests to avoid loading data URLs at
the top level. The only exceptions are xss-DENIED-* tests which will be updated
when the actual blocking happens.

BUG= 594215 , 699277 
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_site_isolation

Review-Url: https://codereview.chromium.org/2694903007
Cr-Commit-Position: refs/heads/master@{#455226}
(cherry picked from commit b29954e8ac243142eaedbcc3c6e54d480373ee38)

Review-Url: https://codereview.chromium.org/2734783010 .
Cr-Commit-Position: refs/branch-heads/3029@{#68}
Cr-Branched-From: 939b32ee5ba05c396eef3fd992822fcca9a2e262-refs/heads/master@{#454471}

[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/content/browser/frame_host/navigation_handle_impl.cc
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/content/browser/web_contents/web_contents_impl_browsertest.cc
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/dom/Window/mozilla-focus-blur-expected.txt
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/dom/Window/mozilla-focus-blur.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/dom/Window/resources/file-origin-window-open-frame.html
[add] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/dom/Window/resources/file-origin-window-open-popup.html
[add] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/dom/Window/resources/mozilla-focus-blur-popup-blur.html
[add] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/dom/Window/resources/mozilla-focus-blur-popup-opener-focus.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/dom/id-attribute-shared-expected.txt
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/dom/id-attribute-shared.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/events/move-event-handler-between-framehosts.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/events/onunload-clears-onbeforeunload.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/events/onunload-expected.txt
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/events/onunload-not-on-body-expected.txt
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/events/onunload-not-on-body.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/events/onunload-window-property-expected.txt
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/events/onunload-window-property.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/events/onunload.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/events/page-visibility-unload.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/events/pageshow-pagehide-on-back-uncached.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/events/popup-blocked-from-untrusted-mouse-click-expected.txt
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/events/popup-blocked-from-untrusted-mouse-click.html
[add] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/events/resources/move-event-handler-between-framehosts-popup.html
[add] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/events/resources/onunload-clears-onbeforeunload-success.html
[add] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/events/resources/onunload-single-alert-success.html
[add] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/events/resources/page-visibility-alert-success.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/files/null-origin-string.html
[add] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/files/resources/notify-no-crash.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/forms/button-state-restore.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/forms/multiple-form-submission-protection-mouse.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/forms/radio/state-restore-radio-group.html
[add] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/forms/resources/multiple-form-submission-protection-post-target.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/forms/saved-state-adoptNode-crash.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/forms/select/select-state-restore.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/forms/state-restore-hidden.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/forms/state-restore-to-non-autocomplete-form.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/forms/state-restore-to-non-edited-controls.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/forms/state-save-of-detached-control.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/frames/location-redirect-user-gesture-expected.txt
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/frames/location-redirect-user-gesture.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/history/history-back-initial-vs-final-url-expected.txt
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/history/history-back-initial-vs-final-url.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/history/history-length-append-subframe-no-hash-expected.txt
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/history/history-length-append-subframe-no-hash.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/history/history-length-append-subframe-with-hash-expected.txt
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/history/history-length-append-subframe-with-hash.html
[add] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/history/resources/alert-then-back.html
[add] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/history/resources/back-on-load.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/history/saves-state-after-fragment-nav.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/loader/form-state-restore-with-frames.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/loader/redirect-with-open-subframe-2.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/loader/redirect-with-open-subframe.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/loader/reload-zero-byte-plugin-expected.txt
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/loader/reload-zero-byte-plugin.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/loader/scroll-position-restoration-without-premature-clamping.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/loader/scroll-position-restored-on-back-at-load-event.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/loader/stateobjects/pushstate-in-data-url-denied-expected.txt
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/fast/loader/stateobjects/pushstate-in-data-url-denied.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/geolocation-api/clear-watch-invalid-id-crash-expected.txt
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/geolocation-api/clear-watch-invalid-id-crash.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/geolocation-api/notimer-after-unload-expected.txt
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/geolocation-api/notimer-after-unload.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/http/tests/appcache/fail-on-update.html
[add] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/http/tests/appcache/resources/notify-no-crash.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/http/tests/loading/onload-vs-immediate-refresh.pl
[add] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/http/tests/loading/resources/notify-success-on-load.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/http/tests/misc/resource-timing-iframe-restored-from-history.html
[add] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/http/tests/misc/resources/alert-then-back.html
[add] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/http/tests/misc/resources/notify-success.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/http/tests/misc/timer-vs-loading.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/http/tests/security/dataURL/xss-DENIED-from-javascript-url-window-open-expected.txt
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/http/tests/security/dataURL/xss-DENIED-to-data-url-window-open-expected.txt
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/http/tests/security/originHeader/origin-header-for-data-expected.txt
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/http/tests/security/originHeader/origin-header-for-data.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/http/tests/security/popup-allowed-by-sandbox-is-sandboxed-control.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/http/tests/security/popup-allowed-by-sandbox-is-sandboxed.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/http/tests/security/popup-allowed-by-sandbox-when-allowed.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/http/tests/xmlhttprequest/send-on-abort-expected.txt
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/http/tests/xmlhttprequest/send-on-abort.html
[add] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/inspector/tracing/resources/hello.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/inspector/tracing/timeline-misc/timeline-load-event.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/media/adopt-node-crash.html
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/plugins/plugin-initiate-popup-window-expected.txt
[modify] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/plugins/plugin-initiate-popup-window.html
[add] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/resources/back.html
[add] https://crrev.com/c2f35d38c64165cd85b8600f939b801b9281f53e/third_party/WebKit/LayoutTests/resources/notify-success.html

Status: Fixed (was: Assigned)

Sign in to add a comment