Hi Brandon!

I'll make sure to do that! I'll ping you next week when I start to work
on it!

Thanks,

Jun


On Fri, Apr 21, 2023 at 7:55 AM Brandon Heenan <bhee...@google.com> wrote:

> One addition please: work with me and the enterprise team to also add a
> paragraph to the enterprise release notes before the deprecation warning is
> switched to on-by-default
>
> On Fri, Apr 21, 2023 at 3:13 AM Yoav Weiss <yoavwe...@chromium.org> wrote:
>
>> LGTM2 for the above plan. Good luck!!
>>
>> On Thu, Apr 20, 2023 at 11:37 PM Rick Byers <rby...@chromium.org> wrote:
>>
>>> Jun and I have been talking about this offline and I think we've got a
>>> reasonable plan to attempt to proceed with this breaking change:
>>>
>>>    - Add Enterprise policy knob
>>>    <https://www.chromium.org/developers/enterprise-changes/>
>>>    - Disable in WebView by default (or add targetSdk quirk) - in
>>>    discussion with WebView team
>>>    - Publish a blog post explaining the change and how to adapt to it,
>>>    linked from chromestatus entry
>>>    - Add deprecation warning (console + deprecation report) linking to
>>>    chromestatus entry
>>>    - Try flipping the flag on with Finch in canary and dev builds,
>>>    maybe beta 50%, watch for reports of bugs and engage on any to see if
>>>    they're similarly easy to get sites fixed
>>>    - Once 3 milestones have passed with the deprecation warning and
>>>    there's aren't major known issues, flip the flag on by default (with
>>>    killswitch in place)
>>>    - As the change makes its way to stable, keep an eye on any reports.
>>>    Be prepared to hit the killswitch and iterate if there is significant
>>>    breakage that can't be immediately addressed.
>>>
>>> With this plan, I'm LGTM1 to give this a shot.
>>>
>>> On Tue, Jan 24, 2023 at 10:22 AM Rick Byers <rby...@chromium.org> wrote:
>>>
>>>>
>>>> On Mon, Jan 23, 2023 at 3:00 PM Jun Kokatsu <jkoka...@google.com>
>>>> wrote:
>>>>
>>>>> Hi All,
>>>>>
>>>>> I wanted to provide some updates on outreach I've done last week.
>>>>>
>>>>> I manually went through a list of sample sites in the use counter
>>>>> <https://chromestatus.com/metrics/feature/timeline/popularity/4356>,
>>>>> and contacted ~10 sites which will be impacted. Among those sites, 3 sites
>>>>> responded so far.
>>>>>
>>>>>    1. onsetapp.com has successfully migrated away from data: URLs in
>>>>>    SVGUseElement.
>>>>>       - Reason for the usage:
>>>>>
>>>>>
>>>>> *"We used them to import elements from SVG sprites, basically an SVG
>>>>>       file containing every icons loaded once at page load as an attempt 
>>>>> to
>>>>>       improve performance of the app."*
>>>>>    2. jobs.nzz.ch are testing the fix in the development pipeline,
>>>>>    and hope to migrate away from data: URLs in SVGUseElement soon.
>>>>>    - Reason for the usage is unsure as it was done a long time ago.
>>>>>    3. We've reached out to Salesforce contact (thanks Rick!) for
>>>>>    appexchange.salesforce.com. They are trying to find a responsible
>>>>>    team for that subdomain to understand why it was used, and if it can be
>>>>>    migrated away.
>>>>>
>>>>> Thanks Jun, that's some good anecdotal evidence that adapting to this
>>>> breaking change likely isn't too hard for most folks. Despite it being only
>>>> a couple anecdotes, this increases my confidence.
>>>>
>>>>
>>>>> I've also identified faucet.okp4.network as a false positive, because
>>>>> they use svgxuse <https://github.com/Keyamoon/svgxuse> as a fallback
>>>>> mechanism <https://github.com/okp4/ui/pull/433>.
>>>>>
>>>>
>>>> Fascinating.
>>>>
>>>> I will wait for sometime so that UKM will reach Beta or Stable, to
>>>>> further identify impacted origins with high volume of access.
>>>>>
>>>>
>>>> Yeah I think this is the most important next step. With luck we'll find
>>>> that there's not too much of a long tail and we can succeed in getting a
>>>> significant drop in usage through outreach.
>>>>
>>>> BTW, thank you Daniel for creating a page
>>>>> <https://dbratell.github.io/svg-use-icons/> with easy to read
>>>>> alternatives! This was very helpful in the outreach process!
>>>>>
>>>>
>>>> Thanks Daniel! If we proceed with deprecation then perhaps this page
>>>> should form the basis of a chromium.org blog post on the topic that we
>>>> can link to from the chromestatus entry that will be referenced in the
>>>> deprecation warning message.
>>>>
>>>>
>>>>>
>>>>> Thanks,
>>>>>
>>>>> Jun
>>>>>
>>>>>
>>>>> On Thu, Jan 19, 2023 at 3:23 PM Jun Kokatsu <jkoka...@google.com>
>>>>> wrote:
>>>>>
>>>>>> On Thu, Jan 19, 2023 at 2:14 PM Rick Byers <rby...@chromium.org>
>>>>>> wrote:
>>>>>>
>>>>>>> On Thu, Jan 19, 2023 at 1:17 PM Jun Kokatsu <jkoka...@google.com>
>>>>>>> wrote:
>>>>>>>
>>>>>>>> On Thu, Jan 19, 2023 at 9:29 AM Rick Byers <rby...@chromium.org>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>>> Thanks Daniel. I also looked at this page
>>>>>>>>> <https://appexchange.salesforce.com/#:~:text=Learn%20More-,Sponsored%20Solutions,-Show%20More>
>>>>>>>>>  which
>>>>>>>>> inlines the same 422 kB long sprite sheet 5 separate times, only to 
>>>>>>>>> select
>>>>>>>>> a tiny 422 BYTE SVG out of it each time! In that case, simply 
>>>>>>>>> inlining the
>>>>>>>>> desired SVG would save both several MB of network and a lot of 
>>>>>>>>> parse/decode
>>>>>>>>> time. Perhaps there's an opportunity for a tool at design time which
>>>>>>>>> unrolls these inlined sprite sheets, like Jun's tool
>>>>>>>>> <https://data-urls-in-svg-converter.glitch.me/> does?
>>>>>>>>>
>>>>>>>>> Rick
>>>>>>>>>
>>>>>>>>> On Thu, Jan 19, 2023 at 8:53 AM Daniel Bratell <
>>>>>>>>> bratel...@gmail.com> wrote:
>>>>>>>>>
>>>>>>>>>> Without saying whether it is appropriate to block data urls, I
>>>>>>>>>> would like to say that doing what the site is doing with icons in 
>>>>>>>>>> data urls
>>>>>>>>>> is far from the best way to do it. Since there are better ways to
>>>>>>>>>> accomplish the same output, it's not in itself a use pattern that 
>>>>>>>>>> must be
>>>>>>>>>> preserved. It is better to either have the icons in a separate file, 
>>>>>>>>>> or if
>>>>>>>>>> that is unsuitable, have them inline in an invisible svg. I put a 
>>>>>>>>>> quick
>>>>>>>>>> demo at https://dbratell.github.io/svg-use-icons/ but in short
>>>>>>>>>> you could have
>>>>>>>>>>
>>>>>>>>>> <svg style="display:none"><defs><symbol
>>>>>>>>>> id="icon1">...</symbol><symbol id="icon2">...</symbol></defs></svg>
>>>>>>>>>>
>>>>>>>>>> And then refer to the icons in it with <svg><use
>>>>>>>>>> xlink:href="#icon1"></svg> or <svg><use xlink:href="#icon2"></svg>
>>>>>>>>>> That would have cut tens of KB from the cz site source. I checked
>>>>>>>>>> with fs and thanks to optimizations Blink would not have created a 
>>>>>>>>>> separate
>>>>>>>>>> svg document for each icon but that was also a risk.
>>>>>>>>>>
>>>>>>>>>> (Also curious to the answer to Alex' question)
>>>>>>>>>>
>>>>>>>>>> /Daniel
>>>>>>>>>>
>>>>>>>>>> On 2023-01-18 17:50, Alex Russell wrote:
>>>>>>>>>>
>>>>>>>>>> Per today's API OWNERs meeting, a dumb question: is the XSS risk
>>>>>>>>>> here largely down to script execution triggered by this pattern? Or
>>>>>>>>>> non-script content in the inline'd SVG?
>>>>>>>>>>
>>>>>>>>>> Sorry, I just noticed that I only replied to Alex yesterday 🙂
>>>>>>>> The XSS risk here is mostly about script execution triggered by
>>>>>>>> this pattern. This includes (but not limited to) inline event handlers 
>>>>>>>> and
>>>>>>>> links with Javascript URLs.
>>>>>>>>
>>>>>>>
>>>>>>> So if we find it's too breaking to disallow this pattern completely,
>>>>>>> could we instead just disable script execution from within the context 
>>>>>>> of
>>>>>>> documents resulting from data: URLs in SVGUseAttributes?
>>>>>>>
>>>>>>
>>>>>> Is that solution for Trusted Types or XSS through SVGUseElement in
>>>>>> general?
>>>>>>
>>>>>
>>>> I was thinking for SVGUseElement in general.
>>>>
>>>>
>>>>> If it is for Trusted Types, it does solve the issue in Chromium for
>>>>>> short term, but we want other rendering engines to implement Trusted 
>>>>>> Types
>>>>>> as well. Does that mean we spec this in Trusted Types that inline event
>>>>>> handlers from SVGUseElement will be disallowed when enforcing Trusted
>>>>>> Types?
>>>>>> One thing I'm not sure about this approach is that each rendering
>>>>>> engine has differences in supported features inside SVGUseElement.
>>>>>>
>>>>>
>>>> Oh yeah I certainly wouldn't suggest we do anything chromium-specific
>>>> here. Just that if we decide the web compat challenge of deprecating all
>>>> data urls is too high, then we could probably get other vendors on board
>>>> with something more modest and get that fully spec'd and tested.
>>>>
>>>> For example, if the <foreignObject>
>>>>>> <https://developer.mozilla.org/en-US/docs/Web/SVG/Element/foreignObject>
>>>>>> is supported, then iframes inside foreignObject can have srcdoc, and it 
>>>>>> can
>>>>>> contain script tags which are considered "stored" XSS (because the 
>>>>>> payload
>>>>>> never goes through DOM APIs), and therefore Trusted Types could be 
>>>>>> bypassed
>>>>>> (i.e. script tags are not inline event handlers). But maybe the current
>>>>>> script element restriction
>>>>>> <https://www.w3.org/TR/SVG2/struct.html#UseShadowTree:~:text=Within%20a%20use%2Delement%20shadow%20tree%2C%20%E2%80%98script%E2%80%99%20elements%20are%20inert%20(do%20not%20execute)%3B>
>>>>>> on the use element is enough to apply in child frames too?
>>>>>>
>>>>>> If it is for XSS, then as I mentioned, SVG link
>>>>>> <https://developer.mozilla.org/en-US/docs/Web/SVG/Element/a> with
>>>>>> Javascript: URL can still trigger XSS (because the script execution is a
>>>>>> result of navigation, which can happen in the top frame or iframes by
>>>>>> target attribute).
>>>>>>
>>>>>> Long story short, we did consider disabling scripts, but people's
>>>>>> consensus (1
>>>>>> <https://github.com/mozilla/standards-positions/issues/718>, 2
>>>>>> <https://github.com/WebKit/standards-positions/issues/108>, 3
>>>>>> <https://github.com/w3c/trusted-types/issues/357#issuecomment-1049761361>
>>>>>> , 4
>>>>>> <https://bugs.chromium.org/p/chromium/issues/detail?id=1300195#c10>,
>>>>>> 5 <https://bugs.chromium.org/p/chromium/issues/detail?id=1300195#c11>)
>>>>>> has been that it's just better to deprecate data: URLs in SVGUseElement.
>>>>>>
>>>>>
>>>> Thanks for those links, I hadn't appreciated how much discussion
>>>> had gone into the tradeoffs already. I agree that if we can convince
>>>> ourselves it's not too breaking that this is the best solution. But I see
>>>> from the discussion that the consensus was based on the assumption that we
>>>> had already decided the web compat risk was sufficiently low. I'd certainly
>>>> prefer not to re-open the standards discussion as this solution seems the
>>>> safest, simplest and most coherent for the platform, but it's good to know
>>>> what our fallback options are so that we can keep the cost/benefit
>>>> tradeoffs in mind as we learn more.
>>>>
>>>>> Thanks
>>>>>>>>>>
>>>>>>>>>> On Tuesday, January 17, 2023 at 10:52:29 PM UTC-8 Jun Kokatsu
>>>>>>>>>> wrote:
>>>>>>>>>>
>>>>>>>>>>> On Tue, Jan 17, 2023 at 11:36 AM Brandon Heenan <
>>>>>>>>>>> bhee...@google.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Thanks for adding me. Yes, this definitely seems like the
>>>>>>>>>>>> pattern where we'd want a temporary enterprise policy to re-enable 
>>>>>>>>>>>> support
>>>>>>>>>>>> for ~3 milestones after we remove support by default.
>>>>>>>>>>>> go/chrome-enterprise-friendly
>>>>>>>>>>>> <https://goto.google.com/chrome-enterprise-friendly> gets into
>>>>>>>>>>>> the details of the why,
>>>>>>>>>>>> https://source.chromium.org/chromium/chromium/src/+/main:docs/enterprise/add_new_policy.md
>>>>>>>>>>>> is the step-by-step, and the enterprise team is always happy to 
>>>>>>>>>>>> advise as
>>>>>>>>>>>> well.
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Thank you for the details on enterprise policy! I'll make sure
>>>>>>>>>>> to follow those steps when I plan to remove the feature by default!
>>>>>>>>>>>
>>>>>>>>>>>> On Tue, Jan 17, 2023 at 10:51 AM Rick Byers <
>>>>>>>>>>>> rby...@chromium.org> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> On Tue, Jan 17, 2023 at 4:48 AM Yoav Weiss <
>>>>>>>>>>>>> yoavwe...@chromium.org> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>> Would it be possible to turn
>>>>>>>>>>>>>> <https://source.chromium.org/chromium/chromium/src/+/main:components/page_load_metrics/browser/observers/use_counter/ukm_features.cc;l=30?q=ukm%20usecounter&ss=chromium>
>>>>>>>>>>>>>> the usecounter into a UKM to get a better view of the number of 
>>>>>>>>>>>>>> impacted
>>>>>>>>>>>>>> origins, beyond just the homepage?
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> Yeah that could be useful. But we've also got some leads
>>>>>>>>>>>>> already so getting more leads may not be critical until we follow 
>>>>>>>>>>>>> up on the
>>>>>>>>>>>>> ones we have. Can we find a developer for one of those sites who 
>>>>>>>>>>>>> will talk
>>>>>>>>>>>>> to us about where that pattern is coming from in their toolchain 
>>>>>>>>>>>>> and how
>>>>>>>>>>>>> they'd migrate off it? Having the UKM data will also help in 
>>>>>>>>>>>>> selecting the
>>>>>>>>>>>>> sites that will have the most impact on our users (and hence our 
>>>>>>>>>>>>> UseCounter
>>>>>>>>>>>>> stats). Maybe we'll get lucky and find that, despite the long 
>>>>>>>>>>>>> tail, 90% of
>>>>>>>>>>>>> the usage is from just a few sites we can work with.
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>> Added UKM at https://crrev.com/c/4171733.
>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>> I wonder if this would be a good candidate for a deprecation
>>>>>>>>>>>>>> trial + enterprise policy. That would solve this injection 
>>>>>>>>>>>>>> vector for the
>>>>>>>>>>>>>> broader web, while giving impacted folks some more time to move 
>>>>>>>>>>>>>> away from
>>>>>>>>>>>>>> this pattern.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> Good idea. Impacting a large number of small sites is still
>>>>>>>>>>>>> problematic for a deprecation trial. Just reaching enough to make 
>>>>>>>>>>>>> any
>>>>>>>>>>>>> change at all is the hard part. Perhaps we can make replacing the 
>>>>>>>>>>>>> usage
>>>>>>>>>>>>> easier than the overhead of getting an applying an OT token? 
>>>>>>>>>>>>> Still a
>>>>>>>>>>>>> deprecation trial would probably be useful. Enterprise policy, 
>>>>>>>>>>>>> certainly. +Brandon
>>>>>>>>>>>>> Heenan <bhee...@google.com> can help advise on that. I'd also
>>>>>>>>>>>>> advise leaving this enabled for WebView (at least to start), it 
>>>>>>>>>>>>> feels like
>>>>>>>>>>>>> the sort of chromium rendering quirk we've found Android apps to 
>>>>>>>>>>>>> rely on
>>>>>>>>>>>>> disproportionately in the past.
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Fri, Jan 13, 2023 at 9:11 PM 'Jun Kokatsu' via blink-dev <
>>>>>>>>>>>>>> blink-dev@chromium.org> wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Thank you Rick for the detailed explanation!
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> On Fri, Jan 13, 2023 at 10:30 AM Rick Byers <
>>>>>>>>>>>>>>> rby...@chromium.org> wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Eliminating this makes sense to me given the security
>>>>>>>>>>>>>>>> benefit. Thank you for pushing it! But it does seem somewhat 
>>>>>>>>>>>>>>>> risky from a
>>>>>>>>>>>>>>>> web compat perspective. 0.005% is above our "small but
>>>>>>>>>>>>>>>> non-trivial risk
>>>>>>>>>>>>>>>> <https://docs.google.com/document/d/1RC-pBBvsazYfCNNUSkPqAVpSpNJ96U8trhNkfV0v9fk/edit#heading=h.mqfkui78vo5z>"
>>>>>>>>>>>>>>>> rule of thumb. Here's a bit of an analysis according to our 
>>>>>>>>>>>>>>>> other compat
>>>>>>>>>>>>>>>> principles <http://bit.ly/blink-compat>:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>    - Severity of breakage
>>>>>>>>>>>>>>>>    
>>>>>>>>>>>>>>>> <https://docs.google.com/document/d/1RC-pBBvsazYfCNNUSkPqAVpSpNJ96U8trhNkfV0v9fk/edit#heading=h.u5ya6jvru7dl>:
>>>>>>>>>>>>>>>>    lower given this is likely only about some visualis, but 
>>>>>>>>>>>>>>>> this
>>>>>>>>>>>>>>>>    site <https://jobs.nzz.ch/> is a good example of
>>>>>>>>>>>>>>>>    non-trivial UI breakage. This pattern of putting a 
>>>>>>>>>>>>>>>> base64-encoded SVG into
>>>>>>>>>>>>>>>>    an SVG <use> element with nothing else in the <svg> is 
>>>>>>>>>>>>>>>> weird, isn't it? Why
>>>>>>>>>>>>>>>>    would someone do that rather than just put the SVG in 
>>>>>>>>>>>>>>>> directly, or put the
>>>>>>>>>>>>>>>>    data URL into an img tag?
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> I've looked into that site. And it seems like they are
>>>>>>>>>>>>>>> reusing a single SVG image (i.e. data: URL SVG image) which 
>>>>>>>>>>>>>>> contains
>>>>>>>>>>>>>>> several images, and changing which image should be rendered by 
>>>>>>>>>>>>>>> combination
>>>>>>>>>>>>>>> of symbol
>>>>>>>>>>>>>>> <https://developer.mozilla.org/en-US/docs/Web/SVG/Element/symbol>
>>>>>>>>>>>>>>>  +
>>>>>>>>>>>>>>> id (which is only possible in use element, and not in img tag). 
>>>>>>>>>>>>>>> Migration
>>>>>>>>>>>>>>> can be done by hosting the same image in the same-origin 
>>>>>>>>>>>>>>> endpoint,
>>>>>>>>>>>>>>> converting it to blob: URL and assigning that to the <use> 
>>>>>>>>>>>>>>> element, or
>>>>>>>>>>>>>>> inlining each SVG image.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>> Interesting. So could we write a tool which, given the source
>>>>>>>>>>>>> html, transforms it to simply inline the selected SVG? That would 
>>>>>>>>>>>>> save some
>>>>>>>>>>>>> bytes too, right? We've found in the past that when we give 
>>>>>>>>>>>>> developers easy
>>>>>>>>>>>>> tools to trivially adapt their code, then it makes moderate-risk
>>>>>>>>>>>>> deprecations go quite smoother. I.e. when we get to the point of 
>>>>>>>>>>>>> having a
>>>>>>>>>>>>> deprecation warning (and report
>>>>>>>>>>>>> <https://wicg.github.io/deprecation-reporting/>) for the
>>>>>>>>>>>>> usage, if we can simply say "for most cases we've found you can 
>>>>>>>>>>>>> just run
>>>>>>>>>>>>> your html through this tool to adapt it automatically", then that 
>>>>>>>>>>>>> would
>>>>>>>>>>>>> help a LOT in having the comfort to make the breaking change. 
>>>>>>>>>>>>> Someone from
>>>>>>>>>>>>> the devrel or tooling teams with experience in how developers 
>>>>>>>>>>>>> approach
>>>>>>>>>>>>> images in practice (eg. +Addy Osmani <ad...@chromium.org>)
>>>>>>>>>>>>> might be able to advise on a pragmatic and helpful path.
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>> I've created a site to convert data: URLs in SVGUseElement to
>>>>>>>>>>> inline SVG.
>>>>>>>>>>> https://data-urls-in-svg-converter.glitch.me/
>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>>>    - I don't suppose there's some creative way to allow
>>>>>>>>>>>>>>>>    this specific odd pattern while still getting the security 
>>>>>>>>>>>>>>>> benefit, is
>>>>>>>>>>>>>>>>    there?
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Unfortunately, no. While we could read the href value of
>>>>>>>>>>>>>>> <use> elements and convert the data: URL to blob: URL, we won't 
>>>>>>>>>>>>>>> know if the
>>>>>>>>>>>>>>> data: URL was set by the site owner, or a malicious attacker 
>>>>>>>>>>>>>>> (through HTML
>>>>>>>>>>>>>>> injection). So while we could provide such a library, it does 
>>>>>>>>>>>>>>> not provide
>>>>>>>>>>>>>>> the security benefit that we are seeking.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>    - Unique sites impacted
>>>>>>>>>>>>>>>>    
>>>>>>>>>>>>>>>> <https://docs.google.com/document/d/1RC-pBBvsazYfCNNUSkPqAVpSpNJ96U8trhNkfV0v9fk/edit#heading=h.4k9u8ddizqrq>:
>>>>>>>>>>>>>>>>    Finding a variety of small sites is actually a lot worse 
>>>>>>>>>>>>>>>> than if we had
>>>>>>>>>>>>>>>>    found only a few bigger sites. It means there's probably 
>>>>>>>>>>>>>>>> some common tool
>>>>>>>>>>>>>>>>    or pattern leading different designers/developers to do 
>>>>>>>>>>>>>>>> this and so likely
>>>>>>>>>>>>>>>>    a relatively large number of individuals who would need to 
>>>>>>>>>>>>>>>> be involved in
>>>>>>>>>>>>>>>>    fixing the breakage. Of course our HTTP Archive list of 
>>>>>>>>>>>>>>>> sites is just a
>>>>>>>>>>>>>>>>    subset of who's fully impacted, so if the problem is a 
>>>>>>>>>>>>>>>> long-tail one as it
>>>>>>>>>>>>>>>>    seems, HTTP archive data shows us only the tip of that long 
>>>>>>>>>>>>>>>> tail.
>>>>>>>>>>>>>>>>    - Security
>>>>>>>>>>>>>>>>    
>>>>>>>>>>>>>>>> <https://docs.google.com/document/d/1RC-pBBvsazYfCNNUSkPqAVpSpNJ96U8trhNkfV0v9fk/edit#heading=h.iklh96dxj81w>:
>>>>>>>>>>>>>>>>    it's definitely worth taking some comapt risk to reduce XSS 
>>>>>>>>>>>>>>>> surface area. I
>>>>>>>>>>>>>>>>    don't fully understand the threat model though. Is this 
>>>>>>>>>>>>>>>> mainly a risk for
>>>>>>>>>>>>>>>>    sites who are programmatically putting (potentially 
>>>>>>>>>>>>>>>> attacker-controlled)
>>>>>>>>>>>>>>>>    strings into SVGUseElement hrefs? Or are you more worried 
>>>>>>>>>>>>>>>> about cases where
>>>>>>>>>>>>>>>>    the attacker controls the HTML and can take advantage of 
>>>>>>>>>>>>>>>> this oddity in the
>>>>>>>>>>>>>>>>    platform on any normal site? I'm just trying to gauge the 
>>>>>>>>>>>>>>>> magnitude of the
>>>>>>>>>>>>>>>>    security benefit here to weigh it against the comapt risk, 
>>>>>>>>>>>>>>>> any help is
>>>>>>>>>>>>>>>>    appreciated.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> We are worried about both (i.e. Server-side injection and
>>>>>>>>>>>>>>> DOM XSS). The fact that this has led to several browser 
>>>>>>>>>>>>>>> security feature
>>>>>>>>>>>>>>> bypasses (e.g. Sanitizer API and Trusted Types) suggests that 
>>>>>>>>>>>>>>> it's not a
>>>>>>>>>>>>>>> commonly known XSS sink, and therefore we believe that it's 
>>>>>>>>>>>>>>> common for
>>>>>>>>>>>>>>> security mechanisms (e.g. sanitizers, linters) to miss this odd 
>>>>>>>>>>>>>>> feature.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>    - Ease of adaptation
>>>>>>>>>>>>>>>>    
>>>>>>>>>>>>>>>> <https://docs.google.com/document/d/1RC-pBBvsazYfCNNUSkPqAVpSpNJ96U8trhNkfV0v9fk/edit#heading=h.x5bhg5grhfeo>:
>>>>>>>>>>>>>>>>    seems like it should be easy to use an alternative, at 
>>>>>>>>>>>>>>>> least for these
>>>>>>>>>>>>>>>>    image cases, but I guess it's hard to say without knowing 
>>>>>>>>>>>>>>>> why people are
>>>>>>>>>>>>>>>>    doing this. Is there perhaps some website design tool which 
>>>>>>>>>>>>>>>> is generating
>>>>>>>>>>>>>>>>    this and will need to change?
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> I think it is easy to migrate by hosting the same image to
>>>>>>>>>>>>>>> the same-origin endpoint. However, I do understand that it's 
>>>>>>>>>>>>>>> just less work
>>>>>>>>>>>>>>> to use data: URL than using same-origin image or blob: URL.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>    - Interop
>>>>>>>>>>>>>>>>    
>>>>>>>>>>>>>>>> <https://docs.google.com/document/d/1RC-pBBvsazYfCNNUSkPqAVpSpNJ96U8trhNkfV0v9fk/edit#heading=h.4hjbxw7513sw>:
>>>>>>>>>>>>>>>>    The fact that this doesn't work in Safari is a vote in 
>>>>>>>>>>>>>>>> favor of breaking it
>>>>>>>>>>>>>>>>    in chromium to achieve interop. It does work in Firefox 
>>>>>>>>>>>>>>>> though.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>  For the interop, it's best to use a same-origin URL or
>>>>>>>>>>>>>>> blob: URL. And since both Mozilla and Webkit are supportive, I 
>>>>>>>>>>>>>>> believe it's
>>>>>>>>>>>>>>> positive.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>    - Standards conformance
>>>>>>>>>>>>>>>>    
>>>>>>>>>>>>>>>> <https://docs.google.com/document/d/1RC-pBBvsazYfCNNUSkPqAVpSpNJ96U8trhNkfV0v9fk/edit#heading=h.xcsa26ortrmi>:
>>>>>>>>>>>>>>>>    This is allowed by spec today, so breaking it requires some 
>>>>>>>>>>>>>>>> more diligence
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Note that the PR <https://github.com/w3c/svgwg/pull/901>
>>>>>>>>>>>>>>> to SVG spec got merged.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>> Right, yes, sorry. What I meant was we took the initiative to
>>>>>>>>>>>>> make a breaking change to long established behavior - IMHO that 
>>>>>>>>>>>>> makes the
>>>>>>>>>>>>> bar higher than if Chrome had just had a bug in allowing 
>>>>>>>>>>>>> something that was
>>>>>>>>>>>>> never spec'd or allowed by other browsers. Still I think we can 
>>>>>>>>>>>>> use this
>>>>>>>>>>>>> positively in our outreach - say something like "the spec has 
>>>>>>>>>>>>> changed to
>>>>>>>>>>>>> not allow this, all the major browser engines agree that for 
>>>>>>>>>>>>> security
>>>>>>>>>>>>> reasons it should be disallowed. It already doesn't work in 
>>>>>>>>>>>>> Safari and
>>>>>>>>>>>>> other WebKit browsers, we want to help you fix your site to work 
>>>>>>>>>>>>> in all
>>>>>>>>>>>>> browsers".
>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>    - Enterprise
>>>>>>>>>>>>>>>>    
>>>>>>>>>>>>>>>> <https://docs.google.com/document/d/1RC-pBBvsazYfCNNUSkPqAVpSpNJ96U8trhNkfV0v9fk/edit#heading=h.axcg738lzcs9>:
>>>>>>>>>>>>>>>>    Being broken in Safari is an indication the risk will be 
>>>>>>>>>>>>>>>> higher in
>>>>>>>>>>>>>>>>    enterprise software which is often chromium-only. We may 
>>>>>>>>>>>>>>>> need to go through
>>>>>>>>>>>>>>>>    the enterprise breaking change process
>>>>>>>>>>>>>>>>    <https://www.chromium.org/developers/enterprise-changes/>
>>>>>>>>>>>>>>>>    .
>>>>>>>>>>>>>>>>    - Outreach
>>>>>>>>>>>>>>>>    
>>>>>>>>>>>>>>>> <https://docs.google.com/document/d/1RC-pBBvsazYfCNNUSkPqAVpSpNJ96U8trhNkfV0v9fk/edit#heading=h.t9ade4ywppcg>:
>>>>>>>>>>>>>>>>    Given the relatively high usage, if we want to proceed with 
>>>>>>>>>>>>>>>> this plan I
>>>>>>>>>>>>>>>>    think this is the main opportunity for mitigations. Can we 
>>>>>>>>>>>>>>>> try contacting
>>>>>>>>>>>>>>>>    some of these sites we've identified to understand why 
>>>>>>>>>>>>>>>> they're using this
>>>>>>>>>>>>>>>>    pattern? Is there a tool generating this pattern which we 
>>>>>>>>>>>>>>>> can get updated
>>>>>>>>>>>>>>>>    before we make the change? I think we'd need a blog post 
>>>>>>>>>>>>>>>> capturing what
>>>>>>>>>>>>>>>>    we've learned from talking with a few customers who have 
>>>>>>>>>>>>>>>> done this and how
>>>>>>>>>>>>>>>>    they fixed it for their UI design flow.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Sorry it's not looking to be an easy decision, but I hope
>>>>>>>>>>>>>>>> this gives you some ideas for how we might be able to reduce 
>>>>>>>>>>>>>>>> the risk to a
>>>>>>>>>>>>>>>> point that we could proceed. WDYT?
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Yes, it sounds good to me! I will check what has to be done
>>>>>>>>>>>>>>> and do those step by step 🙂
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>> Ok, good luck! Sorry this isn't as straightforward as a clear
>>>>>>>>>>>>> recipe.  But if we can get a couple developers telling us they 
>>>>>>>>>>>>> were easily
>>>>>>>>>>>>> able to fix their issue by using a tool or straightforward 
>>>>>>>>>>>>> instructions we
>>>>>>>>>>>>> can point other to, and we see the UseCounter drop significantly 
>>>>>>>>>>>>> (say by
>>>>>>>>>>>>> half or so) without major new red flags, then I'd personally be OK
>>>>>>>>>>>>> approving a removal attempt. Of course it's common to learn 
>>>>>>>>>>>>> during beta
>>>>>>>>>>>>> (or, worst case, upon stable release) that the compat issue is 
>>>>>>>>>>>>> worse than
>>>>>>>>>>>>> we thought and so the change needs to be reverted (or flagged off 
>>>>>>>>>>>>> with
>>>>>>>>>>>>> finch) in a hurry. But I think we've learned a lot over the years 
>>>>>>>>>>>>> about how
>>>>>>>>>>>>> to predict and avoid that failure mode. Let me know if I can do 
>>>>>>>>>>>>> anything
>>>>>>>>>>>>> else to help, happy to meet to brainstorm further for example. 
>>>>>>>>>>>>> Good luck!
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>> Thanks! I'll start outreach for a couple of sites we already
>>>>>>>>>>> know are affected, and go from there!
>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Rick
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> On Thu, Jan 12, 2023 at 3:11 PM 'Jun Kokatsu' via blink-dev
>>>>>>>>>>>>>>>> <blink-dev@chromium.org> wrote:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> On Thu, Jan 12, 2023 at 10:44 AM Mike Taylor <
>>>>>>>>>>>>>>>>> miketa...@chromium.org> wrote:
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> On 1/11/23 6:49 PM, 'Jun Kokatsu' via blink-dev wrote:
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Contact emails
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> jkoka...@google.com
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Specification
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> https://svgwg.org/svg2-draft/struct.html#UseElementHrefAttribute
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> https://github.com/w3c/svgwg/pull/901/files
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Summary
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Assigning a data: URL in SVGUseElement can cause XSS. And
>>>>>>>>>>>>>>>>>> this also led to a Trusted Types bypass.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Therefore, we plan to deprecate and remove support for it.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Blink component
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Blink>SVG
>>>>>>>>>>>>>>>>>> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3ESVG>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Motivation
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Assigning an attacker controlled string to
>>>>>>>>>>>>>>>>>> SVGUseElement.href causes XSS and a Trusted Types bypass
>>>>>>>>>>>>>>>>>> <https://github.com/w3c/trusted-types/issues/357>
>>>>>>>>>>>>>>>>>> because of data: URLs. If we fix this bug by requiring 
>>>>>>>>>>>>>>>>>> TrustedScriptURL
>>>>>>>>>>>>>>>>>> assignment to SVGUseElement.href under Trusted Types 
>>>>>>>>>>>>>>>>>> enforcement, many
>>>>>>>>>>>>>>>>>> sites would need to refactor code (even for same-origin URL 
>>>>>>>>>>>>>>>>>> or Blob URL
>>>>>>>>>>>>>>>>>> assignment).
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Since Webkit does not support data: URLs in SVGUseElement
>>>>>>>>>>>>>>>>>> and both Mozilla and Webkit are supportive for the removal, 
>>>>>>>>>>>>>>>>>> we think that
>>>>>>>>>>>>>>>>>> removing support for data: URLs in SVGUseElement is the 
>>>>>>>>>>>>>>>>>> right way to solve
>>>>>>>>>>>>>>>>>> this problem.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Additionally, data: URLs can only trigger script
>>>>>>>>>>>>>>>>>> execution in script loaders such as HTMLScriptElement.src or 
>>>>>>>>>>>>>>>>>> dynamic
>>>>>>>>>>>>>>>>>> import
>>>>>>>>>>>>>>>>>> <https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/import>.
>>>>>>>>>>>>>>>>>> However, SVGUseElement is an exception to this, which also 
>>>>>>>>>>>>>>>>>> caused a
>>>>>>>>>>>>>>>>>> bypass
>>>>>>>>>>>>>>>>>> <https://bugs.chromium.org/p/chromium/issues/detail?id=1306450#c10>
>>>>>>>>>>>>>>>>>> in the Sanitizer API. We believe that this also led to 
>>>>>>>>>>>>>>>>>> several other bugs
>>>>>>>>>>>>>>>>>> in sanitizers and linters missing a check for this special 
>>>>>>>>>>>>>>>>>> case.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> The usage
>>>>>>>>>>>>>>>>>> <https://chromestatus.com/metrics/feature/timeline/popularity/4356>
>>>>>>>>>>>>>>>>>> of data: URLs in SVGUseElement is about 0.005%.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Digging into the HTTP Archive shows usages in ~50 sites.
>>>>>>>>>>>>>>>>>> There are 2 major sites (slickdeals.net and
>>>>>>>>>>>>>>>>>> hunter.104.com.tw) which use data: URLs in SVGUseElement.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> The use in slickdeals.net is invisible (i.e. used in the
>>>>>>>>>>>>>>>>>> footer but doesn't appear), and hunter.104.com.tw is
>>>>>>>>>>>>>>>>>> using it for a single icon in the footer (which is already 
>>>>>>>>>>>>>>>>>> broken when
>>>>>>>>>>>>>>>>>> rendered in Webkit). Rest of the usages seems to be in 
>>>>>>>>>>>>>>>>>> individual small
>>>>>>>>>>>>>>>>>> sites.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> I poked around the 10 sample sites at the bottom of the
>>>>>>>>>>>>>>>>>> use counter:
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> https://www.aspareanord.it/, https://www.umbria.camcom.it,
>>>>>>>>>>>>>>>>>> https://www.bisenzio.it/,
>>>>>>>>>>>>>>>>>> https://www.comune.vernio.po.it/,
>>>>>>>>>>>>>>>>>> https://appaltinnovativi.gov.it/, https://www.gdf.gov.it/,
>>>>>>>>>>>>>>>>>> https://www.us.schott.com/, https://shop.wavin.com/,
>>>>>>>>>>>>>>>>>> https://jobs.nzz.ch/, https://www.learnapp.com/
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> For the 6 Italian sites (I guess the same agency made
>>>>>>>>>>>>>>>>>> them?), the right arrow icon next to "Vedi" would disappear. 
>>>>>>>>>>>>>>>>>> For a site
>>>>>>>>>>>>>>>>>> like https://jobs.nzz.ch - there's a number of visually
>>>>>>>>>>>>>>>>>> significant design icons that would be gone towards the 
>>>>>>>>>>>>>>>>>> bottom (and yes, it
>>>>>>>>>>>>>>>>>> looks sort of broken today in Safari).
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> It's not the end of the world, looking at these 10 sites,
>>>>>>>>>>>>>>>>>> but I wonder how a developer would know how to fix this. 
>>>>>>>>>>>>>>>>>> Have you
>>>>>>>>>>>>>>>>>> considered a DevTools issue?
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Thank you for the suggestion! Yes, I do plan to follow 
>>>>>>>>>>>>>>>>> Deprecation
>>>>>>>>>>>>>>>>> steps
>>>>>>>>>>>>>>>>> <https://chromium.googlesource.com/chromium/src/+/HEAD/third_party/blink/renderer/core/frame/deprecation/README.md>
>>>>>>>>>>>>>>>>>  and
>>>>>>>>>>>>>>>>> add a Devtools issue 🙂
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Initial public proposal
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> TAG review
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> TAG review status
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Not applicable.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Because this intent removes part of a feature, and it is
>>>>>>>>>>>>>>>>>> already shipped in Webkit (i.e. never supported).
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Risks
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Interoperability and Compatibility
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Gecko: Positive
>>>>>>>>>>>>>>>>>> <https://github.com/mozilla/standards-positions/issues/718>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> WebKit: Positive
>>>>>>>>>>>>>>>>>> <https://github.com/WebKit/standards-positions/issues/108>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Web developers: No signals
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Debuggability
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Is this feature fully tested by web-platform-tests
>>>>>>>>>>>>>>>>>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
>>>>>>>>>>>>>>>>>> ?
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Yes
>>>>>>>>>>>>>>>>>> <https://github.com/web-platform-tests/wpt/pull/37511>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Flag name
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> RemoveDataUrlInSvgUse
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Requires code in //chrome?
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> False
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Tracking bug
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> https://bugs.chromium.org/p/chromium/issues/detail?id=1300195
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Estimated milestones
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Deprecate for 2 milestones, then remove depending on
>>>>>>>>>>>>>>>>>> breakages.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Can you say more about what the deprecation looks like
>>>>>>>>>>>>>>>>>> (i.e., blog post, deprecation reports, devtools issue, etc)?
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Link to entry on the Chrome Platform Status
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> https://chromestatus.com/feature/5128825141198848
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> This intent message was generated by Chrome Platform
>>>>>>>>>>>>>>>>>> Status <https://chromestatus.com/>.
>>>>>>>>>>>>>>>>>> --
>>>>>>>>>>>>>>>>>> You received this message because you are subscribed to
>>>>>>>>>>>>>>>>>> the Google Groups "blink-dev" group.
>>>>>>>>>>>>>>>>>> To unsubscribe from this group and stop receiving emails
>>>>>>>>>>>>>>>>>> from it, send an email to
>>>>>>>>>>>>>>>>>> blink-dev+unsubscr...@chromium.org.
>>>>>>>>>>>>>>>>>> To view this discussion on the web visit
>>>>>>>>>>>>>>>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOWKMF6VXw7jmQoZM47i3ybzn%3D5Pc4mw26Khv9U9aP_UzBt-dg%40mail.gmail.com
>>>>>>>>>>>>>>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOWKMF6VXw7jmQoZM47i3ybzn%3D5Pc4mw26Khv9U9aP_UzBt-dg%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>>>>>>>>>>>>>>> .
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> --
>>>>>>>>>>>>>>>>> You received this message because you are subscribed to
>>>>>>>>>>>>>>>>> the Google Groups "blink-dev" group.
>>>>>>>>>>>>>>>>> To unsubscribe from this group and stop receiving emails
>>>>>>>>>>>>>>>>> from it, send an email to
>>>>>>>>>>>>>>>>> blink-dev+unsubscr...@chromium.org.
>>>>>>>>>>>>>>>>> To view this discussion on the web visit
>>>>>>>>>>>>>>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOWKMF5KQOG5R8baUM41T4fR01QbGFjvvEsf629h%2BzASCn_F0Q%40mail.gmail.com
>>>>>>>>>>>>>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOWKMF5KQOG5R8baUM41T4fR01QbGFjvvEsf629h%2BzASCn_F0Q%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>>>>>>>>>>>>>> .
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> --
>>>>>>>>>>>>>>> You received this message because you are subscribed to the
>>>>>>>>>>>>>>> Google Groups "blink-dev" group.
>>>>>>>>>>>>>>> To unsubscribe from this group and stop receiving emails
>>>>>>>>>>>>>>> from it, send an email to blink-dev+unsubscr...@chromium.org
>>>>>>>>>>>>>>> .
>>>>>>>>>>>>>>> To view this discussion on the web visit
>>>>>>>>>>>>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOWKMF65KcSCkzVupRw4n8ZG%3DKKbG5GY62HzwNSZW4Z78ZYd_w%40mail.gmail.com
>>>>>>>>>>>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOWKMF65KcSCkzVupRw4n8ZG%3DKKbG5GY62HzwNSZW4Z78ZYd_w%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>>>>>>>>>>>> .
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>> --
>>>>>>>>>> You received this message because you are subscribed to the
>>>>>>>>>> Google Groups "blink-dev" group.
>>>>>>>>>> To unsubscribe from this group and stop receiving emails from it,
>>>>>>>>>> send an email to blink-dev+unsubscr...@chromium.org.
>>>>>>>>>> To view this discussion on the web visit
>>>>>>>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/d63c3823-20b6-457c-bff9-f85429421bf0n%40chromium.org
>>>>>>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/d63c3823-20b6-457c-bff9-f85429421bf0n%40chromium.org?utm_medium=email&utm_source=footer>
>>>>>>>>>> .
>>>>>>>>>>
>>>>>>>>>>

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOWKMF4pXiQd2OvaSfB0ZLFZ-0Ej9ghW%2BDbhrCVMUzy9Zhk4Zw%40mail.gmail.com.

Reply via email to