{"action":"created","issue":{"url":"https://api.github.com/repos/Microsoft/TypeScript/issues/5361","labels_url":"https://api.github.com/repos/Microsoft/TypeScript/issues/5361/labels{/name}","comments_url":"https://api.github.com/repos/Microsoft/TypeScript/issues/5361/comments","events_url":"https://api.github.com/repos/Microsoft/TypeScript/issues/5361/events","html_url":"https://github.com/Microsoft/TypeScript/issues/5361","id":112799739,"number":5361,"title":"Add ES2016 target","user":{"login":"jods4","id":3832820,"avatar_url":"https://avatars.githubusercontent.com/u/3832820?v=3","gravatar_id":"","url":"https://api.github.com/users/jods4","html_url":"https://github.com/jods4","followers_url":"https://api.github.com/users/jods4/followers","following_url":"https://api.github.com/users/jods4/following{/other_user}","gists_url":"https://api.github.com/users/jods4/gists{/gist_id}","starred_url":"https://api.github.com/users/jods4/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jods4/subscriptions","organizations_url":"https://api.github.com/users/jods4/orgs","repos_url":"https://api.github.com/users/jods4/repos","events_url":"https://api.github.com/users/jods4/events{/privacy}","received_events_url":"https://api.github.com/users/jods4/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/Microsoft/TypeScript/labels/In%20Discussion","name":"In Discussion","color":"556b75"},{"url":"https://api.github.com/repos/Microsoft/TypeScript/labels/Suggestion","name":"Suggestion","color":"006b75"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":10,"created_at":"2015-10-22T13:11:25Z","updated_at":"2015-10-24T10:57:23Z","closed_at":null,"body":"For various reasons that are discussed in other issues, some people like to pipe TS into Babel for the downlevel (e.g. ES5) code generation. I won't reiterate here why one might want to do so.\r\n\r\nNow that TS is starting to get ES7+ features such as `async`, decorators, possibly `::` & co. it would be very welcome to add a ES7 (ES2016) target.\r\n\r\nThe use case today is to get raw, non transformed code from TS and process it with Babel.\r\nThe future use case is of course that JS runtimes are going to have some of those features natively supported and down-level emit won't be required anymore."},"comment":{"url":"https://api.github.com/repos/Microsoft/TypeScript/issues/comments/150784167","html_url":"https://github.com/Microsoft/TypeScript/issues/5361#issuecomment-150784167","issue_url":"https://api.github.com/repos/Microsoft/TypeScript/issues/5361","id":150784167,"user":{"login":"kitsonk","id":1282577,"avatar_url":"https://avatars.githubusercontent.com/u/1282577?v=3","gravatar_id":"","url":"https://api.github.com/users/kitsonk","html_url":"https://github.com/kitsonk","followers_url":"https://api.github.com/users/kitsonk/followers","following_url":"https://api.github.com/users/kitsonk/following{/other_user}","gists_url":"https://api.github.com/users/kitsonk/gists{/gist_id}","starred_url":"https://api.github.com/users/kitsonk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kitsonk/subscriptions","organizations_url":"https://api.github.com/users/kitsonk/orgs","repos_url":"https://api.github.com/users/kitsonk/repos","events_url":"https://api.github.com/users/kitsonk/events{/privacy}","received_events_url":"https://api.github.com/users/kitsonk/received_events","type":"User","site_admin":false},"created_at":"2015-10-24T10:57:23Z","updated_at":"2015-10-24T10:57:23Z","body":"> I may be misunderstanding you but I think Babel allows you to do exactly that.\r\n\r\nI thought we were talking about TypeScript.  The proposal was to add a new target to TypeScript.  I am suggesting that @jods4 proposal over simplifies that problem and that something more is needed and that has additional considerations.\r\n\r\n> If a feature slips out of ES2016 -- e.g. Decorators -- I suggest you update the TS compiler to polyfill them in ES2016 and let them through in the ES2017 target.\r\n\r\nThe challenge with that is one day you compile and you get passed through code, and the next day you get down emitted. :frowning: "}}