diff --git a/CHANGELOG.md b/CHANGELOG.md
index 3c4a8980f4..145a5f4029 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -13,6 +13,349 @@ _Note: Gaps between patch versions are faulty, broken or test releases._
See [CHANGELOG - 6to5](CHANGELOG-6to5.md) for the pre-4.0.0 version changelog.
+## v6.18.0 (2016-10-24)
+
+#### :rocket: New Feature
+* `babel-generator`, `babel-plugin-transform-flow-strip-types`
+ * [#4697](https://github.com/babel/babel/pull/4697) Add variance node type and generate property variance annotations. ([@samwgoldman](https://github.com/samwgoldman))
+
+Check out the [flow docs](https://flowtype.org/docs/variance.html) for more info:
+
+```js
+type T = { +p: T };
+interface T { -p: T };
+declare class T { +[k:K]: V };
+class T { -[k:K]: V };
+class C2 { +p: T = e };
+```
+
+* `babel-core`, `babel-traverse`
+ * [#4746](https://github.com/babel/babel/pull/4746) Support ObjectExpression in static path evaluation. ([@motiz88](https://github.com/motiz88))
+
+```js
+// in
+['a' + 'b']: 10 * 20, 'z': [1, 2, 3]}
+// out
+{ab: 200, z: [1, 2, 3]}
+```
+
+* `babel-plugin-syntax-dynamic-import`, `babel-preset-stage-2`
+ * [#4699](https://github.com/babel/babel/pull/4699) [import()] Initial support for dynamic-import. ([@kesne](https://github.com/kesne))
+
+Parser support was added in https://github.com/babel/babylon/releases/tag/v6.12.0.
+
+Just the plugin to enable it in babel.
+
+```js
+// install
+$ npm install babel-plugin-syntax-dynamic-import --save-dev
+```
+
+or use the new `parserOpts`
+
+```js
+// .babelrc
+{
+ "parserOpts": {
+ "plugins": ['dynamicImport']
+ }
+}
+```
+
+* `babel-helper-builder-react-jsx`, `babel-plugin-transform-react-jsx`
+ * [#4655](https://github.com/babel/babel/pull/4655) Add `useBuiltIns` option to helper-builder-react-jsx. ([@existentialism](https://github.com/existentialism))
+
+Previously we added a `useBuiltIns` for object-rest-spread so that it use the native/built in version if you use a polyfill or have it supported natively.
+
+This change just uses the same option from the plugin to be applied with spread inside of jsx.
+
+```js
+// in
+var div =
+// out
+var div = React.createElement(Component, Object.assign({}, props, { foo: "bar" }));
+```
+
+* `babel-generator`, `babel-traverse`, `babel-types`
+ * [#4724](https://github.com/babel/babel/pull/4724) Add `EmptyTypeAnnotation`. ([@samwgoldman](https://github.com/samwgoldman))
+
+`EmptyTypeAnnotation`
+
+Added in flow [here](https://github.com/facebook/flow/commit/c603505583993aa953904005f91c350f4b65d6bd) and in babylon [here](https://github.com/babel/babylon/pull/171).
+
+```js
+function f(x: empty): T {
+ return x;
+}
+f(); // nothing to pass...
+```
+
+* `babel-traverse`
+ * [#4758](https://github.com/babel/babel/pull/4758) Make getBinding ignore labels; add Scope#getLabel, Scope#hasLabel, Scope#registerLabel. ([@kangax](https://github.com/kangax))
+
+Track `LabeledStatement` separately (not part of bindings).
+
+#### :bug: Bug Fix
+
+> Will give examples of code that was fixed below
+
+* `babel-plugin-transform-react-inline-elements`, `babel-traverse`
+ * [#4765](https://github.com/babel/babel/pull/4765) Don't treat `JSXIdentifier` in `JSXMemberExpression` as HTML tag. Closes [#4027](https://github.com/babel/babel/issues/4027). ([@DrewML](https://github.com/DrewML))
+
+```js
+// issue with imported components that were JSXMemberExpression
+import { form } from "./export";
+
+function ParentComponent() {
+ return ;
+}
+```
+
+* `babel-plugin-transform-es2015-modules-commonjs`, `babel-plugin-transform-react-inline-elements`
+ * [#4763](https://github.com/babel/babel/pull/4763) Handle remapping of JSXIdentifier to MemberExpression in CommonJS transform. Closes [#3728](https://github.com/babel/babel/issues/3728). ([@DrewML](https://github.com/DrewML))
+
+```js
+import { Modal } from "react-bootstrap";
+export default CustomModal = () => foobar;
+```
+
+* `babel-plugin-transform-es2015-for-of`
+ * [#4736](https://github.com/babel/babel/pull/4736) Fix replacing for-of if inside label. ([@danez](https://github.com/danez))
+
+```js
+if ( true ) {
+ loop: for (let ch of []) {}
+}
+```
+
+* `babel-core`
+ * [#4502](https://github.com/babel/babel/pull/4502) Make special case for class property initializers in `shadow-functions`. ([@motiz88](https://github.com/motiz88))
+
+```
+class A {
+ prop1 = () => this;
+ static prop2 = () => this;
+ prop3 = () => arguments;
+}
+```
+
+ * [#4631](https://github.com/babel/babel/pull/4631) fix(shouldIgnore): filename normalization should be platform sensitive. ([@rozele](https://github.com/rozele))
+* `babel-helper-remap-async-to-generator`, `babel-plugin-transform-async-generator-functions`
+ * [#4719](https://github.com/babel/babel/pull/4719) Fixed incorrect compilation of async iterator methods. ([@Jamesernator](https://github.com/Jamesernator))
+
+```js
+// in
+class C {
+ async *g() { await 1; }
+}
+// out
+class C {
+ g() { // was incorrectly outputting the method with a generator still `*g(){`
+ return _asyncGenerator.wrap(function* () {
+ yield _asyncGenerator.await(1);
+ })();
+ }
+}
+```
+
+* `babel-plugin-check-es2015-constants`, `babel-plugin-transform-es2015-destructuring`, `babel-plugin-transform-es2015-modules-commonjs`, `babel-plugin-transform-es2015-parameters`
+ * [#4690](https://github.com/babel/babel/pull/4690) Consolidate contiguous var declarations in destructuring transform. ([@motiz88](https://github.com/motiz88))
+
+```js
+// was wrapping variables in an IIFE incorrectly
+for ( let i = 0, { length } = list; i < length; i++ ) {
+ console.log( i + ': ' + list[i] )
+}
+```
+
+* `babel-plugin-transform-es2015-parameters`
+ * [#4666](https://github.com/babel/babel/pull/4666) Fix error when constructor default arg refers to self or own static property. ([@danharper](https://github.com/danharper))
+
+```js
+// was producing invalid code
+class Ref {
+ static nextId = 0
+ constructor(id = ++Ref.nextId, n = id) {
+ this.id = n
+ }
+}
+
+assert.equal(1, new Ref().id)
+assert.equal(2, new Ref().id)
+```
+
+ * [#4674](https://github.com/babel/babel/pull/4674) Handle side effects correctly in rest params index expressions (#4348). ([@motiz88](https://github.com/motiz88))
+
+```js
+function first(...values) {
+ let index = 0;
+ return values[index++]; // ++ was happening twice
+}
+
+console.log(first(1, 2));
+```
+
+* `babel-plugin-transform-es2015-block-scoping`
+ * [#4669](https://github.com/babel/babel/pull/4669) Fix block scoping transform for declarations in labeled statements. ([@motiz88](https://github.com/motiz88))
+
+```js
+let x = 10;
+if (1)
+{
+ ca: let x = 20;
+}
+```
+
+* `babel-helper-explode-assignable-expression`, `babel-plugin-transform-exponentiation-operator`
+ * [#4672](https://github.com/babel/babel/pull/4672) Avoid repeating impure (template) literals when desugaring **= (#4403). ([@motiz88](https://github.com/motiz88))
+
+```js
+a[`${b++}`] **= 1;
+```
+
+ * [#4642](https://github.com/babel/babel/pull/4642) Exclude super from being assign to ref variable. ([@danez](https://github.com/danez))
+* `babel-plugin-transform-es2015-shorthand-properties`, `babel-plugin-transform-flow-comments`, `babel-plugin-transform-flow-strip-types`
+
+```js
+foo = {
+ bar() {
+ return super.baz **= 12;
+ }
+}
+```
+
+ * [#4670](https://github.com/babel/babel/pull/4670) Retain return types on ObjectMethods in transform-es2015-shorthand-properties. ([@danharper](https://github.com/danharper))
+
+```js
+// @flow
+var obj = {
+ method(a: string): number {
+ return 5 + 5;
+ }
+};
+```
+
+* `babel-helper-define-map`, `babel-plugin-transform-es2015-classes`, `babel-plugin-transform-flow-comments`, `babel-plugin-transform-flow-strip-types`
+ * [#4668](https://github.com/babel/babel/pull/4668) Retain method return types on transform-es2015-classes (Closes [#4665](https://github.com/babel/babel/issues/4665)). ([@danharper](https://github.com/danharper))
+
+```js
+// @flow
+class C {
+ m(x: number): string {
+ return 'a';
+ }
+}
+```
+
+#### :nail_care: Polish
+* `babel-plugin-check-es2015-constants`, `babel-plugin-transform-es2015-destructuring`, `babel-plugin-transform-es2015-modules-commonjs`, `babel-plugin-transform-es2015-parameters`
+ * [#4690](https://github.com/babel/babel/pull/4690) Consolidate contiguous var declarations in destructuring transform. ([@motiz88](https://github.com/motiz88))
+
+```js
+// in
+const [a, b] = [1, 2];
+// out
+var a = 1,
+ b = 2;
+```
+
+* `babel-plugin-transform-es2015-parameters`
+ * [#4738](https://github.com/babel/babel/pull/4738) Avoid unnecessary +0 in transform-es2015-parameters. ([@existentialism](https://github.com/existentialism))
+
+```js
+// was outputting an extra `index++ + 0`
+function first(...values) {
+ var index = 0;
+ return values[index++];
+}
+```
+
+* `babel-core`
+ * [#4685](https://github.com/babel/babel/pull/4685) Better error messaging when preset options are given without a corresponding preset. ([@kaicataldo](https://github.com/kaicataldo))
+
+> We've had a few reports of users not wrapping a preset in `[]` when passing in options so we added an extra error message for this.
+
+```
+ReferenceError: [BABEL] /test.js: Unknown option: base.loose2. Check out http://babeljs.io/docs/usage/options/ for more information about options.
+
+A common cause of this error is the presence of a configuration options object without the corresponding preset name. Example:
+
+Invalid:
+ `{ presets: [{option: value}] }`
+Valid:
+ `{ presets: ["pluginName", {option: value}] }`
+
+For more detailed information on preset configuration, please see http://babeljs.io/docs/plugins/#pluginpresets-options.
+```
+
+ * [#4688](https://github.com/babel/babel/pull/4688) Update babel parser options. ([@existentialism](https://github.com/existentialism))
+
+#### Documentation
+* Other
+ * [#4653](https://github.com/babel/babel/pull/4653) Tweak license for GitHub display. ([@existentialism](https://github.com/existentialism))
+
+So that our MIT License [shows up](https://github.com/blog/2252-license-now-displayed-on-repository-overview).
+
+#### :house: Internal
+* `babel-cli`
+ * [#4725](https://github.com/babel/babel/pull/4725) Remove babel-doctor from babel-cli. ([@kaicataldo](https://github.com/kaicataldo))
+
+It's a one-time use tool (helpful after the initial release when upgrading from v5 to v6) that doesn't need to be a part of `babel-cli`. We'll publish it as a standalone package it someone asks for it.
+* Other
+ * [#4764](https://github.com/babel/babel/pull/4764) Add TEST_DEBUG env var option for test.sh, to enable node 6 debugger. ([@DrewML](https://github.com/DrewML))
+ * [#4762](https://github.com/babel/babel/pull/4762) Update browserify to version 13.1.1 🚀. ([@greenkeeperio-bot](https://github.com/greenkeeperio-bot))
+ * [#4748](https://github.com/babel/babel/pull/4748) Add clean-all command to reinstall node_modules. ([@kaicataldo](https://github.com/kaicataldo))
+ * [#4744](https://github.com/babel/babel/pull/4744) Fix line endings on checkout. ([@nhajidin](https://github.com/nhajidin))
+ * [#4730](https://github.com/babel/babel/pull/4730) Add .gitattributes forcing LF line endings. ([@motiz88](https://github.com/motiz88))
+ * [#4676](https://github.com/babel/babel/pull/4676) Remove travis short-circuit script. ([@motiz88](https://github.com/motiz88))
+* `babel-traverse`, `babel-types`
+ * [#4742](https://github.com/babel/babel/pull/4742) Increase test coverage. ([@motiz88](https://github.com/motiz88))
+* `babel-cli`, `babel-core`, `babel-helper-fixtures`, `babel-register`
+ * [#4731](https://github.com/babel/babel/pull/4731) Replace `path-exists` with `fs.existsSync`. ([@SimenB](https://github.com/SimenB))
+* `babel-helper-transform-fixture-test-runner`
+ * [#4735](https://github.com/babel/babel/pull/4735) Automatically generate missing expected.js fixtures. ([@motiz88](https://github.com/motiz88))
+ * [#4664](https://github.com/babel/babel/pull/4664) 🚀 Update chai to version 3.0.0. ([@danez](https://github.com/danez))
+* `babel-cli`, `babel-code-frame`, `babel-core`, `babel-generator`, `babel-helper-transform-fixture-test-runner`, `babel-preset-es2015`, `babel-template`, `babel-traverse`
+ * [#4734](https://github.com/babel/babel/pull/4734) Change usage of "suite"/"test" in unit-tests to "describe"/"it". ([@DrewML](https://github.com/DrewML))
+* `babel-cli`, `babel-code-frame`, `babel-core`, `babel-generator`, `babel-plugin-transform-es2015-modules-commonjs`, `babel-preset-es2015`, `babel-template`, `babel-traverse`
+ * [#4732](https://github.com/babel/babel/pull/4732) Run ESLint on test files, and fix lint errors in test files.. ([@DrewML](https://github.com/DrewML))
+* `babel-cli`, `babel-core`
+ * [#4727](https://github.com/babel/babel/pull/4727) Update tests for changed error messages in Babylon. ([@motiz88](https://github.com/motiz88))
+ * [#4564](https://github.com/babel/babel/pull/4564) Enable babel for tests. ([@danez](https://github.com/danez))
+* `babel-cli`, `babel-core`, `babel-plugin-transform-es2015-modules-systemjs`, `babel-preset-es2015`
+ * [#4721](https://github.com/babel/babel/pull/4721) update eslint-config, fixes, add commands. ([@hzoo](https://github.com/hzoo))
+* `babel-register`
+ * [#4660](https://github.com/babel/babel/pull/4660) 🚀 Update home-or-tmp to version 2.0.0. ([@danez](https://github.com/danez))
+* `babel-cli`
+ * [#4680](https://github.com/babel/babel/pull/4680) Update: Eslint to 3.0 and update CI builds (Closes [#4638](https://github.com/babel/babel/issues/4638)). ([@gyandeeps](https://github.com/gyandeeps))
+ * [#4662](https://github.com/babel/babel/pull/4662) 🚀 Update fs-readdir-recursive to 1.0.0. ([@danez](https://github.com/danez))
+* `babel-core`
+ * [#4649](https://github.com/babel/babel/pull/4649) 🚀 Update json5 to version 0.5.0. ([@danez](https://github.com/danez))
+ * [#4650](https://github.com/babel/babel/pull/4650) 🚀 Remove shebang dependency. ([@danez](https://github.com/danez))
+* `babel-generator`
+ * [#4652](https://github.com/babel/babel/pull/4652) 🚀 Update detect-indent to version 4.0.0. ([@danez](https://github.com/danez))
+* `babel-traverse`
+ * [#4651](https://github.com/babel/babel/pull/4651) 🚀 Update globals to version 9.0.0. ([@danez](https://github.com/danez))
+
+#### Commiters: 17
+- Andrew Levine ([DrewML](https://github.com/DrewML))
+- Brian Ng ([existentialism](https://github.com/existentialism))
+- Dan Harper ([danharper](https://github.com/danharper))
+- Daniel Tschinder ([danez](https://github.com/danez))
+- Eric Rozell ([rozele](https://github.com/rozele))
+- Greenkeeper ([greenkeeperio-bot](https://github.com/greenkeeperio-bot))
+- Gyandeep Singh ([gyandeeps](https://github.com/gyandeeps))
+- Henry Zhu ([hzoo](https://github.com/hzoo))
+- Jordan Gensler ([kesne](https://github.com/kesne))
+- Juriy Zaytsev ([kangax](https://github.com/kangax))
+- Kai Cataldo ([kaicataldo](https://github.com/kaicataldo))
+- Moti Zilberman ([motiz88](https://github.com/motiz88))
+- Nazim Hajidin ([nhajidin](https://github.com/nhajidin))
+- Sam Goldman ([samwgoldman](https://github.com/samwgoldman))
+- Simen Bekkhus ([SimenB](https://github.com/SimenB))
+- [Jamesernator](https://github.com/Jamesernator)
+- [sugargreenbean](https://github.com/sugargreenbean)
+
## v6.17.0 (2016-10-01)
#### :eyeglasses: Spec Compliancy
diff --git a/lerna.json b/lerna.json
index 17aa73e9ef..89e914a7f1 100644
--- a/lerna.json
+++ b/lerna.json
@@ -9,7 +9,7 @@
"tag: new feature": ":rocket: New Feature",
"tag: bug fix": ":bug: Bug Fix",
"tag: polish": ":nail_care: Polish",
- "tag: documentation": "Documentation",
+ "tag: documentation": ":memo: Documentation",
"tag: internal": ":house: Internal"
}
},