- 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