Skip to content

Latest commit

 

History

History
2702 lines (2303 loc) · 210 KB

CHANGELOG.md

File metadata and controls

2702 lines (2303 loc) · 210 KB

Changelog

Tags:

  • 💥 [Breaking Change]
  • 👓 [Spec Compliancy]
  • 🚀 [New Feature]
  • 🐛 [Bug Fix]
  • 📝 [Documentation]
  • 🏠 [Internal]
  • 💅 [Polish]

Note: Gaps between patch versions are faulty, broken or test releases.

See CHANGELOG - v4, CHANGELOG - v5, and CHANGELOG - v6 for v4.x-v6.x changes. See CHANGELOG - 6to5 for the pre-4.0.0 version changelog. See Babylon's CHANGELOG for the Babylon pre-7.0.0-beta.29 version changelog.

7.1.2 (2018-09-28)

Same as v7.1.1, except compiled against Node 6 instead of Node 8 by accident (e.g had async functions).

v7.1.1 (2018-09-28)

EDIT: had a publish issue here as well where it compiled against Node 8 instead of Node 6 so 7.1.2 will fix this. Also force publish @babel/runtime and @babel/runtime-corejs2. We need to fix the publishing around that since Lerna doesn't pickup the @babel/helpers changes as there is no "dependency"

🐛 Bug Fix

  • babel-generator, babel-parser, babel-types
    • #8755 TypeScript: reserve unknown as TSUnknownKeyword. (@g-plane)
  • babel-plugin-transform-destructuring
  • babel-plugin-proposal-decorators
  • babel-helpers, babel-plugin-proposal-decorators
  • babel-generator

🏠 Internal

v7.1.0 (2018-09-17)

Check http://babeljs.io/blog/2018/09/17/7.1.0

🚀 New Feature

  • babel-cli, babel-core
    • #8660 Better support monorepos by allowing users to opt into automatically resolving 'root' with rootMode: "upward".. (@loganfsmyth)
  • babel-helper-transform-fixture-test-runner
    • #7582 Allow regular plugins/presets resolution algorithm for packages outsi…. (@Andarist)
  • babel-helpers, babel-plugin-proposal-decorators, babel-plugin-syntax-decorators
  • babel-helpers, babel-plugin-proposal-class-properties

🐛 Bug Fix

  • babel-parser
  • babel-plugin-transform-typescript
  • babel-preset-env
  • babel-core, babel-plugin-proposal-class-properties, babel-plugin-proposal-decorators, babel-plugin-transform-runtime
    • #8659 Fix version checks in .availableHelper and transform-runtime definitions.. (@loganfsmyth)
  • Other
    • #8627 ts generator: allow reserved keywords in interfaces. (@43081j)
  • babel-plugin-transform-parameters
  • babel-core, babel-plugin-transform-runtime
    • #8624 Verify 'sourceMap' option with hasOwnProperty, and verify string-typed 'version'. (@loganfsmyth)
  • babel-helpers, babel-plugin-proposal-class-properties

💅 Polish

  • babel-plugin-transform-runtime
    • #8581 Fix grammar in error message at @babel/plugin-transform-runtime. (@tricknotes)
  • babel-parser

📝 Documentation

🏠 Internal

  • babel-core
  • Other
    • #8679 remove force publish, temp tag [skip ci]. (@hzoo)
  • babel-plugin-transform-runtime
  • babel-*
  • babel-parser
  • babel-*
    • #8573 add access public to all packages [skip ci]. (@hzoo)

v7.0.1 (2018-09-11)

Doing a quick patch regarding helpers versioning to prevent future issues: babel#8659

v7.0.0 (2018-08-27)

No change from rc.4. Finally released as https://babeljs.io/blog/2018/08/27/7.0.0!

v7.0.0-rc.4 (2018-08-27)

Similar to removing proposals in @babel/polyfill, we are removing them in transform-runtime

💥 Breaking Change

  • babel-plugin-transform-runtime
    • #8547 Remove nonstandard functions and fake prototype methods from babel-runtime. (@loganfsmyth)
  • babel-parser

🐛 Bug Fix

  • babel-register
  • babel-core

🏠 Internal

v7.0.0-rc.3 (2018-08-24)

💥 Breaking Change

  • babel-preset-env
  • babel-plugin-transform-runtime
    • #8518 Make 'useESModules' only toggle CJS vs ESM helpers when importing file is ESM.. (@loganfsmyth)

🚀 New Feature

  • babel-plugin-transform-runtime
    • #8520 Expose opt-in useESModules:"auto" from transform-runtime to toggle based on 'supportsStaticESM'. (@loganfsmyth)

🐛 Bug Fix

  • babel-helpers, babel-plugin-transform-classes, babel-preset-env
  • babel-generator, babel-traverse, babel-types
    • #8478 Fix path.scope.rename() to not change break clauses. (@rafeca)
  • babel-plugin-proposal-object-rest-spread
  • babel-traverse

🏠 Internal

  • babel-plugin-transform-object-set-prototype-of-to-assign
    • #8409 Add LICENSE file to published npm packages [skip ci]. (@opichals)
  • Other

v7.0.0-rc.2 (2018-08-21)

A notable change is the addition of babel#8485 which enables babel/babel-loader#660 (automatically doing modules: false for @babel/preset-env when using babel-loader.

💥 Breaking Change

  • babel-core
  • babel-core, babel-parser, babel-plugin-syntax-decorators

🚀 New Feature

  • babel-preset-env
    • #8500 Add missing es7.promise.finally polyfill when using useBuiltIns: usage. (@jsnajdr)
  • babel-cli, babel-core, babel-node, babel-preset-env, babel-register
    • #8485 Allow preset-env to toggle module handling based on flags from the caller (like babel-loader). (@loganfsmyth)
  • babel-core
    • #8474 Preserve 'false'-options for disabled plugins/presets.. (@loganfsmyth)
    • #8473 Allow babel-plugin/preset prefix to not be a prefix, when used in a scope.. (@loganfsmyth)
  • babel-helper-transform-fixture-test-runner, babel-plugin-transform-runtime
    • #8435 Allow transform-runtime to insert runtime references with absolute paths.. (@loganfsmyth)

🐛 Bug Fix

  • babel-parser
    • #8488 Fix trailingComments for FunctionExpression that is CallExpression arguments. (@jiaxuan)
  • babel-core
    • #8493 Take top-level config source into consideration when processing nested env/overrides.. (@loganfsmyth)
  • babel-helpers, babel-plugin-proposal-decorators
    • #7429 Fix default descriptor setting for class properties with decorators. (@yhpark)
  • babel-plugin-transform-parameters

💅 Polish

  • babel-core
    • #8494 Cache individual programmatic descriptors along with the overall list.. (@loganfsmyth)
    • #8493 Take top-level config source into consideration when processing nested env/overrides.. (@loganfsmyth)

🏠 Internal

  • babel-core
    • #8493 Take top-level config source into consideration when processing nested env/overrides.. (@loganfsmyth)
  • babel-plugin-transform-classes

v7.0.0-rc.1 (2018-08-09)

Same as rc.0 but fixes the peerDep issue #8443. It's changed to just be ^7.0.0-0

v7.0.0-rc.0 (2018-08-09)

This had an issue with peerDependencies so please use rc.1.

Alright finally at the end 🙂. Shouldn't have anymore breaking changes and going to wait some time to fix bugs/regressions

Summary: @babel/polyfill will not include proposal polyfills by default and fixed a regression.

💥 Breaking Change

  • babel-polyfill
    • #8440 remove proposals polyfills from default import [skip ci]. (@hzoo)

Will add this to the upgrade guide/polyfill docs. I guess we could include a babel-upgrade for this too, not sure.

🐛 Bug Fix

  • babel-cli

v7.0.0-beta.56 (2018-08-03)

💥 Breaking Change

  • babel-plugin-transform-regenerator, babel-plugin-transform-runtime, babel-runtime-corejs2, babel-runtime
    • #8266 Split @babel/runtime into 2 modules via @babel/runtime-corejs2. (@loganfsmyth)
  • babel-core, babel-helper-module-imports, babel-helpers, babel-plugin-external-helpers, babel-plugin-transform-runtime
    • #8398 Only reference helpers from external/runtime helpers if they are known to be available.. (@loganfsmyth)

🚀 New Feature

  • babel-plugin-transform-regenerator, babel-plugin-transform-runtime, babel-runtime-corejs2, babel-runtime
    • #8266 Split @babel/runtime into 2 modules via @babel/runtime-corejs2. (@loganfsmyth)

🐛 Bug Fix

  • babel-parser, babel-plugin-transform-typescript
  • babel-preset-env
  • Other
    • #8024 Run transform-runtime on the standalone bundle so it stays ES5-compatible.. (@loganfsmyth)

📝 Documentation

v7.0.0-beta.55 (2018-07-28)

Breaking Change in beta:

Throws an error on using Stage presets: https://babeljs.io/blog/2018/07/27/removing-babels-stage-presets

💥 Breaking Change

  • babel-core, babel-plugin-proposal-class-properties, babel-plugin-proposal-decorators, babel-preset-stage-0, babel-preset-stage-1, babel-preset-stage-2, babel-preset-stage-3, babel-standalone

🚀 New Feature

  • babel-generator, babel-parser, babel-plugin-transform-typescript, babel-types
    • #7754 TypeScript: Support type arguments on tagged templates. (@andy-ms)

🐛 Bug Fix

💅 Polish

  • babel-parser

🏠 Internal

  • babel-core, babel-preset-stage-0, babel-preset-stage-1, babel-preset-stage-2, babel-preset-stage-3, babel-standalone
    • #8397 Remove our own use of stage presets. (@hzoo)
  • babel-helpers, babel-plugin-proposal-class-properties
  • babel-core
  • babel-cli, babel-core, babel-generator, babel-helper-define-map, babel-helper-fixtures, babel-helper-module-imports, babel-helper-module-transforms, babel-helper-regex, babel-helper-simple-access, babel-helper-transform-fixture-test-runner, babel-node, babel-plugin-transform-block-scoping, babel-register, babel-template, babel-traverse, babel-types

v7.0.0-beta.54 (2018-07-16)

Regarding babel#8184, we aren't using micromatch for paths, just basic */** substitution now. For anything more complicated we will recommend using a regex/.js config. Fixed a bug in the stage presets (babel#8307), so we just removed the requirements for setting options in the meantime for ease of use. We are removing the Stage presets next release. babel#8293

💥 Breaking Change

  • babel-core, babel-register, babel-traverse
    • #8327 Treat string ignore/only/test/include/exclude values as paths with only basic pattern matching. (@loganfsmyth)

🐛 Bug Fix

  • babel-core, babel-register, babel-traverse
    • #8327 Treat string ignore/only/test/include/exclude values as paths with only basic pattern matching. (@loganfsmyth)
  • babel-preset-stage-0, babel-preset-stage-1
  • babel-helper-module-transforms, babel-plugin-transform-modules-commonjs
    • #8316 Ensure that the wildcard interop is used with re-export + default.. (@loganfsmyth)
  • babel-core
    • #8315 Remove option-filtering options from the final options results.. (@loganfsmyth)

📝 Documentation

  • #8320 Add link to audio version of song. (@rugk)

v7.0.0-beta.53 (2018-07-11)

  • Fix for regression with paths on windows due to micromatch upgrade, remove yearly presets (not published)
  • (There was an issue with the Stage presets in this release, but it is also deprecated)

💥 Breaking Change

  • babel-*

🚀 New Feature

  • babel-generator, babel-parser, babel-plugin-transform-typescript, babel-types
    • #7799 TypeScript: Support type arguments on JSX opening and self-closing tags. (@andy-ms)
  • babel-parser
  • babel-plugin-proposal-object-rest-spread
    • #8264 Remove unused bindings when excluding keys with rest in loose mode. (@Andarist)
  • babel-helpers, babel-plugin-proposal-object-rest-spread, babel-plugin-transform-destructuring, babel-preset-env

🐛 Bug Fix

  • babel-core
    • #8281 Revert micromatch upgrade (regression) [skip ci]. (@hzoo)
  • babel-types
    • #8165 [babel-types] Fix isNodesEquivalent() behavior for TemplateElements. (@timkendrick)

💅 Polish

  • babel-plugin-syntax-pipeline-operator, babel-preset-stage-0, babel-preset-stage-1

📝 Documentation

  • #8286 Move v4-v6 changelog to another file and all prerelease 7.0 logs [ski…. (@hzoo)

