{"action":"created","issue":{"url":"https://api.github.com/repos/angular/angular/issues/12575","repository_url":"https://api.github.com/repos/angular/angular","labels_url":"https://api.github.com/repos/angular/angular/issues/12575/labels{/name}","comments_url":"https://api.github.com/repos/angular/angular/issues/12575/comments","events_url":"https://api.github.com/repos/angular/angular/issues/12575/events","html_url":"https://github.com/angular/angular/issues/12575","id":185786006,"number":12575,"title":"Remove `BaseError` implementation hack that depends on bad closure-compiler behavior.","user":{"login":"brad4d","id":1115235,"avatar_url":"https://avatars.githubusercontent.com/u/1115235?v=3","gravatar_id":"","url":"https://api.github.com/users/brad4d","html_url":"https://github.com/brad4d","followers_url":"https://api.github.com/users/brad4d/followers","following_url":"https://api.github.com/users/brad4d/following{/other_user}","gists_url":"https://api.github.com/users/brad4d/gists{/gist_id}","starred_url":"https://api.github.com/users/brad4d/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brad4d/subscriptions","organizations_url":"https://api.github.com/users/brad4d/orgs","repos_url":"https://api.github.com/users/brad4d/repos","events_url":"https://api.github.com/users/brad4d/events{/privacy}","received_events_url":"https://api.github.com/users/brad4d/received_events","type":"User","site_admin":false},"labels":[{"id":375501288,"url":"https://api.github.com/repos/angular/angular/labels/comp:%20core%20&%20compiler","name":"comp: core & compiler","color":"c7def8","default":false},{"id":317126348,"url":"https://api.github.com/repos/angular/angular/labels/flag:%20can%20be%20closed?","name":"flag: can be closed?","color":"bfdadc","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":13,"created_at":"2016-10-27T21:32:37Z","updated_at":"2016-12-16T15:51:21Z","closed_at":null,"body":"**I'm submitting a ...**  (check one with \"x\")\n\n```\n[x] bug report => search github for a similar issue or PR before submitting\n[ ] feature request\n[ ] support request => Please do not submit support request here, instead see https://github.com/angular/angular/blob/master/CONTRIBUTING.md#question\n```\n\n**Current behavior**\nhttps://github.com/angular/angular/blob/745e10e6d2ea9097b7ec650ae54cea91e3d193f2/modules/%40angular/facade/src/errors.ts#L23\n\nDepends on incorrect current behavior of closure-compiler which causes `super()` to evaluate to\na newly created `Error` object when extending `Error`.\n\n**Expected behavior**\nI'll be fixing the compiler so inheritance from `Error` works as expected and there's no need for the\nhack being done here.\ngoogle/closure-compiler#2102\n\nOnce that's done, I believe the definition of `BaseError` can be changed to just this.\n\n``` javascript\nclass BaseError extends Error {}\n```\n\n**Minimal reproduction of the problem with instructions**\nn/a\n\n**What is the motivation / use case for changing the behavior?**\nI want to change the closure-compiler behavior to match the spec.\ngoogle/closure-compiler#2109\n\n**Please tell us about your environment:**\nn/a\n- **Angular version:** 2.0.X\n- **Browser:** [all ]\n- **Language:** [TypeScript X.X ]\n- **Node (for AoT issues):** `node --version` = n/a  \n"},"comment":{"url":"https://api.github.com/repos/angular/angular/issues/comments/267624271","html_url":"https://github.com/angular/angular/issues/12575#issuecomment-267624271","issue_url":"https://api.github.com/repos/angular/angular/issues/12575","id":267624271,"user":{"login":"alexeagle","id":47395,"avatar_url":"https://avatars.githubusercontent.com/u/47395?v=3","gravatar_id":"","url":"https://api.github.com/users/alexeagle","html_url":"https://github.com/alexeagle","followers_url":"https://api.github.com/users/alexeagle/followers","following_url":"https://api.github.com/users/alexeagle/following{/other_user}","gists_url":"https://api.github.com/users/alexeagle/gists{/gist_id}","starred_url":"https://api.github.com/users/alexeagle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alexeagle/subscriptions","organizations_url":"https://api.github.com/users/alexeagle/orgs","repos_url":"https://api.github.com/users/alexeagle/repos","events_url":"https://api.github.com/users/alexeagle/events{/privacy}","received_events_url":"https://api.github.com/users/alexeagle/received_events","type":"User","site_admin":false},"created_at":"2016-12-16T15:51:21Z","updated_at":"2016-12-16T15:51:21Z","body":"Update: TS 2.1 has changed the behavior here, see\r\nhttps://github.com/Microsoft/TypeScript/wiki/Breaking-Changes#extending-built-ins-like-error-array-and-map-may-no-longer-work"}}
{"actor":{"display_login":"alexeagle"}}