{"action":"created","comment":{"url":"https://api.github.com/repos/babel/website/pulls/comments/205616480","pull_request_review_id":140925698,"id":205616480,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIwNTYxNjQ4MA==","diff_hunk":"@@ -0,0 +1,189 @@\n+---\n+layout: post\n+title:  \"Removing Babel's Stage Presets\"\n+author: Henry Zhu\n+authorURL: https://twitter.com/left_pad\n+date:   2018-07-27 12:00:00\n+categories: announcements\n+share_text: \"Removing Babel's Stage Presets\"\n+---\n+\n+Moving forward with v7, we've decided it's best to stop publishing the Stage presets in Babel (e.g. `@babel/preset-stage-0`).\n+\n+We didn't make this decision lightly and wanted bring show some context regarding TC39, new proposals, and Babel.\n+\n+<!--truncate-->\n+\n+## Some History\n+\n+A Babel preset is a shareable list of plugins.\n+\n+The [official Babel Stage presets](https://babeljs.io/docs/en/next/presets) tracked the [TC39 Staging process](https://tc39.github.io/process-document/) for new [syntax proposals](https://github.com/tc39/proposals) in JavaScript.\n+\n+Each preset (ex. `stage-3`, `stage-2`, etc.) included all the plugins for that particular stage and the ones above it. For example, `stage-2` included `stage-3`, and so on.\n+\n+---\n+\n+This allowed users who wanted to use experimental syntax to simply add the preset, instead of needing to configure/install each individual plugin.\n+\n+We actually [added](https://github.com/babel/babel/pull/2649) the Stage presets shortly after Babel's v6 release (it was previously a config flag in v5).\n+\n+These are some older examples from Babel v6.\n+\n+It’s common to see this in a config: \n+\n+```js\n+{\n+  \"presets\": [\"es2015\", \"react\", \"stage-0\"]\n+}\n+```\n+\n+Original source of the package: [babel-preset-stage-0](https://unpkg.com/babel-preset-stage-0@6.0.14/index.js)\n+\n+```js\n+module.exports = {\n+  presets: [\n+    require(\"babel-preset-stage-1\")\n+  ],\n+  plugins: [\n+    require(\"babel-plugin-transform-do-expressions\"),\n+    require(\"babel-plugin-transform-function-bind\")\n+  ]\n+};\n+```\n+\n+## Problems\n+\n+These presets were a convenient way to use what we all wanted: the new, shiny, \"yet-to-be-determined\" future of JavaScript.\n+\n+Looking back, it worked really well! (Maybe too well?)\n+\n+### Too Good a Job?\n+\n+Languages like [CoffeeScript](https://coffeescript.org/) and tooling like [Traceur](https://github.com/google/traceur-compiler) helped establish the idea of compiling JavaScript. Babel made it even easier to both use new/future syntax and integrate with existing tooling. The expectations changed from skepticism and worry to completely embracing the experimental.\n+\n+We probably wouldn't be where we are at if not for the wide adoption of compilers such as Babel: it accelerated the usage (and teaching) of ES2015 to a much larger audience. The growth of React further fueled usage as its JSX syntax, class properties, and object rest/spread led to people knowing a bit more about these syntax proposals.","path":"website/blog/2018-07-27-removing-babels-stage-presets.md","position":65,"original_position":65,"commit_id":"e7ba843539f22820ab99e648a2dce99b3a3dd413","original_commit_id":"e7ba843539f22820ab99e648a2dce99b3a3dd413","user":{"login":"philipwalton","id":326742,"node_id":"MDQ6VXNlcjMyNjc0Mg==","avatar_url":"https://avatars1.githubusercontent.com/u/326742?v=4","gravatar_id":"","url":"https://api.github.com/users/philipwalton","html_url":"https://github.com/philipwalton","followers_url":"https://api.github.com/users/philipwalton/followers","following_url":"https://api.github.com/users/philipwalton/following{/other_user}","gists_url":"https://api.github.com/users/philipwalton/gists{/gist_id}","starred_url":"https://api.github.com/users/philipwalton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/philipwalton/subscriptions","organizations_url":"https://api.github.com/users/philipwalton/orgs","repos_url":"https://api.github.com/users/philipwalton/repos","events_url":"https://api.github.com/users/philipwalton/events{/privacy}","received_events_url":"https://api.github.com/users/philipwalton/received_events","type":"User","site_admin":false},"body":"Minor nit, but \"where we are at\" reads a bit awkwardly to me. I'd suggest changing it to one of the following, which I think are both more common:\r\n\r\n- \"where we're at\"\r\n- \"where we are\" (remove \"at\")\r\n\r\n","created_at":"2018-07-26T22:02:25Z","updated_at":"2018-07-26T22:21:47Z","html_url":"https://github.com/babel/website/pull/1735#discussion_r205616480","pull_request_url":"https://api.github.com/repos/babel/website/pulls/1735","author_association":"NONE","_links":{"self":{"href":"https://api.github.com/repos/babel/website/pulls/comments/205616480"},"html":{"href":"https://github.com/babel/website/pull/1735#discussion_r205616480"},"pull_request":{"href":"https://api.github.com/repos/babel/website/pulls/1735"}}},"pull_request":{"url":"https://api.github.com/repos/babel/website/pulls/1735","id":204197696,"node_id":"MDExOlB1bGxSZXF1ZXN0MjA0MTk3Njk2","html_url":"https://github.com/babel/website/pull/1735","diff_url":"https://github.com/babel/website/pull/1735.diff","patch_url":"https://github.com/babel/website/pull/1735.patch","issue_url":"https://api.github.com/repos/babel/website/issues/1735","number":1735,"state":"open","locked":false,"title":"WIP: Add stage removal post","user":{"login":"hzoo","id":588473,"node_id":"MDQ6VXNlcjU4ODQ3Mw==","avatar_url":"https://avatars1.githubusercontent.com/u/588473?v=4","gravatar_id":"","url":"https://api.github.com/users/hzoo","html_url":"https://github.com/hzoo","followers_url":"https://api.github.com/users/hzoo/followers","following_url":"https://api.github.com/users/hzoo/following{/other_user}","gists_url":"https://api.github.com/users/hzoo/gists{/gist_id}","starred_url":"https://api.github.com/users/hzoo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hzoo/subscriptions","organizations_url":"https://api.github.com/users/hzoo/orgs","repos_url":"https://api.github.com/users/hzoo/repos","events_url":"https://api.github.com/users/hzoo/events{/privacy}","received_events_url":"https://api.github.com/users/hzoo/received_events","type":"User","site_admin":false},"body":"## Rendered: https://deploy-preview-1735--babel.netlify.com/blog/2018/07/27/removing-babels-stage-presets\r\n\r\nGotta set a deadline (tomorrow?) otherwise I'll spend forever on this!\r\n\r\nLet me know if I didn't cover something, or if I should remove a section, re-order, or expand on something more. I have a few TODOs left in the post.\r\n\r\nThe purpose of this is to explain the decision to remove the Stage presets but also to give context into why and the history of not just TC39/Babel but the community and it's knowledge/relationship with the process if that makes sense and where we are at today. Ideally we'd have some more takeaways regarding getting involved in the project.\r\n\r\nAlso this makes me think maybe I should rename the title since it goes into way more detail","created_at":"2018-07-26T16:26:00Z","updated_at":"2018-07-26T22:21:47Z","closed_at":null,"merged_at":null,"merge_commit_sha":"868b18f60a220ea4599f050d577ad96800fec22c","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[{"id":164923950,"node_id":"MDU6TGFiZWwxNjQ5MjM5NTA=","url":"https://api.github.com/repos/babel/website/labels/blog","name":"blog","color":"5319e7","default":false}],"milestone":null,"commits_url":"https://api.github.com/repos/babel/website/pulls/1735/commits","review_comments_url":"https://api.github.com/repos/babel/website/pulls/1735/comments","review_comment_url":"https://api.github.com/repos/babel/website/pulls/comments{/number}","comments_url":"https://api.github.com/repos/babel/website/issues/1735/comments","statuses_url":"https://api.github.com/repos/babel/website/statuses/e7ba843539f22820ab99e648a2dce99b3a3dd413","head":{"label":"babel:stage-preset-post","ref":"stage-preset-post","sha":"e7ba843539f22820ab99e648a2dce99b3a3dd413","user":{"login":"babel","id":9637642,"node_id":"MDEyOk9yZ2FuaXphdGlvbjk2Mzc2NDI=","avatar_url":"https://avatars1.githubusercontent.com/u/9637642?v=4","gravatar_id":"","url":"https://api.github.com/users/babel","html_url":"https://github.com/babel","followers_url":"https://api.github.com/users/babel/followers","following_url":"https://api.github.com/users/babel/following{/other_user}","gists_url":"https://api.github.com/users/babel/gists{/gist_id}","starred_url":"https://api.github.com/users/babel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/babel/subscriptions","organizations_url":"https://api.github.com/users/babel/orgs","repos_url":"https://api.github.com/users/babel/repos","events_url":"https://api.github.com/users/babel/events{/privacy}","received_events_url":"https://api.github.com/users/babel/received_events","type":"Organization","site_admin":false},"repo":{"id":26390088,"node_id":"MDEwOlJlcG9zaXRvcnkyNjM5MDA4OA==","name":"website","full_name":"babel/website","owner":{"login":"babel","id":9637642,"node_id":"MDEyOk9yZ2FuaXphdGlvbjk2Mzc2NDI=","avatar_url":"https://avatars1.githubusercontent.com/u/9637642?v=4","gravatar_id":"","url":"https://api.github.com/users/babel","html_url":"https://github.com/babel","followers_url":"https://api.github.com/users/babel/followers","following_url":"https://api.github.com/users/babel/following{/other_user}","gists_url":"https://api.github.com/users/babel/gists{/gist_id}","starred_url":"https://api.github.com/users/babel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/babel/subscriptions","organizations_url":"https://api.github.com/users/babel/orgs","repos_url":"https://api.github.com/users/babel/repos","events_url":"https://api.github.com/users/babel/events{/privacy}","received_events_url":"https://api.github.com/users/babel/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/babel/website","description":":globe_with_meridians: The Babel documentation website","fork":false,"url":"https://api.github.com/repos/babel/website","forks_url":"https://api.github.com/repos/babel/website/forks","keys_url":"https://api.github.com/repos/babel/website/keys{/key_id}","collaborators_url":"https://api.github.com/repos/babel/website/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/babel/website/teams","hooks_url":"https://api.github.com/repos/babel/website/hooks","issue_events_url":"https://api.github.com/repos/babel/website/issues/events{/number}","events_url":"https://api.github.com/repos/babel/website/events","assignees_url":"https://api.github.com/repos/babel/website/assignees{/user}","branches_url":"https://api.github.com/repos/babel/website/branches{/branch}","tags_url":"https://api.github.com/repos/babel/website/tags","blobs_url":"https://api.github.com/repos/babel/website/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/babel/website/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/babel/website/git/refs{/sha}","trees_url":"https://api.github.com/repos/babel/website/git/trees{/sha}","statuses_url":"https://api.github.com/repos/babel/website/statuses/{sha}","languages_url":"https://api.github.com/repos/babel/website/languages","stargazers_url":"https://api.github.com/repos/babel/website/stargazers","contributors_url":"https://api.github.com/repos/babel/website/contributors","subscribers_url":"https://api.github.com/repos/babel/website/subscribers","subscription_url":"https://api.github.com/repos/babel/website/subscription","commits_url":"https://api.github.com/repos/babel/website/commits{/sha}","git_commits_url":"https://api.github.com/repos/babel/website/git/commits{/sha}","comments_url":"https://api.github.com/repos/babel/website/comments{/number}","issue_comment_url":"https://api.github.com/repos/babel/website/issues/comments{/number}","contents_url":"https://api.github.com/repos/babel/website/contents/{+path}","compare_url":"https://api.github.com/repos/babel/website/compare/{base}...{head}","merges_url":"https://api.github.com/repos/babel/website/merges","archive_url":"https://api.github.com/repos/babel/website/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/babel/website/downloads","issues_url":"https://api.github.com/repos/babel/website/issues{/number}","pulls_url":"https://api.github.com/repos/babel/website/pulls{/number}","milestones_url":"https://api.github.com/repos/babel/website/milestones{/number}","notifications_url":"https://api.github.com/repos/babel/website/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/babel/website/labels{/name}","releases_url":"https://api.github.com/repos/babel/website/releases{/id}","deployments_url":"https://api.github.com/repos/babel/website/deployments","created_at":"2014-11-09T08:29:53Z","updated_at":"2018-07-26T02:12:06Z","pushed_at":"2018-07-26T21:23:53Z","git_url":"git://github.com/babel/website.git","ssh_url":"git@github.com:babel/website.git","clone_url":"https://github.com/babel/website.git","svn_url":"https://github.com/babel/website","homepage":"https://babeljs.io/docs/en/next/index.html","size":20799,"stargazers_count":410,"watchers_count":410,"language":"JavaScript","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":707,"mirror_url":null,"archived":false,"open_issues_count":68,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"forks":707,"open_issues":68,"watchers":410,"default_branch":"master"}},"base":{"label":"babel:master","ref":"master","sha":"1b6723a033871f37145c00a6e22893158f23291f","user":{"login":"babel","id":9637642,"node_id":"MDEyOk9yZ2FuaXphdGlvbjk2Mzc2NDI=","avatar_url":"https://avatars1.githubusercontent.com/u/9637642?v=4","gravatar_id":"","url":"https://api.github.com/users/babel","html_url":"https://github.com/babel","followers_url":"https://api.github.com/users/babel/followers","following_url":"https://api.github.com/users/babel/following{/other_user}","gists_url":"https://api.github.com/users/babel/gists{/gist_id}","starred_url":"https://api.github.com/users/babel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/babel/subscriptions","organizations_url":"https://api.github.com/users/babel/orgs","repos_url":"https://api.github.com/users/babel/repos","events_url":"https://api.github.com/users/babel/events{/privacy}","received_events_url":"https://api.github.com/users/babel/received_events","type":"Organization","site_admin":false},"repo":{"id":26390088,"node_id":"MDEwOlJlcG9zaXRvcnkyNjM5MDA4OA==","name":"website","full_name":"babel/website","owner":{"login":"babel","id":9637642,"node_id":"MDEyOk9yZ2FuaXphdGlvbjk2Mzc2NDI=","avatar_url":"https://avatars1.githubusercontent.com/u/9637642?v=4","gravatar_id":"","url":"https://api.github.com/users/babel","html_url":"https://github.com/babel","followers_url":"https://api.github.com/users/babel/followers","following_url":"https://api.github.com/users/babel/following{/other_user}","gists_url":"https://api.github.com/users/babel/gists{/gist_id}","starred_url":"https://api.github.com/users/babel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/babel/subscriptions","organizations_url":"https://api.github.com/users/babel/orgs","repos_url":"https://api.github.com/users/babel/repos","events_url":"https://api.github.com/users/babel/events{/privacy}","received_events_url":"https://api.github.com/users/babel/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/babel/website","description":":globe_with_meridians: The Babel documentation website","fork":false,"url":"https://api.github.com/repos/babel/website","forks_url":"https://api.github.com/repos/babel/website/forks","keys_url":"https://api.github.com/repos/babel/website/keys{/key_id}","collaborators_url":"https://api.github.com/repos/babel/website/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/babel/website/teams","hooks_url":"https://api.github.com/repos/babel/website/hooks","issue_events_url":"https://api.github.com/repos/babel/website/issues/events{/number}","events_url":"https://api.github.com/repos/babel/website/events","assignees_url":"https://api.github.com/repos/babel/website/assignees{/user}","branches_url":"https://api.github.com/repos/babel/website/branches{/branch}","tags_url":"https://api.github.com/repos/babel/website/tags","blobs_url":"https://api.github.com/repos/babel/website/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/babel/website/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/babel/website/git/refs{/sha}","trees_url":"https://api.github.com/repos/babel/website/git/trees{/sha}","statuses_url":"https://api.github.com/repos/babel/website/statuses/{sha}","languages_url":"https://api.github.com/repos/babel/website/languages","stargazers_url":"https://api.github.com/repos/babel/website/stargazers","contributors_url":"https://api.github.com/repos/babel/website/contributors","subscribers_url":"https://api.github.com/repos/babel/website/subscribers","subscription_url":"https://api.github.com/repos/babel/website/subscription","commits_url":"https://api.github.com/repos/babel/website/commits{/sha}","git_commits_url":"https://api.github.com/repos/babel/website/git/commits{/sha}","comments_url":"https://api.github.com/repos/babel/website/comments{/number}","issue_comment_url":"https://api.github.com/repos/babel/website/issues/comments{/number}","contents_url":"https://api.github.com/repos/babel/website/contents/{+path}","compare_url":"https://api.github.com/repos/babel/website/compare/{base}...{head}","merges_url":"https://api.github.com/repos/babel/website/merges","archive_url":"https://api.github.com/repos/babel/website/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/babel/website/downloads","issues_url":"https://api.github.com/repos/babel/website/issues{/number}","pulls_url":"https://api.github.com/repos/babel/website/pulls{/number}","milestones_url":"https://api.github.com/repos/babel/website/milestones{/number}","notifications_url":"https://api.github.com/repos/babel/website/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/babel/website/labels{/name}","releases_url":"https://api.github.com/repos/babel/website/releases{/id}","deployments_url":"https://api.github.com/repos/babel/website/deployments","created_at":"2014-11-09T08:29:53Z","updated_at":"2018-07-26T02:12:06Z","pushed_at":"2018-07-26T21:23:53Z","git_url":"git://github.com/babel/website.git","ssh_url":"git@github.com:babel/website.git","clone_url":"https://github.com/babel/website.git","svn_url":"https://github.com/babel/website","homepage":"https://babeljs.io/docs/en/next/index.html","size":20799,"stargazers_count":410,"watchers_count":410,"language":"JavaScript","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":707,"mirror_url":null,"archived":false,"open_issues_count":68,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"forks":707,"open_issues":68,"watchers":410,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/babel/website/pulls/1735"},"html":{"href":"https://github.com/babel/website/pull/1735"},"issue":{"href":"https://api.github.com/repos/babel/website/issues/1735"},"comments":{"href":"https://api.github.com/repos/babel/website/issues/1735/comments"},"review_comments":{"href":"https://api.github.com/repos/babel/website/pulls/1735/comments"},"review_comment":{"href":"https://api.github.com/repos/babel/website/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/babel/website/pulls/1735/commits"},"statuses":{"href":"https://api.github.com/repos/babel/website/statuses/e7ba843539f22820ab99e648a2dce99b3a3dd413"}},"author_association":"MEMBER"}}
{"actor":{"display_login":"philipwalton"}}