🏠 Internal

  • babel-preset-env
    • #8299 Make env preset build-data scripts reproducible. (@rtsao)
  • babel-plugin-proposal-object-rest-spread
  • Other

v7.0.0-beta.52 (2018-07-06)

Deprecating the yearly/stage presets in v7 (will remove next beta). Ran npm deprecate on @babel/preset-es2015, @babel/preset-es2016, @babel/preset-es2017, @babel/preset-stage-0, @babel/preset-stage-1, @babel/preset-stage-2, @babel/preset-stage-3 only for versions >v7.0.0-beta.52. This means this will only break your build if you are using ^ in Babel v7 beta (which we have recommended against each release). (It is unfortunate that the default behavior of npm is to use ^ when using npm install though; haven't made an RFC for it yet).

Also various bugfixes, change to force the pipeline plugin to have an option.

The pipeline plugin must be configured with the minimal option. This is so people explicitly know the implementation that is being used, and someone will be able to implement and test out the other proposal options. After all, this proposal is in Stage 1 still and the semantics are being figured out: this is a great opportunity to specify via the config what people are using.

{
  "plugins": [["@babel/plugin-proposal-pipeline-operator", { "proposal": "minimal" }]]
}

💥 Breaking Change

  • babel-core
    • #8198 Prefer explicit object maps, and properly load relative maps.. (@loganfsmyth)
  • babel-plugin-proposal-class-properties, babel-plugin-proposal-decorators, babel-plugin-proposal-pipeline-operator, babel-plugin-syntax-pipeline-operator, babel-preset-stage-0, babel-preset-stage-1

🐛 Bug Fix

  • babel-types
    • #8273 Add visitor key for Flow typeArguments in call expressions. (@rubennorte)
  • babel-core
    • #8198 Prefer explicit object maps, and properly load relative maps.. (@loganfsmyth)
    • #8197 Allow @foo/babel-plugin as an unexpanded plugin name, and @foo as a shorthand for it.. (@loganfsmyth)
  • babel-plugin-transform-typescript
    • #8238 Typescript: Avoid stripping class properties when a decorator is set. (@pmdartus)

💅 Polish

🏠 Internal

  • babel-core, babel-helpers, babel-plugin-transform-async-to-generator, babel-plugin-transform-react-constant-elements, babel-preset-env
  • babel-core, babel-parser
    • #8259 upgrades eslint v5 (major), babel-eslint, eslint-plugin-flowtype, eslint-plugin-prettier. (@dnalborczyk)
  • babel-plugin-transform-modules-commonjs, babel-plugin-transform-runtime
  • babel-helper-fixtures, babel-plugin-proposal-class-properties, babel-plugin-transform-classes
    • #8208 Ensure that we don't get unexpected output files for tests that throw.. (@loganfsmyth)
  • babel-helper-transform-fixture-test-runner
  • Other
  • babel-parser
    • #8176 babel/parser: use charCodes throughout for improved sourcecode readability in tokenizer/parser.. (@GerHobbelt)
    • #8177 babel/parser: remove dead code: constant condition. (@GerHobbelt)

v7.0.0-beta.51 (2018-06-12)

Fixed a peerDep issue

v7.0.0-beta.50 (2018-06-12)

Mostly bug fixes and some decorator updates

👓 Spec Compliancy

  • babel-plugin-proposal-unicode-property-regex
  • babel-parser
  • babel-core, babel-generator, babel-parser, babel-plugin-proposal-decorators, babel-types

💥 Breaking Change

  • babel-generator, babel-parser, babel-plugin-syntax-decorators
  • babel-core, babel-generator, babel-parser, babel-plugin-proposal-decorators, babel-types
  • babel-core, babel-plugin-syntax-decorators
  • babel-helper-builder-react-jsx, babel-plugin-transform-react-inline-elements, babel-plugin-transform-react-jsx
    • #8045 Do not quote JSX attribute keys for IdentifierName. (@arv)

🚀 New Feature

  • babel-generator
  • babel-preset-env
  • babel-core, babel-plugin-syntax-decorators
  • babel-generator, babel-plugin-proposal-decorators
  • babel-generator, babel-parser, babel-types, babylon

🐛 Bug Fix

  • babel-helper-hoist-variables, babel-plugin-transform-modules-systemjs
  • babel-plugin-proposal-class-properties, babel-traverse
  • babel-plugin-transform-typescript
    • #7996 Adds JSXFragment to plugin-transform-typescript check for the presence of jsx. (@malbernaz)
  • babel-plugin-proposal-class-properties, babel-plugin-transform-typescript
    • #8007 Fix 'Missing class properties transform' error when parsing class properties with Typescript syntax. (@pterolex)
  • babel-parser
  • babel-preset-env
  • babel-helpers, babel-plugin-transform-classes
  • babel-types
  • babel-cli
  • babel-helper-builder-react-jsx, babel-plugin-transform-react-inline-elements, babel-plugin-transform-react-jsx
    • #8045 Do not quote JSX attribute keys for IdentifierName. (@arv)

💅 Polish

  • babel-plugin-proposal-class-properties, babel-plugin-transform-classes, babel-plugin-transform-parameters, babel-plugin-transform-react-constant-elements
  • babel-parser

📝 Documentation

🏠 Internal

  • Other
  • babel-generator, babel-node, babel-standalone, babel-template
    • #8144 Add Labels to READMEs Generator & Update README's w. Links To Open Issues (for some pkg's). (@BeniCheni)
  • babel-node

v7.0.0-beta.49 (2018-05-25)

Mostly bugfix release for a regression in decorators, and a quick fix for some new babel-node options in the last release that just didn't work right. Also one small addition to the API for official promise-returning versions of our async transform/parsing functions.

🚀 New Feature

  • babel-core
    • #8023 Add a promise-returning *Async version of the transform and parse fns. (@loganfsmyth)

🐛 Bug Fix

  • babel-node
  • babel-plugin-proposal-decorators
  • babel-cli, babel-core, babel-plugin-transform-react-jsx-source, babel-preset-env, babel-preset-react
    • #8044 Expose all filenames as absolute paths, rather than relative.. (@loganfsmyth)

🏠 Internal

v7.0.0-beta.48 (2018-05-24)

  • Renamed babylon to @babel/parser for clarity (I will still commonly refer to it as babylon though!)
  • Add Private Fields implementations (now Stage 3) class A { #a = 1 }
  • Add small Stage 3 (now Stage 4) Subsume JSON change babel/proposals#43
  • Fix IE10 class regression
  • Various fixes, many TS fixes

👓 Spec Compliancy

  • babel-parser, babel-plugin-proposal-json-strings, babel-plugin-syntax-json-strings, babel-preset-stage-3

💥 Breaking Change

  • babel-core, babel-helper-fixtures, babel-helper-transform-fixture-test-runner, babel-plugin-syntax-flow, babel-plugin-syntax-jsx, babel-plugin-syntax-typescript, babel-plugin-transform-typescript, babel-preset-react, babel-preset-typescript, babel-standalone
    • #7955 Verify that files are .ts/.tsx before treating as Typescript files.. (@loganfsmyth)
  • babel-cli, babel-core, babel-plugin-transform-react-jsx-source, babel-preset-react
    • #7956 Make the filename option, as exposed to the plugins, consistently relative to the working directory. (@loganfsmyth)
  • babel-traverse, babel-types
    • #7900 Re-add support for local Flow bindings (TypeAlias, OpaqueTypeAlias and Interface). (@rubennorte)

🚀 New Feature

  • babel-node
    • #8010 Add more of babel-cli's options to babel-node too for consistency.. (@loganfsmyth)
  • babel-cli, babel-node
    • #5621 Add no-babelrc option in babel-node. (@xtuc)
  • babel-core, babel-generator, babel-parser, babel-types, babylon
    • #7928 Create InterpreterDirective AST node type and use to replace babel/core File's 'shebang' handling. (@loganfsmyth)
  • babel-parser, babel-plugin-proposal-json-strings, babel-plugin-syntax-json-strings, babel-preset-stage-3
  • babel-generator, babel-plugin-syntax-flow, babel-plugin-transform-flow-strip-types, babel-types, babylon
    • #7934 Add support for explicit type arguments in new and call expressions. (@samwgoldman)
  • babel-generator, babel-types, babylon
  • babylon

🐛 Bug Fix

  • babel-parser
  • babel-core, babel-helpers, babel-plugin-proposal-class-properties, babel-plugin-proposal-decorators, babel-plugin-transform-classes, babel-plugin-transform-exponentiation-operator, babel-plugin-transform-function-name, babel-plugin-transform-object-super, babel-plugin-transform-parameters, babel-plugin-transform-react-jsx, babel-plugin-transform-runtime, babel-preset-env
  • babel-types
  • babel-generator, babel-plugin-syntax-bigint, babel-types
  • babel-core, babel-generator, babel-parser, babel-types, babylon
    • #7928 Create InterpreterDirective AST node type and use to replace babel/core File's 'shebang' handling. (@loganfsmyth)
  • babel-cli, babel-core, babel-plugin-transform-react-jsx-source, babel-preset-react
    • #7956 Make the filename option, as exposed to the plugins, consistently relative to the working directory. (@loganfsmyth)
  • babel-preset-typescript
    • #7990 passes the jsxPragma options from preset-typescript to plugin-transform-typescript. (@malbernaz)
  • babel-types, babylon
    • #7967 TypeScript: Fix TSInferType .typeParameter type.. (@benjamn)
  • babel-helpers, babel-plugin-transform-classes, babel-preset-env
  • babel-register
    • #7930 Ensure that calling register() fully resets the extension state.. (@loganfsmyth)

💅 Polish

📝 Documentation

  • babel-preset-env
    • #8020 Fix include/exclude syntax in preset-env README. (@taion)
  • babel-parser

🏠 Internal

  • babel-parser
  • babel-plugin-proposal-decorators
  • babel-cli, babel-core
    • #7929 Refactor babel-cli to use async functions for async handling, and centralize option loading. (@loganfsmyth)
  • babel-helper-transform-fixture-test-runner

v7.0.0-beta.47 (2018-05-14)

  • Compile Babel itself to target Node 6 syntax given we dropped Node 4 support to run (this is unrelated to the output code)
  • Allow babelrc and babelrcRoots in config files
  • Various bug fixes

💥 Breaking Change

  • babel-generator, babel-plugin-syntax-decorators, babylon
  • Other

🚀 New Feature

  • babel-core
    • #7911 Allow 'babelrc' and 'babelrcRoots' in config files (but not .babelrc/extends). (@loganfsmyth)

🐛 Bug Fix

  • babel-plugin-transform-typescript
    • #7878 Fix handling of different JSX pragmas in Typescript. (@calebeby)
    • #7833 fix(transform-typescript): do not elide injected imports. (@jeysal)
  • babel-core
    • #7911 Allow 'babelrc' and 'babelrcRoots' in config files (but not .babelrc/extends). (@loganfsmyth)
  • babel-cli
  • babel-preset-env
  • babel-plugin-transform-typescript, babylon
    • #7888 TypeScript: Allow non-null and type assertions as lvalues. (Closes #7638). (@mmantel)
  • babel-preset-stage-3
    • #7819 fix(preset-stage-3): pass along loose flag to proposal-object-rest-spread. (@yyx990803)
  • babel-cli, babel-core, babel-helper-fixtures, babel-helper-transform-fixture-test-runner
    • #7761 Reimplement input sourcemap merging using range matching instead of closest-position matching. (@loganfsmyth)

💅 Polish

  • babel-plugin-transform-modules-commonjs, babel-plugin-transform-template-literals
  • babylon
  • babel-plugin-proposal-class-properties
    • #7813 Class Props: Don't rename constructor collisions with static props. (@jridgewell)
  • babel-cli, babel-code-frame, babel-core, babel-helper-member-expression-to-functions, babel-helper-module-imports, babel-helper-plugin-utils, babel-preset-env, babel-register, babel-template, babel-types, babylon

📝 Documentation

  • babel-node
  • babel-plugin-transform-destructuring, babel-plugin-transform-exponentiation-operator, babel-plugin-transform-property-mutators, babel-plugin-transform-proto-to-assign, babel-plugin-transform-reserved-words, babel-plugin-transform-spread
    • #7844 Improve README's for several plugins. [skip ci]. (@mmantel)
  • babel-preset-env
    • #7835 Change babel-preset-env docs according Browserslist best practices. (@ai)
    • #7807 Update shippedProposals in preset-env docs [skip ci]. (@existentialism)
    • #7790 update targets [skip ci]. (@hzoo)
  • babel-plugin-transform-instanceof
    • #7827 Expand README for plugin-transform-instanceof [skip ci]. (@mmantel)

🏠 Internal

  • Other
  • babel-core, babylon
  • babel-plugin-transform-classes
  • babel-core, babel-plugin-proposal-logical-assignment-operators, babel-plugin-proposal-nullish-coalescing-operator, babel-plugin-syntax-logical-assignment-operators, babel-plugin-syntax-nullish-coalescing-operator
  • babel-core, babel-helper-module-imports, babel-helper-transform-fixture-test-runner, babel-plugin-transform-modules-commonjs, babel-preset-es2015
  • babel-plugin-proposal-class-properties

v7.0.0-beta.46 (2018-04-23)

  • Fix regression by landing #7783

v7.0.0-beta.45 (2018-04-23)

  • Drop Node 4 Support (ends 4/30).
  • Make Stage 2 decorators "default" (implementation is still WIP), and require people use the decoratorsLegacy option for easier migration.
  • Change @babel/polyfill to not throw an error but a warning if it is imported multiple times. Also introduce another entry point without the warning
  • Change how Babel handles config files regarding a lot of cases, especially for compiling node_modules. Introduce babel.config.js
    • If you are using a monorepo an a single .babelrc, you will need to change to babel.config.js like Babel itself is doing (babel#7784)
  • Add ES2018 to @babel/preset-env: like object rest/spread, etc.
  • Lots of spec and bug fixes! Shoutout to Justin (@jridgewell) and Josh (@CodingItWrong) for all the PR work for private properties!

💥 Breaking Change

  • babel-cli, babel-core, babel-preset-env, babel-register
    • #7358 Allow more flexible file-based configuration while preventing .babelrcs from breaking things. (@loganfsmyth)
  • babylon
  • babel-core, babel-plugin-proposal-class-properties, babel-plugin-proposal-decorators, babel-plugin-syntax-decorators, babel-plugin-transform-function-name, babel-preset-stage-0, babel-preset-stage-1, babel-preset-stage-2

🚀 New Feature

  • babel-polyfill
  • babel-cli, babel-core, babel-preset-env, babel-register
    • #7358 Allow more flexible file-based configuration while preventing .babelrcs from breaking things. (@loganfsmyth)
  • babel-generator, babel-types, babylon
  • babel-preset-env
  • babel-core, babel-plugin-proposal-class-properties, babel-plugin-proposal-decorators, babel-plugin-proposal-function-bind, babel-plugin-transform-classes, babel-plugin-transform-flow-comments, babel-plugin-transform-flow-strip-types, babel-plugin-transform-function-name, babel-plugin-transform-jscript, babel-plugin-transform-parameters, babel-plugin-transform-react-jsx, babel-plugin-transform-runtime, babel-standalone
  • babel-helper-transform-fixture-test-runner
  • babel-generator, babel-helper-define-map, babel-plugin-syntax-class-properties, babel-plugin-transform-parameters, babel-plugin-transform-react-constant-elements, babel-traverse, babel-types

👓 Spec Compliancy

  • babel-helper-simple-access, babel-plugin-transform-modules-commonjs, babel-plugin-transform-modules-systemjs
  • babel-core, babel-generator, babel-plugin-proposal-decorators, babel-types, babylon
  • babel-plugin-transform-classes
  • babel-plugin-transform-template-literals
  • babel-helper-replace-supers, babel-plugin-proposal-class-properties, babel-plugin-transform-classes, babel-plugin-transform-exponentiation-operator, babel-plugin-transform-object-super
  • babel-helper-replace-supers, babel-helpers, babel-plugin-proposal-class-properties, babel-plugin-transform-classes, babel-plugin-transform-exponentiation-operator, babel-plugin-transform-object-super, babel-preset-env

🐛 Bug Fix

  • babel-helper-simple-access, babel-plugin-transform-modules-commonjs, babel-plugin-transform-modules-systemjs
  • babel-helper-replace-supers, babel-plugin-transform-classes, babel-plugin-transform-object-super
  • babel-helper-member-expression-to-functions, babel-helper-replace-supers, babel-plugin-transform-classes
  • babel-core, babel-helpers, babel-plugin-proposal-class-properties, babel-plugin-proposal-decorators, babel-plugin-transform-classes, babel-plugin-transform-function-name, babel-plugin-transform-parameters, babel-plugin-transform-react-jsx, babel-plugin-transform-runtime, babel-preset-env
  • babel-generator
    • #7769 [bebal-generator] fix: don't write ': ' token when name is null. (@Quramy)
  • babylon
  • babel-helper-replace-supers, babel-plugin-proposal-class-properties, babel-plugin-transform-classes, babel-plugin-transform-exponentiation-operator, babel-plugin-transform-object-super
  • babel-types
  • babel-helper-function-name, babel-plugin-transform-function-name
    • #7435 Fix function name computation for literal values. (@Axnyff)
  • babel-plugin-proposal-class-properties
  • babel-plugin-proposal-optional-chaining, babel-types

💅 Polish

  • babel-helpers
  • babel-helper-replace-supers, babel-plugin-transform-classes, babel-plugin-transform-exponentiation-operator, babel-plugin-transform-object-super, babel-traverse
  • babel-plugin-proposal-class-properties, babel-plugin-transform-parameters
  • babylon
    • #7717 Provide better error message for invalid default export declaration. (@dczombera)
  • babel-helper-replace-supers, babel-plugin-transform-classes
  • babel-plugin-transform-object-super

📝 Documentation

  • babel-plugin-proposal-decorators, babel-preset-stage-0, babel-preset-stage-1, babel-preset-stage-2
  • Other

🏠 Internal

  • babel-helper-replace-supers, babel-plugin-proposal-class-properties, babel-plugin-transform-classes, babel-plugin-transform-parameters
  • babel-helper-member-expression-to-functions, babel-helper-replace-supers, babel-plugin-transform-classes, babel-plugin-transform-exponentiation-operator, babel-plugin-transform-object-super
  • babel-helper-replace-supers, babel-plugin-transform-classes, babel-plugin-transform-exponentiation-operator, babel-plugin-transform-object-super, babel-traverse
  • babel-helper-transform-fixture-test-runner
  • babel-helper-transform-fixture-test-runner, babel-plugin-proposal-class-properties, babel-plugin-proposal-optional-catch-binding, babel-plugin-transform-block-scoping, babel-plugin-transform-classes, babel-plugin-transform-computed-properties, babel-plugin-transform-jscript, babel-plugin-transform-object-super
  • babel-cli, babel-core, babel-generator, babel-plugin-proposal-decorators, babel-plugin-proposal-logical-assignment-operators, babel-preset-es2015
    • #7549 Migrate babel-cli and babel-generator tests to use jest-expect. (@devenbansod)
  • babel-plugin-transform-classes, babel-traverse
  • Other
  • babel-traverse, babel-types

v7.0.0-beta.44 (2018-04-02)

  • Publish regression: was compiled against Node 8 instead of Node 4 due to an ENV mixup

v7.0.0-beta.43 (2018-04-02)

Various fixes, also lazy-load @babel/core dependencies (should make config lookup and other API methods fast for other projects to use).

👓 Spec Compliancy

  • babel-plugin-proposal-logical-assignment-operators

🚀 New Feature

  • babel-node
    • #7471 added support Node's --require and -r flags in babel-node. (@yakotika)
  • babel-generator, babylon
    • #7383 TypeScript: support mapped type modifiers syntax. (@andy-ms)
  • babel-template
    • #7583 Allow placeholders in JSXElements when parsing templates. (@Andarist)
  • babel-preset-env

🐛 Bug Fix

💅 Polish

🏠 Internal

  • babel-*
  • babel-node, babel-register
    • #7588 Have @babel/core lazy-load all dependencies and make @babel/register not explode because of that. (@loganfsmyth)
  • Other
  • babel-plugin-transform-classes, babel-preset-env
    • #7605 Disable flow on transformClass, fix preset-env errors. (@thymikee)
  • babel-cli, babel-core, babel-helpers, babel-node, babel-plugin-transform-for-of, babel-preset-env, babylon
    • #7602 Remove obsolete max-len eslint rule and reformat some stuff to fit. (@danez)
  • babel-plugin-transform-classes
    • #7444 Refactor inheritance in babel-plugin-transform-classes. (@thymikee)

v7.0.0-beta.42 (2018-03-15)

💥 Breaking Change

  • babel-helper-module-transforms, babel-plugin-transform-classes, babel-plugin-transform-modules-commonjs
    • #7545 Make imports in .mjs files use node-like behavior where 'exports' is '.default' only. . (@loganfsmyth)

🚀 New Feature

  • babel-helper-module-transforms, babel-plugin-transform-classes, babel-plugin-transform-modules-commonjs
    • #7545 Make imports in .mjs files use node-like behavior where 'exports' is '.default' only. . (@loganfsmyth)
  • babel-plugin-proposal-object-rest-spread, babel-plugin-transform-destructuring
    • #7390 Favour extends helper over objectWithoutProperties when whole object …. (@Andarist)

🐛 Bug Fix

  • babel-preset-env
  • babel-core, babel-helper-plugin-utils
    • #7580 Ensure that the backward-compat logic for plugin-utils copies over the version API properly.. (@loganfsmyth)
  • babel-plugin-proposal-async-generator-functions
    • #7575 Fix "Module build failed: Error: Cannot find module '@babel/types'". (@mgroenhoff)
  • babel-helpers, babel-plugin-transform-classes, babel-preset-env

💅 Polish

  • babel-helpers, babel-plugin-transform-classes, babel-preset-env
    • #7188 Wrap wrapNativeSuper helpers in redefining functions for better tree-…. (@Andarist)
  • babel-plugin-proposal-object-rest-spread, babel-plugin-transform-destructuring
    • #7390 Favour extends helper over objectWithoutProperties when whole object …. (@Andarist)

📝 Documentation

🏠 Internal

  • babel-generator, babel-plugin-transform-typescript
  • Other

v7.0.0-beta.41 (2018-03-14)

💥 Breaking Change

  • babel-cli, babel-core, babel-generator, babel-helper-transform-fixture-test-runner
    • #7500 Remove the sourceMapTarget option from core and implement it in babel-cli.. (@loganfsmyth)

We'll need to update tooling for this ^. Also published gulp-babel@8.0.0-beta.2

  • babel-helpers, babel-plugin-transform-modules-commonjs, babel-traverse
    • #7491 Explicitly throw if the array rest/spread items are not iterable.. (@loganfsmyth)
  • babylon
  • babel-helper-remap-async-to-generator, babel-plugin-proposal-async-generator-functions, babel-plugin-transform-async-to-generator, babel-preset-env
    • #7446 Always transform for-await in async functions[rebase of #6953].. (@Gvozd)
  • babel-core, babel-helper-module-imports, babel-helper-transform-fixture-test-runner, babel-plugin-transform-modules-amd, babel-plugin-transform-modules-commonjs, babel-plugin-transform-modules-umd, babel-preset-env-standalone, babel-preset-env, babel-standalone
    • #7417 Rely entirely on sourceType for module vs script differentiation.. (@loganfsmyth)
  • babel-core, babel-helpers, babel-plugin-transform-modules-commonjs
  • babel-register
    • #7416 Replace instead of merging babel-register options, and resolve cwd up front. (@loganfsmyth)

👓 Spec Compliancy

🚀 New Feature

  • babel-core
    • #7472 Expose the partial Babel config for callers to load and mutate.. (@loganfsmyth)
  • babel-*
    • #7450 Allow plugins to assert that a specific babel version has loaded the plugin.. (@loganfsmyth)
  • babel-cli, babel-preset-env
    • #7439 feat(babel-cli): add a brief summary to build output. (@thymikee)
  • babel-generator, babel-plugin-transform-typescript, babel-types, babylon
    • #7159 typescript: Support definite assignment assertion. (@andy-ms)
  • babel-generator, babel-types, babylon
  • babel-core, babel-plugin-proposal-logical-assignment-operators, babel-plugin-syntax-logical-assignment-operators, babel-preset-stage-0, babylon

🐛 Bug Fix

  • babel-core
  • babel-preset-env
    • #7548 preset-env - add Symbol.asyncIterator to shippedProposals builtIns. (@yaelhe)
    • #7421 Add Number.parseFloat/parseInt mappins for preset-env 'usage'. (@existentialism)
    • #7438 Ensure babel-preset-env targets input object is not mutated. (@guybedford)
    • #7400 Add missing promise polyfill deps for preset-env's useBuiltIns: usage. (@existentialism)
  • babylon
  • babel-plugin-transform-destructuring
    • #7333 Assign another temp var when parsing assignment patterns in destructuring. (@existentialism)
  • babel-helpers, babel-plugin-transform-modules-commonjs, babel-traverse
    • #7491 Explicitly throw if the array rest/spread items are not iterable.. (@loganfsmyth)
  • babel-node
  • babel-helper-remap-async-to-generator, babel-plugin-proposal-async-generator-functions, babel-plugin-transform-async-to-generator, babel-preset-env
    • #7446 Always transform for-await in async functions[rebase of #6953].. (@Gvozd)
  • babel-cli
    • #7461 Require users to pass a filename, or specify --no-babelrc when using CLI with stdin.. (@loganfsmyth)
  • babel-helper-module-transforms, babel-plugin-transform-modules-commonjs
  • babel-plugin-proposal-object-rest-spread
  • babel-helpers, babel-plugin-proposal-object-rest-spread, babel-preset-env

💅 Polish

  • babel-generator
    • #7550 Replace lodash/map with array equivalent. (@danez)
  • babylon
    • #7538 Make 'sourceType:unambiguous' use 'module' when import.meta is used.. (@loganfsmyth)
  • babel-helpers, babel-plugin-proposal-class-properties, babel-plugin-proposal-decorators, babel-plugin-transform-classes, babel-plugin-transform-parameters
  • babel-core, babel-plugin-transform-modules-commonjs, babylon
  • babel-core
  • babel-plugin-transform-async-to-generator, babel-plugin-transform-react-constant-elements, babel-plugin-transform-react-jsx, babel-traverse
  • babel-helpers, babel-plugin-transform-modules-commonjs, babel-plugin-transform-template-literals

📝 Documentation

  • README.md
    • #7496 Docs: Use namespace packages in all links. (@danez)
  • babel-plugin-transform-typescript
    • #7469 TS transform plugin README updatex2. (@orta)
    • #7443 Update README for Babel TypeScript Plugin. (@orta)
  • babel-generator

🏠 Internal

  • Other
  • babel-preset-env
  • babel-core, babel-helper-transform-fixture-test-runner
  • babel-helper-transform-fixture-test-runner
  • babel-register
  • babel-*
    • #7484 Require tests to use input.mjs for modules, and output.js/.mjs based on active transforms. (@loganfsmyth)
  • babel-code-frame
  • babel-cli, babel-code-frame, babel-core, babel-helper-transform-fixture-test-runner, babel-preset-env-standalone, babel-preset-env, babel-register, babel-standalone, babel-traverse, babel-types
  • babel-types, babylon
  • babel-template, babel-types, babylon
  • babel-helper-module-transforms, babel-helper-split-export-declaration, babel-plugin-proposal-class-properties, babel-plugin-transform-classes, babel-plugin-transform-function-name, babel-traverse

v7.0.0-beta.40 (2018-02-12)

🚀 New Feature

  • babel-preset-env
  • babel-highlight *#7351 Extract @babel/highlight package from @babel/code-frame (@suchipi)

🐛 Bug Fix

  • babel-cli
  • babel-code-frame
    • #7341 Allow falsey, yet valid options for codeFrameColumns(). (@hulkish)
  • babel-generator, babel-plugin-proposal-optional-chaining, babel-types, babylon
  • babel-core, babel-template, babel-traverse
  • babel-plugin-proposal-pipeline-operator
  • babel-traverse
    • #7312 Preserve identifier location information when mapping this and arguments.. (@loganfsmyth)
  • babylon
    • #7297 [Typescript] - Fix SyntaxError in async arrow functions with rest params. (@ksashikumar)

📝 Documentation

  • babel-plugin-proposal-unicode-property-regex

🏠 Internal

v7.0.0-beta.39 (2018-01-30)

👓 Spec Compliancy

  • babel-plugin-proposal-optional-chaining

🚀 New Feature

  • babel-polyfill, babel-preset-env, babel-register, babel-runtime
  • babel-core
  • babel-preset-env, babel-preset-es2015
    • #7283 Support cjs shorthand for modules option in preset-es2015 & preset-env. (@Andarist)
  • babel-register
  • babel-preset-env
  • babel-generator, babylon
    • #7239 TypeScript: Support parsing 'unique' type operator. (@andy-ms)
  • babel-code-frame

🐛 Bug Fix

  • babel-register
    • #7298 Revert "make babel injectable in babel-register". (@hzoo)
  • babel-plugin-proposal-decorators, babylon
    • #7189 Bug-fix: export default decorated class parsed as class expression. (@nveenjain)
  • babel-plugin-transform-typescript
    • #7160 typescript: Fix enum emit when values are strings. (@andy-ms)
  • babel-helper-annotate-as-pure

💅 Polish

📝 Documentation

  • babel-preset-env
    • #7271 babel-preset-env: Fixed links in readme and improved "Built-ins" example. (@apepper)

🏠 Internal

  • babel-*
  • babel-helper-transform-fixture-test-runner
  • babel-plugin-check-constants, babel-plugin-transform-block-scoping, babel-preset-env, babel-preset-es2015, babel-standalone
  • babylon
  • babel-plugin-transform-eval, babel-standalone
  • Other

v7.0.0-beta.38 (2018-01-17)

🐛 Bug Fix

  • babylon
    • #7225 typescript: Properly set this.state.inType one token before parsing a type. (@andy-ms)
    • #7179 Issue #6691 - Fix: unicode characters not allowed in regexes. (@perinikhil)
    • #7098 Support 'assert and assign' TypeScript syntax. (@maaz93)
  • babel-traverse
  • babel-plugin-transform-async-to-generator, babel-traverse
    • #7213 Fixed _containerInsertAfter setting path key as stringified index. (@Andarist)
  • babel-code-frame
    • #7216 bugfix: set color level when color is forced. (@Timer)
  • babel-generator, babel-plugin-transform-flow-strip-types, babylon
  • babel-plugin-transform-block-scoping
  • babel-plugin-transform-react-inline-elements
    • #7166 Bail out on JSX fragments instead of throwing. (@mdebbar)
  • babel-helper-builder-react-jsx, babel-plugin-transform-react-jsx
    • #7173 Preserve namespaced attributes when throwIfNamespace is false. (@mtpc)

💅 Polish

  • babel-helpers, babel-plugin-transform-react-constant-elements
    • #7170 babel-helpers: prevent object shape change in jsx. (@jorrit)
  • babylon
  • *

📝 Documentation

🏠 Internal

v7.0.0-beta.37 (2018-01-08)

Fixes + overrides config feature

🚀 New Feature

  • babel-core
  • babylon
  • babel-generator, babel-types
  • babel-standalone
    • #7119 Add syntax-typescript and transform-typescript to babel-standalone. (@alangpierce)

🐛 Bug Fix

  • babel-core
  • babel-standalone
  • babel-generator
  • babel-plugin-proposal-class-properties
    • #7147 Fix computed properties being inserted after the class, thus making t…. (@Andarist)
  • babylon
    • #7121 Regex parsing issue fix after function declaration.. (@rajzshkr)
  • babel-plugin-transform-computed-properties, babel-traverse
  • babel-helper-remap-async-to-generator, babel-plugin-transform-async-to-generator
    • #7043 Avoid adding #PURE annotation to .bind(this)() expressions. (@Kovensky)

💅 Polish

  • babel-plugin-proposal-decorators
  • babylon

📝 Documentation

🏠 Internal

  • babylon
  • babel-preset-env
    • #7130 Remove hasBeenLogged flag from preset-env. (@h1b9b)
  • babel-generator, babel-plugin-proposal-class-properties, babel-plugin-transform-flow-strip-types, babel-plugin-transform-react-jsx, babel-plugin-transform-template-literals, babel-plugin-transform-typescript, babel-preset-env, babel-preset-flow

v7.0.0-beta.36 (2017-12-25)

  • First release to allow support for class A extends Array
  • Add babel-plugin-transform-dotall-regex
  • Add lazy option to modules-commonjs
  • Various fixes + decorator regression fix

🚀 New Feature

  • babel-helpers, babel-plugin-transform-classes, babel-preset-es2015
  • babel-preset-env, babel-standalone
  • babel-plugin-transform-dotall-regex
  • babel-helper-module-transforms, babel-plugin-transform-modules-commonjs
  • babel-plugin-syntax-import-meta, babel-preset-stage-3, babel-standalone

🐛 Bug Fix

  • babel-generator
  • babel-generator, babel-plugin-transform-typescript, babylon
    • #7075 Support parsing export default abstract class {}. (@andy-ms)
  • babel-generator, babel-plugin-transform-flow-strip-types, babylon
  • babel-types
  • babel-plugin-proposal-decorators

💅 Polish

  • babel-plugin-transform-typescript
    • #7079 Better error messages when Babel fails to parse import = and export =…. (@gs-akhan)
  • babel-core
    • #6961 Handling babylon parsing errors in a better way. (@maaz93)

📝 Documentation

  • babel-plugin-proposal-unicode-property-regex

🏠 Internal

  • babel-preset-env
    • #6576 Remove extraneous console output when running preset-env tests. (@xjlim)
    • #7084 [preset-env] Move all defaults to the separate module. (@yavorsky)
  • babel-core
  • babel-helper-wrap-function, babel-plugin-proposal-class-properties, babel-plugin-transform-typescript, babel-traverse
    • #7040 Make .insert{Before,After} work by default when the parent is an eport declaration. (@nicolo-ribaudo)
  • babel-plugin-transform-block-scoping
    • #7028 Fix O(n^2) getLetReferences – 40% faster on large flat files. (@sophiebits)

v7.0.0-beta.35 (2017-12-14)

Various bug fixes, first version of Babel to use the MIT version of regenerator

👓 Spec Compliancy

  • babylon
  • babel-helper-replace-supers, babel-helpers, babel-plugin-proposal-class-properties, babel-plugin-transform-classes, babel-plugin-transform-parameters

🚀 New Feature

  • babel-generator, babylon
  • Other
    • #6994 Add Babel's song: Hallelujah (thanks to Angus). (@hzoo)
  • babylon

🐛 Bug Fix

  • babel-core, babel-helper-remap-async-to-generator, babel-helper-wrap-function, babel-plugin-proposal-async-generator-functions, babel-plugin-proposal-class-properties, babel-plugin-proposal-function-sent, babel-plugin-transform-async-to-generator, babel-preset-env
    • #6984 Wrap FunctionDeclarations with FunctionDeclarations, instead of using _blockHoist.. (@nicolo-ribaudo)
  • babel-types
  • babel-helper-remap-async-to-generator, babel-plugin-transform-async-to-generator
  • babel-generator
  • babylon
    • #6986 Fix destructuring assignment spec violation. (@ksashikumar)
    • #6969 For babylon typescript parser, fix false positive for ! after a line break. (@andy-ms)
  • babel-helper-replace-supers, babel-helpers, babel-plugin-proposal-class-properties, babel-plugin-transform-classes, babel-plugin-transform-parameters

💅 Polish

🏠 Internal

  • babel-core, babel-helper-fixtures, babel-plugin-transform-modules-amd, babel-plugin-transform-modules-commonjs, babel-plugin-transform-modules-umd, babel-preset-env, babel-template, babel-traverse, babel-types, babylon
  • babel-plugin-transform-regenerator, babel-polyfill, babel-runtime
    • #6992 Update to the latest version of regenerator that uses the MIT license. (@hzoo)
  • babel-plugin-transform-react-jsx-self, babel-plugin-transform-react-jsx-source, babel-plugin-transform-react-jsx, babel-traverse, babel-types
  • babylon
    • #6982 publish babylon as next tag since it's not a scoped module yet [ski…. (@hzoo)

v7.0.0-beta.34 (2017-12-02)

Regression Fix

  • babel-preset-stage-1, babel-preset-stage-2

👓 Spec Compliancy

  • babel-preset-stage-0, babel-preset-stage-1

🏠 Internal

  • babylon
    • #6957 Update flow to 0.59 and fix some flow issues. (@danez)
  • Other
  • babel-types
    • #6741 Refactor @babel/types to be 100% ES-module. (@danez)

v7.0.0-beta.33 (2017-12-01)

👓 Spec Compliancy

  • babel-generator, babel-plugin-proposal-export-default-from, babel-plugin-proposal-export-default, babel-plugin-proposal-export-namespace-from, babel-plugin-proposal-export-namespace, babel-plugin-syntax-export-default-from, babel-plugin-syntax-export-extensions, babel-plugin-syntax-export-namespace-from, babel-standalone, babylon
  • babylon

💥 Breaking Change

  • babel-core
    • #6905 Merge all config & programmatic plugins/preset rather than duplicating. (@loganfsmyth)
  • babylon
  • babel-traverse
    • #6881 Remove double exports of NodePath, Scope and Hub in traverse. (@danez)
  • Other
    • #6831 [preset-env] Exclude transform-typeof-symbol with loose option.. (@yavorsky)

🚀 New Feature

  • babel-plugin-transform-for-of
    • #6914 Porting babel-plugin-transform-for-of-as-array into transform-for-of as option. (@rajzshkr)
  • babel-core
    • #6905 Merge all config & programmatic plugins/preset rather than duplicating. (@loganfsmyth)
  • babel-core, babel-preset-es2015
    • #6904 Add a 'cwd' option, and misc refactoring and tweaks before simple config merging. (@loganfsmyth)
  • babel-cli, babel-core
    • #6834 Expose envName as a top-level Babel option to avoid using environmental variables. (@loganfsmyth)
  • babel-helper-module-imports
    • #6744 Allowed hintedNames for namespaced imports, changed some other defaul…. (@Andarist)
  • Other
    • #6791 Add safari technology preview for babel-preset-env.. (@yavorsky)
    • #6438 Move babel-preset-env-standalone to the monorepo.. (@yavorsky)
  • babel-core, babel-helper-remap-async-to-generator, babel-plugin-proposal-async-generator-functions, babel-plugin-proposal-class-properties, babel-plugin-proposal-function-sent, babel-plugin-transform-async-to-generator, babel-plugin-transform-parameters
    • #6803 Add /#PURE/ annotatiotion for babel-plugin-async-to-generator. (@satya164)

🐛 Bug Fix

  • babel-helpers, babel-plugin-transform-modules-commonjs
    • #6850 Copy getters and setters correctly in interopWildcard. (@danez)
  • babel-helper-module-transforms, babel-plugin-transform-modules-amd, babel-plugin-transform-modules-commonjs, babel-plugin-transform-modules-umd
  • babel-generator
  • babel-plugin-transform-regenerator
    • #6917 update regenerator (removed explicit babel-types dep). (@hzoo)
  • babel-traverse
  • babylon
  • babel-types
    • #6852 Fix validation of WithStatement and enable flow in definitions. (@danez)
  • babel-core
  • Other
  • babel-plugin-transform-block-scoping
    • #6814 Fix shadow variables reassignment for block scoping in loops.. (@yavorsky)

💅 Polish

  • babylon
    • #6836 removing expression field from ArrowFunctionExpression. (@mmckeaveney)
    • #6727 [Babylon] Use char codes contants. (@xtuc)
    • #6754 Better error message for super when not using an object method. (@rajzshkr)
  • babel-helper-module-imports
    • #6744 Allowed hintedNames for namespaced imports, changed some other defaul…. (@Andarist)
  • babel-cli, babel-core, babylon
    • #6875 Fix "Better error messaging for unexpected tokens #6715". (@gmmorris)
  • babel-helpers, babel-plugin-check-constants
  • babel-types
    • #6853 Make SpreadProperty and RestProperty a deprecatedAlias. (@danez)
  • babel-plugin-transform-arrow-functions, babel-plugin-transform-parameters
  • babel-core, babel-traverse
    • #6818 Add some nice warnings if plugins happen to return promises instead of sync values.. (@loganfsmyth)

📝 Documentation

  • babel-plugin-transform-for-of, babylon
    • #6942 add readme entry for for-of assumeArray, use it. (@hzoo)
  • babel-plugin-proposal-class-properties
    • #6941 [plugin-proposal-class-properties] Fix small loose docs typo. (@sdgluck)
  • babel-register
  • Other
    • #6868 [skip ci] Update CONTRIBUTING.md. (@yeefom)
    • #6756 Documentation PR: description about building and testing babylon in CONTRIBUTING.md. (@vincentdchan)
    • #6843 README: Use HTTPS and relative links when possible. (@mc10)
    • #6825 docs: [skip-ci] Remove @babel scope from babel-preset-env include/exc…. (@marcioj)
  • babel-*
    • #6820 Replaced legacy babel-* & shorthand package name usage with @babel/* in README.md's. (@hulkish)
  • babel-cli
    • #6829 @babel/cli: removed babel-node mention in README.md [skip ci]. (@viatsko)

🏠 Internal

v7.0.0-beta.32 (2017-11-12)

Regression with loose modules + export babel#6805

💥 Breaking Change

🚀 New Feature

  • babel-core, babylon
    • #6789 Allow sourceType:unambiguous as a way to tell Babylon to guess the type.. (@loganfsmyth)
  • babel-core, babel-plugin-transform-modules-umd, babel-plugin-transform-react-display-name, babel-plugin-transform-react-jsx-source
    • #6777 Add an official 'state.filename' and be more explicit about option passing.. (@loganfsmyth)
  • babel-helper-module-transforms, babel-plugin-transform-modules-amd, babel-plugin-transform-modules-commonjs, babel-plugin-transform-modules-umd

🐛 Bug Fix

  • babel-helper-function-name, babel-plugin-transform-arrow-functions, babel-plugin-transform-function-name, babel-traverse
    • #6760 Fix transform-arrow-functions in { spec: true } shadowing. (@Kovensky)

💅 Polish

  • babel-register
  • babel-plugin-transform-destructuring, babel-plugin-transform-spread
  • babylon
    • #6748 Avoid copying properties from the prototype chain.. (@bmeurer)

📝 Documentation

  • babel-plugin-proposal-unicode-property-regex
  • babel-core

🏠 Internal

  • babel-generator
    • #6801 Prefix XJS test directories with JSX instead. (@clemmy)
    • #6749 Move typscript test copy script to scripts folder and run once. (@danez)
  • babel-core, babel-register
  • babel-plugin-proposal-object-rest-spread, babel-plugin-proposal-unicode-property-regex, babel-plugin-transform-block-scoping, babel-plugin-transform-destructuring
    • #6776 Hoist more plugin options and default useUnicodeFlag to 'true'.. (@loganfsmyth)
  • babel-plugin-*
  • babel-polyfill
  • .eslintrc, babel-helper-transform-fixture-test-runner, babylon
  • Other
    • #6738 Publish to the latest dist tag [skip ci]. (@hzoo)

v7.0.0-beta.31 (2017-11-03)

Yes, this was a jump from v7.0.0-beta.5 to v7.0.0-beta.31 We moved babylon into the main repo, and it was already at beta.30.

🚀 New Feature

  • babel-preset-react, babel-preset-stage-0, babel-preset-stage-1, babel-preset-stage-2, babel-preset-stage-3, babylon
    • #6733 add loose/useBuiltIns option to stage presets, use it. (@hzoo)
  • babel-generator, babel-helper-builder-react-jsx, babel-plugin-transform-react-jsx-compat, babel-plugin-transform-react-jsx, babel-types

🐛 Bug Fix

  • babel-preset-env
  • babel-plugin-transform-spread

🏠 Internal

  • babel-cli, babel-core, babel-helper-transform-fixture-test-runner
    • #6556 Strictly validate Babel's options to centralize Flow refinement of datatype. (@loganfsmyth)
  • babel-*
    • #6655 Use peerDeps in register and babel-node, add missing peerDependencies, and declare devDependencies. (@loganfsmyth)
  • Other
    • #6654 Update to beta.5 with scoped packages 👻. (@hzoo)
    • #6736 Run with loose, exclude typeof in standalone. (@hzoo)

v7.0.0-beta.5 (2017-10-30)

Note: don't use ^ in your dependencies when using a beta. It can still break between (we should try not to do it but it can), so pin all the packages like "@babel/cli" : "7.0.0-beta.4"

👓 Spec Compliancy

  • babel-plugin-transform-optional-chaining
    • #6525 Optional Chaining: Account for document.all. (@azz)
  • babel-preset-env, babel-helper-remap-async-to-generator, babel-helpers, babel-plugin-transform-async-generator-functions, babel-plugin-transform-async-to-generator, babel-plugin-transform-function-sent
    • #6452 Adhering to async generator yield behavior change. (@Andarist)

💥 Breaking Change

  • babel-*
    • #6575 remove es20xx prefixes from plugins and rename folders. (@hzoo)
  • babel-plugin-transform-async-to-generator, babel-plugin-transform-async-to-module-method, babel-standalone
    • #6573 Merge transform-async-to-module-method into transform-async-to-generator. (@hzoo)
  • babel-*
  • babel-preset-env, babel-helper-remap-async-to-generator, babel-helpers, babel-plugin-transform-async-generator-functions, babel-plugin-transform-async-to-generator, babel-plugin-transform-function-sent
    • #6452 Adhering to async generator yield behavior change. (@Andarist)
  • babel-helper-module-transforms, babel-helper-remap-async-to-generator, babel-helpers, babel-plugin-transform-class-properties, babel-plugin-transform-es2015-classes, babel-plugin-transform-es2015-for-of, babel-plugin-transform-es2015-modules-amd, babel-plugin-transform-es2015-modules-commonjs, babel-plugin-transform-es2015-modules-systemjs, babel-plugin-transform-es2015-parameters, babel-template, babel-types
  • babel-core
  • babel-*
    • #6495 Rename everything: use scoped packages. (@hzoo)

🚀 New Feature

  • babel-helper-builder-react-jsx, babel-plugin-transform-react-jsx, babel-types
    • #6563 Add a 'throwIfNamespace' option for JSX transform. (@jukben)
  • babel-*
    • #6549 Add peerDep on specific babel-core version in transform plugins, pres…. (@hzoo)
  • babel-plugin-transform-es3-member-expression-literals, babel-plugin-transform-es3-property-literals, babel-plugin-transform-es3-reserved-words, babel-types
  • babel-preset-env, babel-plugin-transform-unicode-property-regex, babel-preset-stage-3, babel-standalone
  • babel-plugin-syntax-nullish-coalescing-operator, babel-plugin-transform-nullish-coalescing-operator, babel-preset-stage-1, babel-types
    • #6483 Implement transform for nullish-coalescing operator. (@azz)

🐛 Bug Fix

  • babel-plugin-proposal-unicode-property-regex, babel-template
    • #6646 fixup places that aren not scoped [skip ci]. (@hzoo)
  • babel-plugin-proposal-class-properties, babel-traverse
    • #6530 Fixed incorrect static class field initialization order. (@Andarist)
  • babel-*
  • babel-core
  • babel-plugin-transform-react-jsx
  • babel-plugin-transform-class-properties
    • #6517 Cloning reused node in class properties transform. (@Andarist)
  • babel-plugin-transform-pipeline-operator

💅 Polish

  • babel-plugin-transform-es2015-parameters
    • #6581 Fix hasRest to not try to load "-1" from params array.. (@bmeurer)
  • babel-code-frame
    • #6550 Make syntax highlighting for @ and # nicer. (@lydell)

📝 Documentation

  • Other
    • #6579 remove warning (still applies but don't need it there) [skip ci]. (@hzoo)
  • babel-*
    • #6569 Fix readmes to use @babel/ [skip ci]. (@hzoo)
  • babel-preset-env
  • babel-helper-get-function-arity
    • #6532 docs - Add helper-get-function-arity readme [skip ci]. (@athomann)
  • babel-helper-bindify-decorators
    • #6533 Add API to helper-bindify-decorators README [skip ci]. (@athomann)
  • babel-helper-hoist-variables
    • #6534 Add API to babel-helper-hoist-vars README [skip ci]. (@athomann)

🏠 Internal

  • babel-core, babel-generator, babel-template, babel-traverse, babel-types
  • babel-preset-env
  • Other
  • babel-plugin-transform-unicode-property-regex
    • #6548 Remove stale emoji tests in plugin-transform-unicode-property-regex. (@syldlb)
  • babel-preset-env, babel-preset-es2017
  • babel-runtime
  • babel-core, babel-helpers, babel-plugin-transform-es2015-block-scoping, babel-runtime
  • babel-core
  • babel-register

v7.0.0-beta.4 (2017-10-30)

Had a bug with peerDeps, moving changelog to beta.5

v7.0.0-beta.3 (2017-10-15)

Update from beta.2 -> beta.3 looks like this: babel#6488


Wanted to get this release out first, but next release we should make necessary breaking changes for later: using peerDeps on babel-core so that people don't install incompatible versions of plugins/babel itself and get weird errors reported, using scoped npm packages like @babel/core due to issues with npm squatting, knowing what is an official package or not, etc, and renaming proposal plugins to babel-plugin-proposal-x instead of babel-plugin-transform-x

Note: don't use ^ in your dependencies when using a beta. It can still break between (we should try not to do it but it can), so pin all the packages

  • Pipeline Operator: (a |> b), also in the Stage 1 Preset
  • Throw Expressions: (() => throw 'hi'), also in Stage 2
  • Preset/Plugin options are available top level rather than previously only in the visitor state
  • Many fixes

💥 Breaking Change

  • babel-helper-remap-async-to-generator
    • #6451 Drop old compatibility if statement targeting babel@6.15 and earlier. (@Andarist)
  • babel-core
  • babel-core, babel-helper-module-imports, babel-traverse

🚀 New Feature

  • babel-template
  • babel-core, babel-generator, babel-plugin-syntax-pipeline-operator, babel-plugin-transform-pipeline-operator, babel-preset-stage-1, babel-template, babel-traverse, babel-types
  • babel-cli
  • babel-plugin-transform-es2015-modules-commonjs, babel-plugin-transform-es2015-template-literals
    • #6327 Annotating taggedTemplateLiteral calls as #__PURE__. (@Andarist)
  • babel-standalone
    • #6322 Add transform-new-target and missed stage-3 plugins to babel-standalone.. (@yavorsky)
  • babel-core, babel-generator, babel-plugin-syntax-throw-expressions, babel-plugin-transform-throw-expressions, babel-preset-stage-2, babel-template, babel-traverse, babel-types

🐛 Bug Fix

  • babel-plugin-transform-function-bind
  • babel-plugin-transform-class-properties
  • babel-plugin-transform-do-expressions, babel-traverse
  • babel-core
  • babel-plugin-transform-es2015-destructuring
    • #6374 Fixed reusing node in destructuring plugin, which caused caching issu…. (@Andarist)
  • babel-plugin-transform-es2015-parameters, babel-traverse
  • babel-traverse
    • #6354 unshiftContainer seems to incorrectly handle function params #6150. (@daft300punk)
  • babel-plugin-check-es2015-constants, babel-plugin-transform-class-properties, babel-plugin-transform-es2015-block-scoping, babel-plugin-transform-es2015-parameters, babel-traverse
  • babel-generator

💅 Polish

📝 Documentation

  • Other
  • babel-preset-typescript
    • #6365 note about .ts extension in the preset [skip ci]. (@hzoo)
  • babel-helper-module-imports
    • #6323 add docs for other import syntax [skip ci]. (@hzoo)

🏠 Internal

  • .eslintrc
  • babel-plugin-transform-async-to-module-method, babel-plugin-transform-class-properties, babel-plugin-transform-es2015-arrow-functions, babel-plugin-transform-es2015-classes, babel-plugin-transform-es2015-computed-properties, babel-plugin-transform-es2015-for-of, babel-plugin-transform-es2015-modules-amd, babel-plugin-transform-es2015-modules-commonjs, babel-plugin-transform-es2015-modules-systemjs, babel-plugin-transform-es2015-modules-umd, babel-plugin-transform-es2015-parameters, babel-plugin-transform-es2015-spread, babel-plugin-transform-es2015-template-literals, babel-plugin-transform-optional-chaining, babel-plugin-transform-react-constant-elements, babel-plugin-transform-react-jsx, babel-plugin-transform-runtime
  • babel-cli
  • babel-core
    • #6435 Always pass an options object to presets and plugins.. (@loganfsmyth)
    • #6326 Preserve object identity when loading config, for improved future caching.. (@loganfsmyth)
  • babel-helpers, babel-runtime
  • babel-cli, babel-core, babel-helper-transform-fixture-test-runner, babel-template, babel-traverse
    • #6359 Split up babel-core's File class and add Flowtype annotations. (@loganfsmyth)
  • babel-core, babel-helpers, babel-runtime
  • babel-core, babel-generator, babel-helper-replace-supers, babel-messages, babel-plugin-check-es2015-constants, babel-plugin-transform-es2015-classes, babel-plugin-transform-es2015-for-of, babel-traverse
  • babel-helper-module-imports, babel-plugin-transform-decorators, babel-plugin-transform-typescript
  • Other
    • #6348 remove inline plugin from Babel's .babelrc. (@xjlim)
  • babel-traverse
  • babel-standalone
    • #6338 transform-es2015-template-literals doesn't have spec mode anymore, ch…. (@Andarist)

v7.0.0-beta.2 (2017-09-26)

💥 Breaking Change

  • babel-core, babel-plugin-transform-es2015-template-literals
    • #6307 Move template object creation from core into the template transform.. (@loganfsmyth)
  • babel-core, babel-generator, babel-plugin-transform-class-properties, babel-template, babel-traverse, babel-types
    • #6306 update generator printing, babylon [skip ci]. (@hzoo)

🚀 New Feature

  • babel-helper-annotate-as-pure, babel-plugin-transform-es2015-classes, babel-traverse, babel-types

🐛 Bug Fix

  • babel-core
  • babel-helper-builder-react-jsx, babel-plugin-transform-react-inline-elements
    • #6294 Use helper-builder-react-jsx inside plugin-transform-react-inline-elements. (@nicolo-ribaudo)
  • babel-plugin-transform-es2015-parameters
    • #6274 Fixed loose option of transform-es2015-parameters handling only Assig…. (@Andarist)
  • babel-core, babel-helpers, babel-plugin-transform-async-to-generator, babel-plugin-transform-react-constant-elements
    • #6289 Fixed asyncToGenerator helper using arrow function. (@Andarist)

📝 Documentation

🏠 Internal

v7.0.0-beta.1 (2017-09-19)

Mostly bug fixes

💥 Breaking Change

  • babel-helper-modules, babel-plugin-transform-es2015-modules-commonjs, babel-plugin-transform-strict-mode

🚀 New Feature

  • babel-plugin-codemod-optional-catch-binding

🐛 Bug Fix

  • babel-core, babel-helpers
    • #6260 Fixed buildExternalHelpers tool for var and module output types. (@Andarist)
  • babel-register
  • babel-plugin-transform-es2015-unicode-regex
  • babel-generator
  • babel-plugin-transform-react-jsx-source
    • #6239 Fix jsx-source to not fail without filename. (@danez)

💅 Polish

  • babel-helpers, babel-plugin-transform-async-to-generator, babel-plugin-transform-class-properties, babel-plugin-transform-es2015-parameters, babel-plugin-transform-es2015-spread, babel-plugin-transform-react-constant-elements, babel-runtime
    • #6250 Use new Array instead of Array for V8 optimization. (@pranavpr)

🏠 Internal

  • babel-core, babel-plugin-syntax-async-functions, babel-plugin-syntax-exponentiation-operator, babel-plugin-syntax-trailing-function-commas, babel-plugin-transform-es2015-classes, babel-plugin-transform-es2015-parameters, babel-plugin-transform-flow-strip-types, babel-preset-es2015
    • #6229 move out syntax plugins to babel/babel-archive, they don't need to be…. (@hzoo)
  • babel-polyfill

v7.0.0-alpha.20 (2017-08-30)

  • Handle Symbol in transform-es2015-computed-properties
  • Disallow ...[ & ...{ inside object destructuring

http://tc39.github.io/tc39-notes/2017-05_may-23.html#16ih-why-allow-bindingpattern-for-bindingrestparameter-for-object-rest-maybe-we-should-just-allow-identifiers

// Invalid
( {...{}} = {} ); ( {...[]} = {} );
let {...{}} = {}; let {...[]} = {};
  • Split transform-export-extensions into transform-export-namespace and transform-export-default plugins
  • Move transform-numeric-separator to Stage 2
  • Move transform-class-properties to Stage 3
    • Change the default transform to use Object.defineProperty and loose option to use assignment (this.a = 1)
    • Use configurable: true
  • Change es2015-template-literals to use .concat by default and concatenation in loose mode.
  • Remove deprecated jsx pragma check in transform-react-jsx
  • Remove preset-flow from the preset-react (there was confusion on why type syntax was allowed, and it also made it incompatible with preset-typescript
  • Add --config-file CLI flag to explicitly pass a config location
  • Move babel-standalone into the repo (another form of this used to be babel-browser)

👓 Spec Compliancy

  • babel-plugin-transform-async-to-generator, babel-*
  • babel-helpers, babel-plugin-transform-es2015-computed-properties
  • babel-plugin-check-es2015-constants, babel-traverse, babel-types
  • babel-generator, babel-plugin-transform-es2015-destructuring, babel-plugin-transform-object-rest-spread
    • #6102 Adjusted Object Rest/Spread tests to use only allowed syntax from the…. (@Andarist)
  • babel-plugin-transform-export-default, babel-plugin-transform-export-extensions, babel-plugin-transform-export-namespace, babel-preset-stage-1, babel-preset-stage-2
  • babel-plugin-transform-class-properties
  • babel-plugin-transform-class-properties, babel-plugin-transform-decorators, babel-plugin-transform-es2015-parameters, babel-plugin-transform-flow-comments, babel-plugin-transform-new-target, babel-plugin-transform-react-constant-elements, babel-preset-stage-2, babel-preset-stage-3
    • #6076 Update Class Fields to Stage 3 and change default behavior. (@kedromelon)
  • babel-preset-stage-1, babel-preset-stage-2

💥 Breaking Change

  • babel-plugin-transform-es2015-template-literals
  • babel-generator, babel-plugin-transform-es2015-destructuring, babel-plugin-transform-object-rest-spread
    • #6145 Removed the deprecated jsx pragma detection code. (@asthas)
  • babel-plugin-transform-flow-strip-types, babel-preset-flow, babel-preset-react
  • babel-helper-fixtures, babel-*

🚀 New Feature

  • babel-cli
    • #6133 add --config-file option to CLI to pass in .babelrc location. (@bdwain)

🐛 Bug Fix

  • babel-core
    • #5586 Handle cycles of plugins compiling themselves and .babelrc.js files loading themselves. (@loganfsmyth)
  • babel-plugin-transform-es2015-destructuring, babel-traverse
    • #5743 Fix issue replacement nodes not requeued for transforming after destructuring. (@buunguyen)
  • babel-plugin-check-es2015-constants, babel-plugin-transform-es2015-block-scoping, babel-traverse
  • babel-helper-replace-supers, babel-plugin-transform-class-properties, babel-traverse
  • babel-plugin-transform-export-default, babel-plugin-transform-export-namespace, babel-types
  • babel-plugin-transform-es2015-parameters, babel-traverse
  • babel-helper-replace-supers, babel-plugin-transform-es2015-classes
  • babel-plugin-transform-class-properties
    • #6082 babel-plugin-transform-class-properties: Ignore type annotations when looking for name collisions. (@andy-ms)
  • babel-preset-stage-2
    • #6088 remove left transform-class-properties from stage. (@echo304)
  • babel-plugin-transform-es2015-block-scoping, babel-types

💅 Polish

  • babel-plugin-transform-es2015-classes, babel-plugin-transform-flow-comments, babel-plugin-transform-flow-strip-types

📝 Documentation

  • babel-plugin-transform-class-properties
  • Other
  • babel-plugin-transform-react-inline-elements
    • #6078 [docs] Added clarification note about transform-react-inline-elements usage …. (@Andarist)

🏠 Internal

  • babel-standalone
    • #6168 Refactor es2015-loose and es2015-no-commonjs presets to use preset op…. (@bmax)
    • #6137 Fix babel-standalone for realz. (@Daniel15)
    • #6029 Move babel-standalone into main Babel repo. (@Daniel15)
  • babel-plugin-transform-es2015-template-literals
    • #6169 re-add template literals tests, add ones that were missing. (@kedromelon)
  • babel-core, babel-generator, babel-template, babel-traverse, babel-types
  • babel-*
  • Other
  • babel-core, babel-plugin-transform-es2015-classes, babel-plugin-transform-regenerator, babel-plugin-transform-runtime, babel-runtime
  • babel-plugin-transform-es2015-parameters
  • babel-plugin-transform-class-properties
  • babel-register
  • babel-generator
    • #6074 Add "classProperties" plugin to babel-generator typescript tests. (@andy-ms)
  • babel-plugin-syntax-typescript, babel-preset-typescript
    • #6070 Move parser plugin from babel-preset-typescript to babel-plugin-syntax-typescript. (@andy-ms)

v7.0.0-alpha.19 (2017-08-07)

Can help us documented any undocumented changes or issues at babel/notes#30 or make an issue

💥 Breaking Change

  • babel-plugin-transform-flow-strip-types, babel-preset-react

babel-preset-react now will only handle flow if the file has a // @flow

🚀 New Feature

  • babel-plugin-syntax-typescript, babel-plugin-transform-typescript, babel-preset-typescript
    • #5899 Add babel-plugin-syntax-typescript, babel-plugin-transform-typescript, and babel-preset-typescript. (@andy-ms)

Initial release of typescript equivalent of how Babel handles flow with a new babel-preset-typescript

{
  "presets": ["typescript"]
}

🐛 Bug Fix

  • babel-plugin-transform-es2015-modules-commonjs
  • babel-plugin-transform-es2015-modules-commonjs, babel-plugin-transform-es2015-spread

🏠 Internal

  • babel-plugin-syntax-typescript, babel-plugin-transform-typescript, babel-preset-typescript
  • babel-core, babel-helper-wrap-function, babel-plugin-transform-es2015-arrow-functions
  • babel-plugin-transform-es2015-destructuring, babel-plugin-transform-es2015-parameters, babel-plugin-transform-object-rest-spread, babel-plugin-transform-react-constant-elements, babel-traverse
  • babel-core, babel-generator, babel-traverse, babel-types
  • Other

v7.0.0-alpha.18 (2017-08-03)

👓 Spec Compliancy

  • babel-generator, babel-plugin-transform-flow-comments, babel-plugin-transform-flow-strip-types, babel-types
  • babel-preset-stage-3

💥 Breaking Change

  • babel-plugin-transform-es2015-block-scoping, babel-traverse, babel-types

🚀 New Feature

🐛 Bug Fix

  • babel-plugin-transform-es2015-block-scoping, babel-preset-es2015
  • babel-types
  • babel-core
    • #6022 allow PluginPass.file.addImport to create empty import statements. (@chocolateboy)

📝 Documentation

🏠 Internal

  • babel-*
  • babel-generator
    • #6026 babel-generator: Comment TypeScript-specific code. (@andy-ms)
    • #6018 babel-generator: Make plugins list explicit for test cases. (@andy-ms)
  • babel-plugin-transform-function-sent, babel-preset-stage-2
  • babel-types
    • #6019 babel-types: Have NewExpression inherit from CallExpression. (@andy-ms)

v7.0.0-alpha.17 (2017-07-26)

  • Lots of bug fixes
  • function.sent (temporary at babel-plugin-transform-function-sent2 until we get access to the npm package) EDIT: republished babel-plugin-transform-function-sent
  • Optional catch binding try {} catch {}: babel-plugin-transform-optional-catch-binding
  • es2015-parameters loose mode that doesn't use arguments

👓 Spec Compliancy

  • babel-plugin-check-es2015-constants

Instead of throwing a compile time error when const is violated, Babel should insert a throw statement before the violation.

💥 Breaking Change

Removes the "Noop" AST node, which was only used in the flow-comments plugin and probably unlikely in the ecosystem.

🚀 New Feature

  • babel-plugin-transform-react-constant-elements
    • #5307 feature: Support whitelisting mutable props for react-constant-elements. (@STRML)

If you know a certain property will be ok to hoist

{
  "plugins": [
    ["transform-react-constant-elements", {"allowMutablePropsOnTags": ["FormattedMessage"]}],
  ]
}
  • babel-generator, babel-types
  • babel-generator, babel-plugin-transform-flow-strip-types, babel-types
declare function foo(x: mixed): boolean %checks(x !== null);
  • babel-generator, babel-plugin-transform-flow-strip-types
declare module "foo" { declare export type * from "bar"; }
  • babel-helper-remap-async-to-generator, babel-helper-wrap-function, babel-helpers, babel-plugin-transform-function-sent, babel-preset-stage-2
function* gen() {
  let a = function.sent;
}
let gen = _skipFirstGeneratorNext(function* gen() {
  const _functionSent = yield;
  let a = _functionSentt;
})
  • babel-core, babel-generator, babel-plugin-syntax-optional-catch-binding, babel-plugin-transform-optional-catch-binding, babel-template, babel-traverse, babel-types
try {} catch {}
  • babel-plugin-transform-es2015-parameters

Non-spec compliant transform (disregards arity) but doesn't use arguments

var t = function (f = "foo") {
  return f + " bar";
};
var t = function (f) {
  if (f === void 0) {
    f = "foo";
  }

  return f + " bar";
};

🐛 Bug Fix

  • babel-core, babel-helpers, babel-plugin-transform-object-rest-spread, babel-plugin-transform-react-constant-elements
    • #5757 Non string computed keys in object-rest-spread. (@peey)
  • babel-traverse
    • #5745 Use first binding for multiple var declarations. (@peey)
  • babel-helper-builder-binary-assignment-operator-visitor, babel-helper-explode-assignable-expression, babel-plugin-transform-exponentiation-operator
  • babel-plugin-transform-es2015-for-of, babel-traverse
  • babel-plugin-transform-numeric-separator, babel-types
  • babel-plugin-transform-es2015-modules-amd, babel-plugin-transform-es2015-modules-commonjs, babel-plugin-transform-es2015-modules-umd
  • babel-plugin-transform-es2015-for-of
  • babel-core, babel-plugin-transform-object-rest-spread, babel-traverse
  • babel-generator
  • babel-helpers, babel-plugin-transform-es2015-classes, babel-plugin-transform-es2015-typeof-symbol
  • babel-plugin-transform-react-inline-elements

🏠 Internal

  • babel-helper-transform-fixture-test-runner
  • babel-code-frame
  • babel-register
  • babel-types
  • babel-cli
  • babel-generator
  • babel-traverse
  • Other
  • babel-core, babel-generator, babel-helper-builder-react-jsx, babel-helper-function-name, babel-helper-replace-supers, babel-plugin-transform-es2015-block-scoping, babel-plugin-transform-es2015-classes, babel-plugin-transform-jscript, babel-plugin-transform-react-constant-elements, babel-plugin-transform-react-jsx, babel-template, babel-traverse, babel-types
  • babel-plugin-transform-es2015-modules-systemjs

v7.0.0-alpha.16 (2017-07-25)

Publish issue

v7.0.0-alpha.15 (2017-07-11)

This is a Stage 0 TC39 Proposal (subject to change/removal and your feedback!)

const obj = {
  foo: {
    bar: {
      baz: 42,
    },
  },
};

const baz = obj?.foo?.bar?.baz; // 42

const safe = obj?.qux?.baz; // undefined

// Optional chaining and normal chaining can be intermixed
obj?.foo.bar?.baz; // Only access `foo` if `obj` exists, and `baz` if
                   // `bar` exists
function Foo() {
  console.log(new.target);
}

Foo(); // => undefined
new Foo(); // => Foo
  • better for of optimization (if inferred array)
// these kinds of scenarios will compile to a regular for loop
const x = [];
for (const y of x) {}
const arr = Object.entries(x);
for (const y of arr) {}
  • loose mode for classes is a lot looser

Input

class A {}

Output (loose)

let A = function A() {}; // loose

Output (normal)

function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

var A = function A() {
  _classCallCheck(this, A);
};

💥 Breaking Change

  • babel-*
    • #5824 Hardcode to double quotes, indent to 2 spaces. (@hzoo)

This is just the babel-generator output, not a big deal.

🚀 New Feature

  • babel-traverse
  • babel-plugin-transform-new-target
  • babel-core, babel-generator, babel-plugin-syntax-optional-chaining, babel-plugin-transform-optional-chaining, babel-preset-stage-1, babel-template, babel-traverse, babel-types
  • babel-core, babel-plugin-transform-es2015-for-of
    • #4747 test for for-of optimization on arrays and add it for array type anno…. (@hzoo)
  • babel-helpers, babel-plugin-transform-es2015-classes, babel-plugin-transform-flow-comments, babel-plugin-transform-flow-strip-types
    • #4850 Remove ClassCallCheck, possibleConstructorReturn in loose mode. (@hzoo)
  • babel-generator, babel-plugin-transform-flow-strip-types, babel-types

🐛 Bug Fix

  • babel-helpers, babel-plugin-transform-class-properties, babel-plugin-transform-es2015-classes
    • #5885 Fix returning an object in a derived class constructor without super. (@jridgewell)
  • babel-helper-remap-async-to-generator, babel-plugin-transform-async-to-generator
  • babel-plugin-transform-es2015-modules-commonjs
  • babel-plugin-transform-es2015-classes
  • babel-cli
  • babel-types
    • #5865 Fix type errors for destructuring assignments(#4227). (@MarckK)
  • babel-generator
  • babel-plugin-transform-numeric-separator
  • babel-plugin-transform-es2015-template-literals, babel-preset-es2015
  • babel-plugin-transform-es2015-parameters
  • babel-plugin-syntax-optional-chaining

💅 Polish

  • babel-plugin-transform-es2015-parameters
  • babel-helper-builder-react-jsx, babel-plugin-transform-es2015-spread, babel-traverse
  • babel-traverse, babel-types
  • babel-types

📝 Documentation

🏠 Internal

  • babel-polyfill
  • Other
  • babel-core, babel-generator
  • babel-*
  • babel-core, babel-generator, babel-traverse, babel-types
  • babel-*
  • babel-generator, babel-traverse
    • #5866 update babel-eslint, try out numeric separators. (@hzoo)
  • babel-generator
  • babel-cli
  • babel-core, babel-helper-transform-fixture-test-runner, babel-traverse
  • babel-core, babel-traverse

v7.0.0-alpha.14

  • Skipped

v7.0.0-alpha.13

  • Skipped

v7.0.0-alpha.12 (2017-05-31)

👓 Spec Compliancy

  • babel-core, babel-generator, babel-plugin-syntax-numeric-separator, babel-plugin-transform-numeric-separator, babel-preset-stage-1, babel-template, babel-traverse, babel-types
    • #5793 Support for NumericLiteralSeparator, Stage 1 feature. (@rwaldron)

🚀 New Feature

  • babel-code-frame
  • babel-core, babel-generator, babel-plugin-syntax-numeric-separator, babel-plugin-transform-numeric-separator, babel-preset-stage-1, babel-template, babel-traverse, babel-types
    • #5793 Support for NumericLiteralSeparator, Stage 1 feature. (@rwaldron)
  • babel-cli
    • #5785 Allow --inspect-brk option to be used with babel-node. (@noinkling)

🐛 Bug Fix

  • babel-plugin-transform-async-to-generator, babel-plugin-transform-es2015-destructuring, babel-plugin-transform-es2015-modules-commonjs, babel-plugin-transform-react-constant-elements
    • #5763 Fix incorrect destructuring in for loop let initialization. (@buunguyen)
  • babel-core, babel-plugin-transform-es2015-block-scoping
  • babel-plugin-transform-flow-strip-types

📝 Documentation

  • babel-plugin-check-es2015-constants, babel-plugin-syntax-async-functions, babel-plugin-syntax-async-generators, babel-plugin-syntax-class-properties, babel-plugin-syntax-decorators, babel-plugin-syntax-do-expressions, babel-plugin-syntax-dynamic-import, babel-plugin-syntax-exponentiation-operator, babel-plugin-syntax-export-extensions, babel-plugin-syntax-function-bind, babel-plugin-syntax-function-sent, babel-plugin-syntax-jsx, babel-plugin-syntax-object-rest-spread, babel-plugin-syntax-trailing-function-commas, babel-plugin-transform-async-functions
    • #5798 Make all packages/*/README.md descriptions consistent.. (@rwaldron)
  • Other

🏠 Internal

  • babel-traverse
    • #5746 Remove duplicated getStatementParent and refactor requires to imports in tests. (@maurobringolf)
    • #5779 Added individual test cases for possible errors with path.replaceWith. (@maurobringolf)

v7.0.0-alpha.11 (2017-05-31)

  • Publish issues

v7.0.0-alpha.10 (2017-05-25)

  • Publish issues, use alpha.12

Update Babylon: https://github.com/babel/babylon/releases/tag/v7.0.0-beta.9, https://github.com/babel/babylon/releases/tag/v7.0.0-beta.10

👓 Spec Compliancy

  • babel-generator, babel-plugin-transform-flow-strip-types, babel-types

💥 Breaking Change

  • babel-*
    • #5677 Kill the "shadow-functions.js" internal plugin in favor of an explicit helper. (@loganfsmyth)

🚀 New Feature

  • babel-*
  • babel-plugin-transform-es2015-arrow-functions, babel-plugin-transform-es2015-function-name
    • #5620 Add function name to spec-transformed arrow functions. (@Kovensky)
  • babel-plugin-transform-react-display-name
    • #5554 Updated transform-react-display-name for createReactClass addon. (@bvaughn)
  • babel-register

🐛 Bug Fix

  • babel-types
  • babel-plugin-transform-flow-comments
  • babel-plugin-transform-do-expressions
  • babel-plugin-transform-es2015-classes, babel-plugin-transform-es2015-destructuring, babel-traverse
  • babel-core, babel-helpers, babel-plugin-transform-async-to-generator, babel-plugin-transform-react-constant-elements
    • #5688 Fix for #4943 "Calling an async function with default parameter as function for arguments checking handled synchonous". (@hulkish)
  • babel-plugin-transform-object-rest-spread

💅 Polish

  • babel-plugin-transform-es2015-template-literals

📝 Documentation

  • babel-plugin-transform-runtime
    • #5767 [Documentation change] regeneratorRuntime -> _regenerator2.default. (@adityavohra7)
  • babel-plugin-transform-es2015-arrow-functions
  • Other
  • babel-core

🏠 Internal

  • babel-helper-fixtures
    • #5765 Support specifying minimum Node version a test requires. (@buunguyen)
  • babel-helper-transform-fixture-test-runner
  • babel-preset-es2015
  • babel-register
    • #3670 Switch to pirates for babel-register.. (@danez)
  • babel-core
  • babel-core, babel-plugin-transform-react-jsx
  • Other

v7.0.0-alpha.9 (2017-04-18)

🐛 Bug Fix

  • babel-core

v7.0.0-alpha.8 (2017-04-17)

👓 Spec Compliancy

  • babel-preset-stage-2, babel-preset-stage-3

💥 Breaking Change

  • babel-core
    • #5547 [7.0] Require babel-(preset|plugin) or module: on plugins/presets. (@loganfsmyth)

🚀 New Feature

🐛 Bug Fix

  • babel-plugin-transform-class-properties, babel-plugin-transform-es2015-classes, babel-plugin-transform-es2015-function-name
  • babel-generator
    • #5562 Avoid creating a new line comment when a block comment is preceded by a forward slash. (@tgecho)
  • babel-plugin-transform-async-to-generator
    • #5536 Always use the native (or polyfilled) Promise in transform-async-to-generator. (@Kovensky)

💅 Polish

  • babel-core, babel-helpers
    • #5548 Remove unnecessary returns in asyncToGenerator helper. (@zertosh)

📝 Documentation

  • babel-plugin-transform-es2015-arrow-functions
    • #5573 Improve example of babel-plugin-transform-es2015-arrow-functions. (@exacs)

🏠 Internal

  • babel-core, babel-messages
    • #5602 Refactor OptionManager to be a short class with a bunch of pure helper functions.. (@loganfsmyth)
  • babel-plugin-transform-regenerator
  • Other

v7.0.0-alpha.7 (2017-04-05)

  • Updated babylon, fixed babel-register issue, and make babel-polyfill publish the core-js polyfills individually for babel-preset-env

🚀 New Feature

  • babel-polyfill

🐛 Bug Fix

  • babel-register
  • babel-generator, babel-helper-builder-react-jsx, babel-plugin-transform-react-jsx
  • babel-core, babel-generator, babel-template, babel-traverse, babel-types

📝 Documentation

  • babel-plugin-transform-es2015-modules-commonjs
    • #5588 Update transform-es2015-modules-commonjs doc. (@xtuc)
  • babel-plugin-transform-es2015-spread

🏠 Internal

v7.0.0-alpha.6 (2017-03-27)

Fix issue with babel-core not picking up the .babelrc correctly

Also started Babel to compile itself with Babel 7! (We'll be working on making it compile the last good version from master soon so we don't need to wait until after publishing to find a regression)

🐛 Bug Fix

🏠 Internal

v7.0.0-alpha.5 (2017-03-24)

babel-runtime helpers weren't built correctly, and I found extra dep on babel-runtime in 2 packages.

At the point of this publish, all other packages are at v7.0.0-alpha.3 babel-register is at v7.0.0-alpha.4

🐛 Bug Fix

  • babel-runtime

🏠 Internal

  • babel-plugin-transform-decorators, babel-plugin-transform-react-inline-elements, babel-runtime
    • #5540 keep one core-js helper file in git, remove babel-runtime from deps. (@hzoo)

v7.0.0-alpha.4 (2017-03-23)

At the point of this publish, all other packages are at v7.0.0-alpha.3

🐛 Bug Fix

  • babel-register

v7.0.0-alpha.3 (2017-03-23)

💥 Breaking Change

  • babel-traverse
  • babel-runtime
  • babel-core, babel-generator, babel-plugin-transform-es2015-template-literals, babel-template, babel-traverse, babel-types
    • #5523 Account for template literals revision. (@hzoo)
  • babel-core, babel-preset-react, babel-runtime
    • #5489 Misc fixes + Move babel-core config processing from transformation/file/options into top-level folder. (@loganfsmyth)
  • babel-cli, babel-core, babel-register, babel-types
    • #5487 Make only/ignore relative to cwd/config file and move only/ignore checking all to core.. (@loganfsmyth)
  • babel-core, babel-plugin-transform-es2015-modules-umd, babel-plugin-transform-react-display-name, babel-plugin-transform-react-jsx-source
  • babel-core
    • #5466 Resolve programmatic/CLI arguments from cwd, not file being compiled.. (@loganfsmyth)
  • babel-cli, babel-core
    • #5463 More strictly parse configs and explicitly handle arguments in babel-cli. (@loganfsmyth)

🚀 New Feature

  • babel-plugin-transform-runtime, babel-runtime
    • #5442 Add useBuiltIns and useESModules options to transform-runtime. (@Kovensky)
  • babel-core, babel-register

🐛 Bug Fix

  • babel-plugin-transform-react-inline-elements, babel-traverse
    • #5504 Fix path.remove() leading & trailing comments sharing. (@dmail)
  • babel-core, babel-runtime
  • babel-plugin-transform-react-constant-elements, babel-traverse
    • #5415 Fix PathHoister attaching to default parameters.. (@STRML)
  • babel-plugin-transform-es2015-modules-amd, babel-plugin-transform-es2015-modules-commonjs
    • #5474 Properly preserve import ordering with AMD format.. (@rwjblue)
  • babel-plugin-transform-do-expressions, babel-types
  • babel-plugin-transform-es2015-function-name, babel-types

💅 Polish

📝 Documentation

  • babel-plugin-transform-runtime
    • #5481 Add useBuiltins and useESModules options to transform-runtime README. (@existentialism)
    • #5401 Improve options documentation for babel-plugin-transform-runtime. (@aaronang)
  • babel-register
  • babel-generator
    • #5477 Update babel-generator documentation. (@xtuc)
  • babel-plugin-transform-es2015-*

🏠 Internal

  • babel-cli
  • Other
  • babel-plugin-transform-regenerator
  • babel-core, babel-plugin-transform-es2015-classes, babel-template, babel-traverse
  • babel-plugin-transform-es2015-classes
    • #5450 Changes the throw error for test in super-illegal-non-constructor-call. (@arshabh)
  • babel-helper-builder-react-jsx
    • #5484 Removes unused lodash dep from babel-helper-builder-react-jsx. (@segphault)

babel@7.0.0-alpha.2 (2017-03-08)

🚀 New Feature

  • babel-core, babel-generator, babel-plugin-transform-object-rest-spread
  • babel-plugin-transform-es2015-modules-amd, babel-plugin-transform-es2015-modules-commonjs

📝 Documentation

🏠 Internal

  • babel-core, babel-helper-transform-fixture-test-runner
  • babel-*

v7.0.0-alpha.1 (2017-03-02)

💥 Breaking Change

  • babel-core, babel-generator, babel-helper-remap-async-to-generator, babel-plugin-transform-async-to-generator, babel-template, babel-traverse, babel-types
  • babel-core, babel-generator, babel-plugin-transform-es2015-destructuring, babel-plugin-transform-es2015-duplicate-keys, babel-plugin-transform-object-rest-spread, babel-template, babel-traverse, babel-types
  • babel-core
  • babel-core, babel-preset-es2015, babel-preset-es2016, babel-preset-es2017, babel-preset-flow, babel-preset-latest, babel-preset-react, babel-preset-stage-0, babel-preset-stage-1, babel-preset-stage-2, babel-preset-stage-3
    • #5128 [7.0] Remove bc code from preset handling and preset-es2015. (@danez)
  • babel-core, babel-generator, babel-helper-remap-async-to-generator, babel-plugin-transform-object-rest-spread, babel-template, babel-traverse, babel-types
  • babel-generator, babel-helper-remap-async-to-generator, babel-plugin-transform-object-rest-spread, babel-types
  • babel-generator
  • babel-plugin-transform-decorators
  • babel-generator, babel-types
    • #5199 Rename flow AST Type ExistentialTypeParam to ExistsTypeAnnotation. (@koba04)
    • #5229 Rename NumericLiteralTypeAnnotation to NumberLiteralTypeAnnotation. (@phpnode)
  • babel-*
  • babel-preset-stage-1, babel-preset-stage-2
  • babel-register
  • babel-runtime
  • babel-generator, babel-plugin-syntax-class-constructor-call, babel-plugin-transform-class-constructor-call, babel-preset-stage-1
  • babel-preset-stage-3
  • Other
  • babel-cli, babel-core, babel-plugin-transform-react-constant-elements, babel-traverse
  • babel-plugin-transform-es2015-unicode-regex
  • babel-polyfill
  • babel-generator, babel-plugin-transform-flow-comments
  • babel-plugin-transform-runtime

🚀 New Feature

🐛 Bug Fix

  • babel-generator
  • babel-generator, babel-plugin-transform-object-rest-spread
  • babel-core

📝 Documentation

  • babel-plugin-transform-runtime
  • babel-plugin-transform-async-to-module-method, babel-plugin-transform-es2015-computed-properties, babel-plugin-transform-es2015-for-of, babel-plugin-transform-es2015-modules-systemjs, babel-plugin-transform-es2015-spread, babel-plugin-transform-es2015-template-literals, babel-plugin-transform-object-rest-spread, babel-plugin-transform-react-jsx, babel-plugin-transform-runtime, babel-plugin-transform-strict-mode, babel-preset-latest, babel-register, babel-template
  • babel-plugin-transform-es2015-shorthand-properties
  • Other
    • #5329 Update CONTRIBUTING.md with respect to coverage check [skip ci]. (@zjmiller)

🏠 Internal

  • babel-plugin-undeclared-variables-check
    • #5407 remove undeclared plugin [skip ci]. (@hzoo)
  • babel-plugin-transform-class-constructor-call
  • babel-generator
  • Other
  • babel-cli
  • babel-core, babel-template, babel-traverse
  • babel-cli, babel-core, babel-generator, babel-plugin-transform-async-functions, babel-plugin-transform-async-generator-functions, babel-plugin-transform-async-to-generator, babel-plugin-transform-async-to-module-method, babel-plugin-transform-class-properties, babel-plugin-transform-decorators, babel-plugin-transform-do-expressions, babel-plugin-transform-es2015-modules-amd, babel-plugin-transform-es2015-modules-commonjs, babel-plugin-transform-es2015-modules-umd, babel-plugin-transform-exponentiation-operator, babel-plugin-transform-export-extensions, babel-plugin-transform-flow-comments, babel-plugin-transform-flow-strip-types, babel-plugin-transform-function-bind, babel-plugin-transform-object-rest-spread, babel-plugin-transform-regenerator, babel-plugin-transform-runtime, babel-traverse
  • babel-preset-stage-1
    • #5319 Switch decorators-legacy to decorators in the Stage 1 Preset (#5318). (@sashashakun)
  • babel-traverse
  • babel
    • #5293 [7.0] remove standalone babel package. (@hzoo)
  • babel-helper-transform-fixture-test-runner
  • babel-register
  • babel-cli, babel-core
  • babel-polyfill