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

Issue 766694 link

Starred by 22 users

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 1
Type: Bug


Sign in to add a comment

Deprecate and remove HTML imports

Project Member Reported by rbyers@chromium.org, Sep 19 2017

Issue description

AFAIK there's consensus that the HTML imports proposal has failed to gain traction on the web and is likely to be replaced with ES6 modules.  At some point I assume we should be looking into the feasibility of deprecating and removing our support for HTML imports.
 

Comment 1 by tkent@chromium.org, Sep 22 2017

Labels: Hotlist-Interop
Owner: kochi@chromium.org
Status: Assigned (was: Untriaged)

Comment 2 by kochi@chromium.org, Sep 22 2017

Blockedon: 523952
To be clear on our position on deprecate and remove HTML imports,
until we have any alternative for HTML Imports, we will keep the
implementation, though considering the current situation that any
other browser does not adopt HTML Imports we would not recommend
start depending on HTML Imports.

One exception is  issue 523952 , which is currently on track for
deprecating and removing style application from HTML Imports to
the master document.  It is expected to happen in Mar. 2018.

Owner: yoichio@chromium.org

Comment 4 by kochi@chromium.org, Apr 4 2018

yoichio@, could you add a flag to disable HTML imports?

Polymer people (and possibly other people) can experiment how polyfill works
with the flag.

Project Member

Comment 5 by bugdroid1@chromium.org, Apr 10 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/587291f0e48d59beb15de7fe242808a631fbc999

commit 587291f0e48d59beb15de7fe242808a631fbc999
Author: Yoichi Osato <yoichio@chromium.org>
Date: Tue Apr 10 02:52:59 2018

Add "HTMLImports" runtime flag for Blink

This patch introduces the flag for the HTML Imports deprecation.

Use with --disable-blink-features=HTMLImports
flag on content_shell or chrome.

