- From: Matthew Ryan <notifications@github.com>
- Date: Mon, 16 May 2016 00:41:00 -0700
- To: w3c/webcomponents <webcomponents@noreply.github.com>
- Cc:
- Message-ID: <w3c/webcomponents/issues/499/219367439@github.com>
> That would go back on implementer consensus.
So this is non-negotiable?
> That was the position until last year and it basically meant that only Chrome would ever ship something resembling shadow DOM.
To clarify, are you saying that open shadow DOM -- which is widely acknowledged to be advantageous -- will not be implemented without closed shadow DOM, which variously has:
* advantages (summarising from above)
- a 'stronger contract' than open
+ in reality, this means that 5-ish more lines of code are needed
+ the people that the workaround makes uncomfortable (overriding a DOM API in production) are the people most likely to already understand the risks of penetrating a shadow DOM and have accepted them
+ copy-paste-ers will notice only that they had to do one more search to make their code work
- (can't find any others)
* disadvantages
- workarounds for 'code injectors' (variously extensions, user scripts, automation/testing tools, accessibility tools and bookmarklets) will either not exist -- generally accepted as unintended/bad -- or will result in
+ proliferation of identically intentioned APIs across multiple specs (which all inherit the DOM API anyway)
+ inconsistency across APIs, since each spec has to design and incorperate its own
- asymmetry of implicit understanding
+ component developers can easily make an uninformed choice of 'closed', causing problems for downstream developers (as opposed to eg. `Object.defineProperty` to shield `shadowRoot`)
+ application developers have to patch a DOM API to undo this
- goes against what is actually being done on the web
+ introduction of shadow DOMs have seen widespread use of `shadowRoot`
+ there is noticably little developer interest in closed shadow DOM in the wider community
- lots of work is being done to implement a feature which will be
+ mostly unnoticed by developers who it wasn't intended to affect, and indistinguishable for them from open shadow DOM
+ irritating for the few developers who can't Google around it
+ completely circumvented (code completely unused) when developers work around it.
Maybe this is already written in stone and I'm just pissing in the wind, but I really can't see why there is such strong intention to have this 'feature'.
---
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/w3c/webcomponents/issues/499#issuecomment-219367439
Received on Monday, 16 May 2016 07:41:28 UTC