Determine the fate of experimental '>>>' combinator |
|||
Issue descriptionThe '>>>' combinator, which is a replacement for '/deep/' combinator for piercing all the shadow DOM boundaries to style, which was implemented behind the flag in Blink. It seems the feature looks never used anywhere, https://www.chromestatus.com/metrics/feature/timeline/popularity/1691 The feature is not well accepted by other vendors e.g.: https://github.com/w3c/csswg-drafts/issues/640#issuecomment-367293984 Even the spec is still there in CSS https://drafts.csswg.org/css-scoping/#deep-combinator The removal from the spec is proposed at https://github.com/w3c/csswg-drafts/pull/2511
,
Apr 6 2018
> It seems the feature looks never used anywhere, > https://www.chromestatus.com/metrics/feature/timeline/popularity/1691 This feature is behind the flag, so you can't justify the removal by the usage. I don't object to the removal, but your reason sounds wrong to me. Have we asked feedback, after we implemented it behind a flag? For a feature behind a flag, the feedback is more important than the usage.
,
Apr 6 2018
It was implemented in late 2016 (at issue 633007 ). As far as I remember the request from lighthouse/devtools is the only feedback since then. https://github.com/ChromeDevTools/devtools-protocol/issues/19 The use case when originally Google proposed was i18n (e.g. finding a specific ID or class that needs changing the text according to the current locale), but it didn't persuade well about other vendors. Going forward, I think it should be discussed as a webdriver API or devtools protocol, not web-facing API. For web-facing API, considering the opposition from other vendors, we don't have a good reason to keep it in Blink in the current form.
,
Apr 6 2018
Thanks. Please make sure to record their feedback in this issue. Unless that, I'm afraid that people will complain about the removal. They might think that we are removing a feature without asking/hearing feedback.
,
Apr 6 2018
Also, please make sure to ping relevant stakeholders with a link to this issue, letting them know that we are removing this feature.
,
Apr 9 2018
I've commented on all relevant github issues. Will wait for a few days for the response for landing the change.
,
Apr 9 2018
Could you share links to all github issues for the record? We should know why this experiment didn't work well, and why they didn't give us feedback. e.g. - They didn't know this feature is available behind the flag. - They knew this feature is available behind the flag, but they din't try to use it for some reasons. - They tried to use it, but they didn't give us feedback, for some reasons, - Any other pitfalls are happening?
,
Apr 9 2018
Here are the comments for the record: https://github.com/w3c/webcomponents/issues/78#issuecomment-367294253 https://github.com/w3c/csswg-drafts/issues/640#issuecomment-379176645 https://github.com/ChromeDevTools/devtools-protocol/issues/19#issuecomment-379177109 With regards to spec, webcomponents#78 and csswg-drafts#640 should include all feedback from stakeholders e.g. https://github.com/w3c/csswg-drafts/issues/640#issuecomment-290952748 (for accessibility use case). And the developer feedback was private mail with reference to devtools-protocol#19. I'd say it was a low-hanging fruits to *implement* behind the flag, but was not a good way to gather feedback or attention to the feature, we should have done the other way, like implement what we get more interest from developers to get it used and get more realistic feedback. Let me send an "intent to remove" just in case for last-minute feedback.
,
Apr 9 2018
,
Apr 9 2018
Sent a request for comment to blink-dev https://groups.google.com/a/chromium.org/d/topic/blink-dev/ScMLN_Hj52E/discussion and will contact anyone who had interest in the discussion in the past.
,
Jun 13 2018
The summary of the comments sent to blink-dev: https://groups.google.com/a/chromium.org/d/msg/blink-dev/ScMLN_Hj52E/M2PjkIZUEAAJ
,
Jun 13 2018
Remaining actions are (quote from the summary above): - propose addition to webdriver - propose treewalker extension - remove the under-the-flag `>>>` support from Blink
,
Jul 12
Filed https://github.com/whatwg/dom/issues/665 https://github.com/w3c/csswg-drafts/issues/2908 For webdriver, I found an old existing thread and pinged there https://github.com/w3c/webdriver/issues/350
,
Jul 17
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/c81707c532183d4e6b878041964e85b0441b9f50 commit c81707c532183d4e6b878041964e85b0441b9f50 Author: Takayoshi Kochi <kochi@chromium.org> Date: Tue Jul 17 10:32:17 2018 Remove '>>>' (shadow-piercing combinator) This was implemented in crbug.com/633007 but was never adopted by any standards, and could not get much attention from developers except for testing use cases. As this was dismissed from the standard, we have to pursue the testing use cases in other forms. Bug: 829713 Change-Id: I2b053a15e96d68ff5a8c632e65b7b2feefb15dab Reviewed-on: https://chromium-review.googlesource.com/999453 Reviewed-by: Hayato Ito <hayato@chromium.org> Commit-Queue: Takayoshi Kochi <kochi@chromium.org> Cr-Commit-Position: refs/heads/master@{#575599} [modify] https://crrev.com/c81707c532183d4e6b878041964e85b0441b9f50/third_party/WebKit/LayoutTests/shadow-dom/query-selector.html [delete] https://crrev.com/6ada5346b4eeceb41fda9e04e40f3026a5bf6931/third_party/WebKit/LayoutTests/shadow-dom/shadow-piercing-descendant-combinator-in-static-profile.html [delete] https://crrev.com/6ada5346b4eeceb41fda9e04e40f3026a5bf6931/third_party/WebKit/LayoutTests/shadow-dom/shadow-piercing-descendant-combinator.html [modify] https://crrev.com/c81707c532183d4e6b878041964e85b0441b9f50/third_party/blink/public/platform/web_feature.mojom [modify] https://crrev.com/c81707c532183d4e6b878041964e85b0441b9f50/third_party/blink/renderer/core/css/css_selector.cc [modify] https://crrev.com/c81707c532183d4e6b878041964e85b0441b9f50/third_party/blink/renderer/core/css/css_selector.h [modify] https://crrev.com/c81707c532183d4e6b878041964e85b0441b9f50/third_party/blink/renderer/core/css/parser/css_selector_parser.cc [modify] https://crrev.com/c81707c532183d4e6b878041964e85b0441b9f50/third_party/blink/renderer/core/css/parser/css_selector_parser_test.cc [modify] https://crrev.com/c81707c532183d4e6b878041964e85b0441b9f50/third_party/blink/renderer/core/css/selector_checker.cc [modify] https://crrev.com/c81707c532183d4e6b878041964e85b0441b9f50/third_party/blink/renderer/core/css/selector_filter.cc
,
Jul 17
|
|||
►
Sign in to add a comment |
|||
Comment 1 by kochi@chromium.org
, Apr 6 2018