{"action":"created","issue":{"url":"https://api.github.com/repos/w3c/webcomponents/issues/428","repository_url":"https://api.github.com/repos/w3c/webcomponents","labels_url":"https://api.github.com/repos/w3c/webcomponents/issues/428/labels{/name}","comments_url":"https://api.github.com/repos/w3c/webcomponents/issues/428/comments","events_url":"https://api.github.com/repos/w3c/webcomponents/issues/428/events","html_url":"https://github.com/w3c/webcomponents/issues/428","id":139562359,"number":428,"title":"Change deepPath() back to path (a FrozenArray<EventTarget> attribute)","user":{"login":"foolip","id":498917,"avatar_url":"https://avatars.githubusercontent.com/u/498917?v=3","gravatar_id":"","url":"https://api.github.com/users/foolip","html_url":"https://github.com/foolip","followers_url":"https://api.github.com/users/foolip/followers","following_url":"https://api.github.com/users/foolip/following{/other_user}","gists_url":"https://api.github.com/users/foolip/gists{/gist_id}","starred_url":"https://api.github.com/users/foolip/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/foolip/subscriptions","organizations_url":"https://api.github.com/users/foolip/orgs","repos_url":"https://api.github.com/users/foolip/repos","events_url":"https://api.github.com/users/foolip/events{/privacy}","received_events_url":"https://api.github.com/users/foolip/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/w3c/webcomponents/labels/shadow-dom","name":"shadow-dom","color":"207de5"},{"url":"https://api.github.com/repos/w3c/webcomponents/labels/v1","name":"v1","color":"e11d21"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":8,"created_at":"2016-03-09T12:22:19Z","updated_at":"2016-03-10T05:17:03Z","closed_at":null,"body":"Continuing from https://github.com/w3c/webcomponents/issues/361#issuecomment-194252542:\r\n\r\n> `Event.deepPath()` came up in a [Shadow DOM v1: Status updates](https://groups.google.com/a/chromium.org/d/msg/Blink-dev/BUGxw_Yx5Lo/tunJEUYXAQAJ) blink-dev thread, where I question why this is a method and why we can't just stick with `Event.path`.\r\n>\r\n> The core of my concern is that there's no particular reason to think it will ever be possible to remove `Event.path` from Blink. The [usage](https://www.chromestatus.com/metrics/feature/timeline/popularity/345) (~2.5%) is almost certainly inflated by enumeration (making copies of events) but that still means we have no idea about how risky such a change would be.\r\n>\r\n> I think only a `readonly attribute FrozenArray<EventTarget> path` with deep semantics should be very seriously considered. There are two warts that I know of:\r\n> * All other things in DOM operate on the \"local\" tree, so using the generic name `path` for the deep event path is a bit inconsistent.\r\n> * A method makes it more obvious that a computation required.\r\n>\r\n> Still, at least in my mind, this is not terrible enough to risk yet another duplicated API in the long run, like `document.characterSet`+`document.charset` and innumerable prefixed APIs.\r\n\r\n@annevk also asks \"whether Blink includes WindowProxy in the path\", and it would be good to flesh out [the definition](http://w3c.github.io/webcomponents/spec/shadow/#widl-Event-deepPath-sequence-EventTarget) a bit.\r\n\r\nHere's a quick and basic test for that:\r\nhttp://software.hixie.ch/utilities/js/live-dom-viewer/saved/3975\r\n\r\nIn Chrome Canary it prints `[\"HTMLButtonElement\",\"ShadowRoot\",\"HTMLDivElement\",\"HTMLBodyElement\",\"HTMLHtmlElement\",\"HTMLDocument\",\"Window\"]` so the Window(Proxy) is included in the path."},"comment":{"url":"https://api.github.com/repos/w3c/webcomponents/issues/comments/194673508","html_url":"https://github.com/w3c/webcomponents/issues/428#issuecomment-194673508","issue_url":"https://api.github.com/repos/w3c/webcomponents/issues/428","id":194673508,"user":{"login":"rniwa","id":285965,"avatar_url":"https://avatars.githubusercontent.com/u/285965?v=3","gravatar_id":"","url":"https://api.github.com/users/rniwa","html_url":"https://github.com/rniwa","followers_url":"https://api.github.com/users/rniwa/followers","following_url":"https://api.github.com/users/rniwa/following{/other_user}","gists_url":"https://api.github.com/users/rniwa/gists{/gist_id}","starred_url":"https://api.github.com/users/rniwa/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rniwa/subscriptions","organizations_url":"https://api.github.com/users/rniwa/orgs","repos_url":"https://api.github.com/users/rniwa/repos","events_url":"https://api.github.com/users/rniwa/events{/privacy}","received_events_url":"https://api.github.com/users/rniwa/received_events","type":"User","site_admin":false},"created_at":"2016-03-10T05:17:03Z","updated_at":"2016-03-10T05:17:03Z","body":"@foolip : no :(  It can potentially change for every `n` in `p`.  Please go talk with @domenic / @hayatoito."}}