Bug: 766694
Change-Id: I9c0836f3fc05429d34062dc0fcc2eda209cc1cf0
Reviewed-on: https://chromium-review.googlesource.com/998455
Reviewed-by: Yoichi Osato <yoichio@chromium.org>
Reviewed-by: Takayoshi Kochi <kochi@chromium.org>
Reviewed-by: Kent Tamura <tkent@chromium.org>
Commit-Queue: Kent Tamura <tkent@chromium.org>
Cr-Commit-Position: refs/heads/master@{#549394}
[modify] https://crrev.com/587291f0e48d59beb15de7fe242808a631fbc999/third_party/blink/renderer/core/html/html_link_element.cc
[modify] https://crrev.com/587291f0e48d59beb15de7fe242808a631fbc999/third_party/blink/renderer/core/html/html_link_element.idl
[modify] https://crrev.com/587291f0e48d59beb15de7fe242808a631fbc999/third_party/blink/renderer/platform/runtime_enabled_features.json5

Project Member

Comment 6 by bugdroid1@chromium.org, Apr 26 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ae2469c0f58dc1a9e20d86f67379c7d87c2397b5

commit ae2469c0f58dc1a9e20d86f67379c7d87c2397b5
Author: Yoichi Osato <yoichio@chromium.org>
Date: Thu Apr 26 04:07:01 2018

Opt in HTML Imports to UKM USeCounter

Bug: 766694,  523952 
Change-Id: Ic794281024e97783d9f2bde6f2ca6c7f2eefdbb8
Reviewed-on: https://chromium-review.googlesource.com/1027551
Reviewed-by: Robert Kaplow <rkaplow@chromium.org>
Commit-Queue: Yoichi Osato <yoichio@chromium.org>
Cr-Commit-Position: refs/heads/master@{#553909}
[modify] https://crrev.com/ae2469c0f58dc1a9e20d86f67379c7d87c2397b5/chrome/browser/page_load_metrics/observers/use_counter/ukm_features.cc

UKM collection LGTM by privacy.
Thank you for reviewing!
Cc: pmeenan@chromium.org
 Issue 842671  has been merged into this issue.
Blocking: 521692
Anything I can do to help with this?  Removal of imports will significantly simplify the work for cleaning up the layout/paint logic (issue #521692).

I'm happy to scan the HTTP Archive for all of the sites using imports to make sure they are using the feature detection and polyfill fallback for starters.
It looks like there are 276 desktop sites in the latest HTTP Archive crawl of the top 500k domains that tripped the HTMLImports feature usage counter.

In bigquery:

#standardSQL
SELECT
  url
FROM
  `httparchive.pages.2018_04_15_desktop`
WHERE
  JSON_EXTRACT(payload, '$._blinkFeatureFirstUsed.Features.HTMLImports') IS NOT NULL

I have them in a sheet here and will try them out with the feature disabled and add notes if they are polymer-based or if they have a polyfill fallback.

https://docs.google.com/spreadsheets/d/1TgAFyM_HzSTisEE_sR6yhc5oEDnEdWJKtso-qr66Ma4/edit?usp=sharing
One thing that jumped out while looking through sites.  One of the sites that triggered the feature looks like it triggered it through Chrome's internal use of imports for UI.  It looks like there are parts of Chrome's UI that use imports directly or use polymer 1 but without the polyfill since it knows it is running in Chrome.

i.e. https://cs.chromium.org/chromium/src/ui/file_manager/gallery/gallery.html?q=rel%3D%22import%22&sq=package:chromium&dr=C

Searching for rel="import" in cs.chromium.org turns up 7182 references (granted, a bunch will be tests).

We will either need to migrate the UI components to polymer 2 or at least include the webcomponent polyfill.

Hmm.  Need to dig deeper but YouTube may be doing UA sniffing instead of feature detection and it is broken in Canary with the flag enabled.

https://www.youtube.com/user/RIDEChannel

https://www.youtube.com/
Confirmed with the YouTube team that the current UI depends on imports for Chrome and does it by UA sniffing :(
Cc: kschaaf@chromium.org
Thank you for investigating!
How much is HTMLImports blocking rendering work? Is that urgent?

We originally planed to deprecate HTMLImports but there were push-back
:https://groups.google.com/a/chromium.org/forum/#!topic/blink-dev/VZraFwqnp9Y/discussion

Today, HTMLImports is used 2.5% in wild:
https://www.chromestatus.com/metrics/feature/timeline/popularity/455
That's too high to deprecate it immediately.

Then I introduced the UKM to know how frequently HTML Imports is used on each web site
so that we can reach the sites from the biggest and ask them to stop using HTML Imports.
However the UKM is not on stable and I'm not doing any promotion work.

Polymer team is also working on Polyfill which emulates HTML Imports if the feature is disabled chrome.

I have 2 plans in the meanwhile:
A. Reach the site to stop using HTML Imports, if the usage counter gets enough low, deprecate HTML Imports.
This takes long time.

B. If we confirm the sites using HTML Imports work well on disabled chrome, deprecate it aggressively.
I'm bit suspicious that we can confirm sites working. For broken sites after deprecation, offering Origin Trials
to reenable HTMLImports works?:
https://github.com/GoogleChrome/OriginTrials/blob/gh-pages/developer-guide.md



Comment 17 by phistuck@gmail.com, May 15 2018

@yoichio - for A - start with YouTube - this will significantly decrease the usage since the video page uses the feature. :(
There isn't anything particularly urgent about the rendering work, just removing a bunch of special logic that can go away.  I can work on the CSS side of things which is also a blocker as long as it looks like imports will eventually go away (otherwise I actually need to do some work to imports but I was hoping to avoid that).

On the usage front, there are a few things going on and I don't think the UMA or UKM will be useful until they are handled.

1 - The vast majority of sites that are using web components use feature detection and if the browser doesn't support web components they load a polyfill.  Since web components are supported they are using them triggering the feature usage even though the sites also work fine without them.

The polyfill is here: https://www.webcomponents.org/polyfills

If you can break the feature detection but keep the underlying support (say, by removing "import" from the link element's IDL) then the use counter should only catch sites that use imports regardless of browser support (by UA sniffing or otherwise assuming they are in Chrome).

2 - YouTube.  The site itself will drive a ton of usage but it also triggers usage in other sites when the player is embedded.  In UKM that may end up showing up as a lot of sites but only because of embedded videos.

I'd recommend waiting for YouTube to migrate off of imports (or work with the team on options) and dealing with any Chrome UI that uses imports.  It looked like the trace viewer (at least the catapult version) is a heavy user but it also looks like different parts of Chrome's UI also depend on imports.

Once YouTube and the Chrome UI are off of imports and the feature detection is broken (but functionality is left in place) I would wager that the usage would drop very close to zero.

Comment 19 by kochi@chromium.org, May 16 2018

@phistuck at Google, YouTube is our property and relatively easier to
negotiate them out of using HTML imports than non-Google properties.
(although of course, YouTube has its own difficulty to change)

Comment 20 by phistuck@gmail.com, May 16 2018

#19 - yep, I know. I meant that since they probably significantly skew the results, you should probably start with them (and as soon as possible), otherwise the use counter will never really go down.

Comment 21 by kochi@chromium.org, May 18 2018

Blocking: 674593
Cc: dpa...@chromium.org

Comment 23 by kochi@chromium.org, May 21 2018

Re comment#18
For feature detection, we assume the recommended detection in the linked
document (https://www.webcomponents.org/polyfills) doesn't count in our
UMA/UKM, which just checks the existence of the property names in Object
prototypes. we only count actual invocation of those methods or getters.

So specifically for HTML imports, our counters should count the sites
that use actual imports, and not sites that feature-detects it.

Sorry, I didn't mean that the detection was triggering the UMA but that they were using imports because the detection worked.  That said, thinking about it more, the way the polyfill works may still end up using imports so breaking the feature detection won't make them stop using the feature.

The goal is to filter out the sites that are using imports but that don't depend on it since they are including the polyfill fallback and not count them towards the total.

I'll poke around a bit and see if there is a way to detect those cases from within Chrome.  I'll also see about automating a scan of the 276 sites in the HTTP Archive using imports to see how many are using the polyfill.

Comment 25 by kochi@chromium.org, May 21 2018

Ah, okay. Then the hypothesis is that if we could exclude sites that use
feature detection + polyfill can survive even after HTML Imports feature
is completely removed, and find out those sites that do not feature detect
and directly uses HTML Imports native.

BTW re comment#18 again
do you really see embedded YouTube player is using HTML Imports?
For example, at
https://www.theverge.com/2018/5/21/17369956/oneplus-6-review-phone-android-phone-price-specs
(if seen from desktop chrome, YouTube player is on top of the page)
it doesn't seem to trigger HTML Imports UMA feature (#455).

Although there may be various versions, and even YouTube may browser sniff
or serve different versions to different users via A/B tests, I can't be
sure just for a few examples.
I'm not 100% sure about the YouTube embeds.  There were 2 sites I was looking at that triggered the feature usage at the time of the HTTP Archive scan that don't show any current signs of imports and both have a youtube video embedded in an iFrame:

http://www.cmtrading.com/
http://www.ssfusd.org/

I'll see if I can dig up the actual HTTP Archive tests and check out the HTML from the time of the tests to see if it was something else.
The cmtrading one was a false alarm and came from a ticker widget which includes a polyfill.

I haven't been able to track down where http://www.ssfusd.org/ pulls it in yet.  There is a good chance it is coming in through embedly widgets which then embed youtube but I haven't found the actual references yet.  The only "import" references I have found in the included code are in the YouTube base js but I can't tell if any of those bits are executing:

https://www.youtube.com/yts/jsbin/player-vflXIriOh/en_US/base.js
Project Member

Comment 28 by bugdroid1@chromium.org, Jun 5 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4f255e036ad93024c2a1ccd983381b9f56ea9c6e

commit 4f255e036ad93024c2a1ccd983381b9f56ea9c6e
Author: Takayoshi Kochi <kochi@chromium.org>
Date: Tue Jun 05 07:55:03 2018

Count Polymer V1/V2 usage via UMA

To get more realistic number of users that are affected by
Custom Element v0 deprecation, we would like to exclude numbers
coming from Polymer v1 users, because they can just switch
to polyfill without any developer effort.

Also this CL adds Polymer V2 detection so that it can make
it easier to estimate the effect of HTML Imports deprecation.

Bug: 660759, 766694
Change-Id: I61605b854441973aa892932ac33cf781818ae14f
Reviewed-on: https://chromium-review.googlesource.com/1078591
Commit-Queue: Takayoshi Kochi <kochi@chromium.org>
Reviewed-by: Hayato Ito <hayato@chromium.org>
Cr-Commit-Position: refs/heads/master@{#564397}
[modify] https://crrev.com/4f255e036ad93024c2a1ccd983381b9f56ea9c6e/third_party/blink/public/platform/web_feature.mojom
[modify] https://crrev.com/4f255e036ad93024c2a1ccd983381b9f56ea9c6e/third_party/blink/renderer/core/dom/document.cc
[modify] https://crrev.com/4f255e036ad93024c2a1ccd983381b9f56ea9c6e/third_party/blink/renderer/core/html/custom/custom_element_registry.cc
[modify] https://crrev.com/4f255e036ad93024c2a1ccd983381b9f56ea9c6e/tools/metrics/histograms/enums.xml

Comment 29 by kochi@chromium.org, Jun 19 2018

Blockedon: 820654
Cc: yoichio@chromium.org r...@opera.com kochi@chromium.org esprehn@chromium.org hayato@chromium.org dglazkov@chromium.org
 Issue 523952  has been merged into this issue.
Cc: -pmeenan@chromium.org
Project Member

Comment 32 by bugdroid1@chromium.org, Aug 30

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c

commit fd153a3c70f437ece14c2ee3308fcd3d931ecb3c
Author: Yoichi Osato <yoichio@chromium.org>
Date: Thu Aug 30 03:26:57 2018

Show Deprecation message for HTML Import.

This patch marks it removed in M73.
This patch also unifies deprecation message for
HTMLImportsHasStyleSheets.

Bug: 766694
Change-Id: I7788a5500c3760fcf73e84c5badff2d4170904bc
Reviewed-on: https://chromium-review.googlesource.com/1192866
Reviewed-by: Kent Tamura <tkent@chromium.org>
Reviewed-by: Hayato Ito <hayato@chromium.org>
Commit-Queue: Yoichi Osato <yoichio@chromium.org>
Cr-Commit-Position: refs/heads/master@{#587433}
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/css/remove-pending-sheet-html-import-crash-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/dom/HTMLTemplateElement/ownerDocument-import-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/encoding-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-custom-element-abort-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-defaultView-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-destroy-stress-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-document-ready-state-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-dynamic-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-dynamic-shared-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-dynamic-tree-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-element-removed-flag-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-events-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-events-inline-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-expando-gc-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-ignore-document-write-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-in-iframe-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-insert-domcontentloaded-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-insert-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-link-with-media-query-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-master-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-nested-dup-2-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-nested-dup-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-normalize-resolve-1-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-normalize-resolve-2-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-normalize-resolve-3-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-normalize-resolve-4-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-normalize-resolve-5-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-onerror-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-onload-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-onload-with-stylesheets-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-remove-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-same-url-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-script-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-script-prototypes-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-shared-crash-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-style-append-to-main-after-load-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-style-append-to-main-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-style-basic-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-style-link-block-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-style-link-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-style-tree-order-dedup-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-style-tree-order-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/import-success-fail-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/rel-import-to-style-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/rel-style-to-import-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/sub-imports-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/sub-imports-loop-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/sub-imports-onload-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/window-onload-with-import-stylesheet-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/html/imports/xhr-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/fast/loader/javascript-detached-frame-no-crash-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/block-cookies-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/cached-import-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/cors-same-origin-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/cross-origin-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/csp-block-import-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/csp-block-import-non-self-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/csp-import-block-but-domain-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/csp-import-block-but-domain-nested-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/csp-import-block-but-nonce-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/csp-import-block-but-nonce-nested-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/csp-import-block-but-self-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/csp-import-block-but-self-nested-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/csp-in-imports-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/csp-not-block-import-in-import-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/encoding-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/import-blocking-child-blocks-child-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/import-blocking-child-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/import-blocking-nested-child-blocks-child-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/import-blocking-nested-child-blocks-nested-child-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/import-blocking-nested-child-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/import-cors-credentials-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/import-onerror-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/import-onload-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/import-preload-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/import-script-block-crossorigin-dynamic-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/import-script-nosniff-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/import-slow-child-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/import-upgrade-iframe-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/htmlimports/same-origin-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/security/referrer-policy-attribute-import-no-referrer-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/security/xssAuditor/html5-import-CORS-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/security/xssAuditor/html5-import-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/security/xssAuditor/html5-import-list-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/security/xssAuditor/html5-import-safe-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/WebKit/LayoutTests/http/tests/security/xssAuditor/html5-import-sol-expected.txt
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/blink/renderer/core/frame/deprecation.cc
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/blink/renderer/core/html/html_link_element.cc
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/blink/renderer/core/html/imports/html_import_child.cc
[modify] https://crrev.com/fd153a3c70f437ece14c2ee3308fcd3d931ecb3c/third_party/blink/renderer/core/html/imports/html_imports_controller.cc

Cc: -r...@opera.com futhark@chromium.org
Blocking: 891767
Blocking: 871827
Blocking: 911943
Blockedon: 915053
Project Member

Comment 38 by bugdroid1@chromium.org, Jan 7

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3419dc6afe8ce6c1c0e448de1c8e7e4b018d5372

commit 3419dc6afe8ce6c1c0e448de1c8e7e4b018d5372
Author: Yoichi Osato <yoichio@chromium.org>
Date: Mon Jan 07 08:32:09 2019

Enable WebComponentsV0-deprecation origin trial for HTML Imports

This patch is a part of WebComponentsV0 deprecation work and not for adding new features
though this is using origin trial framework.

This patch makes runtime-enabled feature HTMLImports origin trial feature
so that web author use the feature with a OT token on
"chrome --disable-blink-features=HTMLImports".

This patch doesn't throttle any usage of the feature.
I will turn "status: "stable"" to "test" for actual removal later.

Intent to deprecate and remove:
https://groups.google.com/a/chromium.org/forum/#!msg/blink-dev/h-JwMiPUnuU/sl79aLoLBQAJ

Test:
1. Create test token by:
python tools\origin_trials\generate_token.py http://127.0.0.1:8000 WebComponentsV0
2. Run built chrome with the public key:
./chrome.exe --disable-blink-features=HTMLImports --origin-trial-public-key=dRCs+TocuKkocNKa0AtZ4awrt9XKH2SQCI6o4FY6BNA=
3. Then load a page using the generated token: <meta http-equiv="origin-trial" content="<token>">

I confirmed declarative <link> after the meta element and imperative adding link element in js.

Bug: 766694
Change-Id: Ibbefc7d2a23f4b8c0cca5431221de4277940ccc9
Reviewed-on: https://chromium-review.googlesource.com/c/1360215
Commit-Queue: Yoichi Osato <yoichio@chromium.org>
Reviewed-by: Yoav Weiss <yoav@yoav.ws>
Reviewed-by: Ian Clelland <iclelland@chromium.org>
Reviewed-by: Hayato Ito <hayato@chromium.org>
Cr-Commit-Position: refs/heads/master@{#620275}
[modify] https://crrev.com/3419dc6afe8ce6c1c0e448de1c8e7e4b018d5372/third_party/blink/renderer/core/html/html_link_element.cc
[modify] https://crrev.com/3419dc6afe8ce6c1c0e448de1c8e7e4b018d5372/third_party/blink/renderer/core/html/html_link_element.idl
[modify] https://crrev.com/3419dc6afe8ce6c1c0e448de1c8e7e4b018d5372/third_party/blink/renderer/platform/runtime_enabled_features.json5

Comment 39 by yoichio@chromium.org, Yesterday (35 hours ago)

Labels: -Pri-3 M-74 Pri-1

Comment 40 by yoichio@chromium.org, Yesterday (34 hours ago)

Blockedon: 924031

Comment 41 by yoichio@chromium.org, Yesterday (34 hours ago)

Blockedon: 924034

Sign in to add a comment