From 1d34d03ac8413fb80425c182ad38c16c2da63b0a Mon Sep 17 00:00:00 2001 From: Sebastian McKenzie Date: Sun, 15 Feb 2015 18:09:05 +1100 Subject: [PATCH] rename to babel --- .6to5rc => .babelrc | 0 .gitignore | 4 +- .gitmodules | 2 +- .jscsrc | 2 +- .jshintignore | 2 +- .npmignore | 2 +- CHANGELOG-6to5.md | 1093 +++++++++++++++++ CHANGELOG.md | 1084 +--------------- CONTRIBUTING.md | 4 +- Makefile | 26 +- NOTES.md | 3 - README.md | 6 +- bin/6to5-runtime | 4 - bin/{_6to5-node => _babel-node} | 12 +- bin/babel-external-helpers | 4 + bin/{6to5-minify => babel-minify} | 2 +- bin/{6to5-node => babel-node} | 4 +- bin/{6to5 => babel}/dir.js | 0 bin/{6to5 => babel}/file.js | 2 +- bin/{6to5 => babel}/index.js | 8 +- bin/{6to5 => babel}/util.js | 6 +- bin/deprecated/6to5 | 3 + bin/deprecated/6to5-minify | 3 + bin/deprecated/6to5-node | 3 + bin/deprecated/6to5-runtime | 3 + lib/6to5/polyfill.js | 9 - lib/{6to5 => babel}/api/browser.js | 2 +- lib/{6to5 => babel}/api/node.js | 4 +- lib/{6to5 => babel}/api/register/browser.js | 2 +- lib/{6to5 => babel}/api/register/cache.js | 2 +- lib/{6to5 => babel}/api/register/node.js | 4 +- .../build-external-helpers.js} | 2 +- lib/{6to5 => babel}/build-helpers.js | 0 lib/{6to5 => babel}/detection/index.js | 0 .../detection/syntax-keys.json | 0 lib/{6to5 => babel}/detection/visitors.js | 0 lib/{6to5 => babel}/generation/buffer.js | 0 .../generation/generators/base.js | 0 .../generation/generators/classes.js | 0 .../generation/generators/comprehensions.js | 0 .../generation/generators/expressions.js | 0 .../generation/generators/flow.js | 0 .../generation/generators/jsx.js | 0 .../generation/generators/methods.js | 0 .../generation/generators/modules.js | 0 .../generation/generators/playground.js | 0 .../generation/generators/statements.js | 0 .../generators/template-literals.js | 0 .../generation/generators/types.js | 0 lib/{6to5 => babel}/generation/index.js | 0 lib/{6to5 => babel}/generation/node/index.js | 0 .../generation/node/parentheses.js | 0 .../generation/node/whitespace.js | 0 lib/{6to5 => babel}/generation/position.js | 0 lib/{6to5 => babel}/generation/source-map.js | 0 lib/{6to5 => babel}/generation/whitespace.js | 0 lib/{6to5 => babel}/helpers/clone.js | 0 lib/{6to5 => babel}/helpers/code-frame.js | 0 lib/{6to5 => babel}/helpers/levenshtein.js | 0 lib/{6to5 => babel}/helpers/normalize-ast.js | 0 lib/{6to5 => babel}/helpers/object.js | 0 lib/{6to5 => babel}/helpers/parse.js | 6 +- .../helpers/to-fast-properties.js | 0 lib/{6to5 => babel}/messages.js | 0 lib/{6to5 => babel}/patch.js | 2 +- lib/babel/polyfill.js | 9 + lib/{6to5 => babel}/transformation/file.js | 2 +- ...-binary-assignment-operator-transformer.js | 0 .../helpers/build-comprehension.js | 0 ...itional-assignment-operator-transformer.js | 0 .../helpers/build-react-transformer.js | 0 .../transformation/helpers/define-map.js | 0 .../helpers/explode-assignable-expression.js | 0 .../transformation/helpers/name-method.js | 0 .../transformation/helpers/react.js | 0 .../helpers/remap-async-to-generator.js | 0 .../transformation/helpers/replace-supers.js | 0 .../transformation/helpers/use-strict.js | 0 lib/{6to5 => babel}/transformation/index.js | 2 +- .../transformation/modules/_default.js | 0 .../transformation/modules/_strict.js | 0 .../transformation/modules/amd-strict.js | 0 .../transformation/modules/amd.js | 0 .../transformation/modules/common-standard.js | 0 .../transformation/modules/common-strict.js | 0 .../transformation/modules/common.js | 0 .../transformation/modules/ignore.js | 0 .../transformation/modules/index.js | 0 .../transformation/modules/system.js | 0 .../transformation/modules/umd-strict | 0 .../transformation/modules/umd.js | 0 .../transformation/templates/.babelrc} | 0 .../templates/abstract-expression-call.js | 0 .../templates/abstract-expression-delete.js | 0 .../templates/abstract-expression-get.js | 0 .../templates/abstract-expression-set.js | 0 .../templates/apply-constructor.js | 0 .../array-comprehension-container.js | 0 .../transformation/templates/array-from.js | 0 .../transformation/templates/array-push.js | 0 .../templates/async-to-generator.js | 0 .../transformation/templates/bind.js | 0 .../transformation/templates/call.js | 0 .../templates/class-call-check.js | 0 .../class-super-constructor-call-loose.js | 0 .../templates/class-super-constructor-call.js | 0 .../templates/corejs-is-iterator.js | 0 .../templates/corejs-iterator.js | 0 .../templates/default-parameter.js | 0 .../transformation/templates/defaults.js | 0 .../templates/define-property.js | 0 .../templates/exports-assign.js | 0 .../templates/exports-default-assign.js | 0 .../templates/exports-module-declaration.js | 0 .../transformation/templates/extends.js | 0 .../transformation/templates/for-of-loose.js | 0 .../transformation/templates/for-of.js | 0 .../transformation/templates/get.js | 0 .../transformation/templates/has-own.js | 0 .../transformation/templates/inherits.js | 0 .../templates/interop-require-wildcard.js | 0 .../templates/interop-require.js | 0 .../templates/let-scoping-return.js | 0 .../templates/object-destructuring-empty.js | 0 .../templates/object-without-properties.js | 0 ...rty-method-assignment-wrapper-generator.js | 0 .../property-method-assignment-wrapper.js | 0 .../templates/prototype-identifier.js | 0 .../templates/prototype-properties.js | 0 .../templates/require-assign-key.js | 0 .../transformation/templates/require.js | 0 .../transformation/templates/rest.js | 0 .../templates/self-contained-helpers-head.js | 0 .../transformation/templates/self-global.js | 0 .../transformation/templates/set.js | 0 .../transformation/templates/slice.js | 0 .../templates/sliced-to-array.js | 0 .../transformation/templates/system.js | 0 .../tagged-template-literal-loose.js | 0 .../templates/tagged-template-literal.js | 0 .../templates/tail-call-body.js | 0 .../transformation/templates/tail-call.js | 0 .../templates/temporal-assert-defined.js | 0 .../templates/temporal-undefined.js | 0 .../transformation/templates/test-exports.js | 0 .../transformation/templates/test-module.js | 0 .../transformation/templates/to-array.js | 0 .../templates/to-consumable-array.js | 0 .../transformation/templates/typeof.js | 0 .../templates/umd-runner-body.js | 0 .../transformation/transformer-pass.js | 0 .../transformation/transformer.js | 0 .../transformers/deprecated.json | 0 .../es3/member-expression-literals.js | 0 .../transformers/es3/property-literals.js | 0 .../transformers/es5/properties.mutators.js | 0 .../transformers/es6/arrow-functions.js | 0 .../transformers/es6/block-scoping-tdz.js | 0 .../transformers/es6/block-scoping.js | 2 +- .../transformers/es6/classes.js | 0 .../transformers/es6/constants.js | 0 .../transformers/es6/destructuring.js | 2 +- .../transformation/transformers/es6/for-of.js | 0 .../transformers/es6/modules.js | 0 .../transformers/es6/object-super.js | 0 .../transformers/es6/parameters.default.js | 0 .../transformers/es6/parameters.rest.js | 0 .../transformers/es6/properties.computed.js | 0 .../transformers/es6/properties.shorthand.js | 0 .../transformation/transformers/es6/spread.js | 0 .../transformers/es6/tail-call.js | 0 .../transformers/es6/template-literals.js | 0 .../transformers/es6/unicode-regex.js | 0 .../transformers/es7/abstract-references.js | 0 .../transformers/es7/comprehensions.js | 0 .../es7/exponentiation-operator.js | 0 .../transformers/es7/object-rest-spread.js | 0 .../transformation/transformers/index.js | 0 .../transformers/internal/alias-functions.js | 0 .../transformers/internal/block-hoist.js | 0 .../transformers/internal/cleanup.js | 0 .../transformers/internal/declarations.js | 0 .../transformers/internal/module-formatter.js | 0 .../transformers/internal/modules.js | 0 .../minification/dead-code-elimination.js | 0 .../minification/remove-console-calls.js | 0 .../minification/remove-debugger.js | 0 .../minification/rename-local-variables.js | 0 .../transformers/other/async-to-generator.js | 0 .../transformers/other/bluebird-coroutines.js | 0 .../transformation/transformers/other/flow.js | 0 .../transformers/other/react-compat.js | 0 .../transformers/other/react.js | 0 .../transformers/other/regenerator.js | 2 +- .../transformers/other/self-contained.js | 6 +- .../transformers/other/use-strict.js | 0 .../playground/mallet-operator.js | 0 .../playground/memoization-operator.js | 0 .../transformers/playground/method-binding.js | 0 .../playground/object-getter-memoization.js | 0 .../spec/block-scoped-functions.js | 0 .../transformers/spec/proto-to-assign.js | 0 .../transformers/spec/typeof-symbol.js | 0 .../transformers/spec/undefined-to-void.js | 0 .../validation/no-for-in-of-assignment.js | 0 .../transformers/validation/react.js | 0 .../transformers/validation/setters.js | 0 .../validation/undeclared-variable-check.js | 0 lib/{6to5 => babel}/traversal/context.js | 0 lib/{6to5 => babel}/traversal/index.js | 0 lib/{6to5 => babel}/traversal/path.js | 0 lib/{6to5 => babel}/traversal/scope.js | 0 lib/{6to5 => babel}/types/alias-keys.json | 0 lib/{6to5 => babel}/types/builder-keys.json | 0 lib/{6to5 => babel}/types/index.js | 0 lib/{6to5 => babel}/types/visitor-keys.json | 0 lib/{6to5 => babel}/util.js | 4 +- package.json | 35 +- packages/6to5-runtime/README.md | 5 - packages/6to5-runtime/package.json | 7 - packages/README.md | 4 +- packages/babel-runtime/README.md | 5 + packages/babel-runtime/package.json | 7 + .../regenerator/.gitkeep | 0 packages/build-runtime.js | 14 +- polyfill.js | 2 +- register.js | 2 +- test/_browser.js | 2 +- test/_helper.js | 2 +- test/_transformation-helper.js | 8 +- test/api.js | 4 +- test/browser.html | 2 +- test/browserify.js | 2 +- test/detection.js | 4 +- .../aliased-constructors/expected.js | 2 +- .../self-contained/es6-for-of/expected.js | 2 +- .../es7-array-comprehensions/expected.js | 2 +- .../self-contained/full/expected.js | 10 +- .../self-contained/modules-amd/expected.js | 6 +- .../self-contained/modules-common/expected.js | 4 +- .../self-contained/modules-system/expected.js | 10 +- .../self-contained/modules-umd/expected.js | 10 +- .../regenerator-runtime/expected.js | 2 +- .../symbol-iterator-in/expected.js | 2 +- test/generation.js | 6 +- test/kangax.js | 4 +- test/regenerator.js | 2 +- test/test262.js | 2 +- test/traceur.js | 2 +- test/traverse.js | 2 +- test/types.js | 2 +- test/util.js | 6 +- tools/cache-templates | 2 +- 253 files changed, 1279 insertions(+), 1248 deletions(-) rename .6to5rc => .babelrc (100%) create mode 100644 CHANGELOG-6to5.md delete mode 100644 NOTES.md delete mode 100755 bin/6to5-runtime rename bin/{_6to5-node => _babel-node} (93%) create mode 100755 bin/babel-external-helpers rename bin/{6to5-minify => babel-minify} (76%) rename bin/{6to5-node => babel-node} (92%) rename bin/{6to5 => babel}/dir.js (100%) rename bin/{6to5 => babel}/file.js (98%) rename bin/{6to5 => babel}/index.js (94%) rename bin/{6to5 => babel}/util.js (88%) create mode 100755 bin/deprecated/6to5 create mode 100755 bin/deprecated/6to5-minify create mode 100755 bin/deprecated/6to5-node create mode 100755 bin/deprecated/6to5-runtime delete mode 100644 lib/6to5/polyfill.js rename lib/{6to5 => babel}/api/browser.js (96%) rename lib/{6to5 => babel}/api/node.js (88%) rename lib/{6to5 => babel}/api/register/browser.js (52%) rename lib/{6to5 => babel}/api/register/cache.js (92%) rename lib/{6to5 => babel}/api/register/node.js (97%) rename lib/{6to5/build-runtime.js => babel/build-external-helpers.js} (93%) rename lib/{6to5 => babel}/build-helpers.js (100%) rename lib/{6to5 => babel}/detection/index.js (100%) rename lib/{6to5 => babel}/detection/syntax-keys.json (100%) rename lib/{6to5 => babel}/detection/visitors.js (100%) rename lib/{6to5 => babel}/generation/buffer.js (100%) rename lib/{6to5 => babel}/generation/generators/base.js (100%) rename lib/{6to5 => babel}/generation/generators/classes.js (100%) rename lib/{6to5 => babel}/generation/generators/comprehensions.js (100%) rename lib/{6to5 => babel}/generation/generators/expressions.js (100%) rename lib/{6to5 => babel}/generation/generators/flow.js (100%) rename lib/{6to5 => babel}/generation/generators/jsx.js (100%) rename lib/{6to5 => babel}/generation/generators/methods.js (100%) rename lib/{6to5 => babel}/generation/generators/modules.js (100%) rename lib/{6to5 => babel}/generation/generators/playground.js (100%) rename lib/{6to5 => babel}/generation/generators/statements.js (100%) rename lib/{6to5 => babel}/generation/generators/template-literals.js (100%) rename lib/{6to5 => babel}/generation/generators/types.js (100%) rename lib/{6to5 => babel}/generation/index.js (100%) rename lib/{6to5 => babel}/generation/node/index.js (100%) rename lib/{6to5 => babel}/generation/node/parentheses.js (100%) rename lib/{6to5 => babel}/generation/node/whitespace.js (100%) rename lib/{6to5 => babel}/generation/position.js (100%) rename lib/{6to5 => babel}/generation/source-map.js (100%) rename lib/{6to5 => babel}/generation/whitespace.js (100%) rename lib/{6to5 => babel}/helpers/clone.js (100%) rename lib/{6to5 => babel}/helpers/code-frame.js (100%) rename lib/{6to5 => babel}/helpers/levenshtein.js (100%) rename lib/{6to5 => babel}/helpers/normalize-ast.js (100%) rename lib/{6to5 => babel}/helpers/object.js (100%) rename lib/{6to5 => babel}/helpers/parse.js (93%) rename lib/{6to5 => babel}/helpers/to-fast-properties.js (100%) rename lib/{6to5 => babel}/messages.js (100%) rename lib/{6to5 => babel}/patch.js (98%) create mode 100644 lib/babel/polyfill.js rename lib/{6to5 => babel}/transformation/file.js (99%) rename lib/{6to5 => babel}/transformation/helpers/build-binary-assignment-operator-transformer.js (100%) rename lib/{6to5 => babel}/transformation/helpers/build-comprehension.js (100%) rename lib/{6to5 => babel}/transformation/helpers/build-conditional-assignment-operator-transformer.js (100%) rename lib/{6to5 => babel}/transformation/helpers/build-react-transformer.js (100%) rename lib/{6to5 => babel}/transformation/helpers/define-map.js (100%) rename lib/{6to5 => babel}/transformation/helpers/explode-assignable-expression.js (100%) rename lib/{6to5 => babel}/transformation/helpers/name-method.js (100%) rename lib/{6to5 => babel}/transformation/helpers/react.js (100%) rename lib/{6to5 => babel}/transformation/helpers/remap-async-to-generator.js (100%) rename lib/{6to5 => babel}/transformation/helpers/replace-supers.js (100%) rename lib/{6to5 => babel}/transformation/helpers/use-strict.js (100%) rename lib/{6to5 => babel}/transformation/index.js (96%) rename lib/{6to5 => babel}/transformation/modules/_default.js (100%) rename lib/{6to5 => babel}/transformation/modules/_strict.js (100%) rename lib/{6to5 => babel}/transformation/modules/amd-strict.js (100%) rename lib/{6to5 => babel}/transformation/modules/amd.js (100%) rename lib/{6to5 => babel}/transformation/modules/common-standard.js (100%) rename lib/{6to5 => babel}/transformation/modules/common-strict.js (100%) rename lib/{6to5 => babel}/transformation/modules/common.js (100%) rename lib/{6to5 => babel}/transformation/modules/ignore.js (100%) rename lib/{6to5 => babel}/transformation/modules/index.js (100%) rename lib/{6to5 => babel}/transformation/modules/system.js (100%) rename lib/{6to5 => babel}/transformation/modules/umd-strict (100%) rename lib/{6to5 => babel}/transformation/modules/umd.js (100%) rename lib/{6to5/transformation/templates/.6to5rc => babel/transformation/templates/.babelrc} (100%) rename lib/{6to5 => babel}/transformation/templates/abstract-expression-call.js (100%) rename lib/{6to5 => babel}/transformation/templates/abstract-expression-delete.js (100%) rename lib/{6to5 => babel}/transformation/templates/abstract-expression-get.js (100%) rename lib/{6to5 => babel}/transformation/templates/abstract-expression-set.js (100%) rename lib/{6to5 => babel}/transformation/templates/apply-constructor.js (100%) rename lib/{6to5 => babel}/transformation/templates/array-comprehension-container.js (100%) rename lib/{6to5 => babel}/transformation/templates/array-from.js (100%) rename lib/{6to5 => babel}/transformation/templates/array-push.js (100%) rename lib/{6to5 => babel}/transformation/templates/async-to-generator.js (100%) rename lib/{6to5 => babel}/transformation/templates/bind.js (100%) rename lib/{6to5 => babel}/transformation/templates/call.js (100%) rename lib/{6to5 => babel}/transformation/templates/class-call-check.js (100%) rename lib/{6to5 => babel}/transformation/templates/class-super-constructor-call-loose.js (100%) rename lib/{6to5 => babel}/transformation/templates/class-super-constructor-call.js (100%) rename lib/{6to5 => babel}/transformation/templates/corejs-is-iterator.js (100%) rename lib/{6to5 => babel}/transformation/templates/corejs-iterator.js (100%) rename lib/{6to5 => babel}/transformation/templates/default-parameter.js (100%) rename lib/{6to5 => babel}/transformation/templates/defaults.js (100%) rename lib/{6to5 => babel}/transformation/templates/define-property.js (100%) rename lib/{6to5 => babel}/transformation/templates/exports-assign.js (100%) rename lib/{6to5 => babel}/transformation/templates/exports-default-assign.js (100%) rename lib/{6to5 => babel}/transformation/templates/exports-module-declaration.js (100%) rename lib/{6to5 => babel}/transformation/templates/extends.js (100%) rename lib/{6to5 => babel}/transformation/templates/for-of-loose.js (100%) rename lib/{6to5 => babel}/transformation/templates/for-of.js (100%) rename lib/{6to5 => babel}/transformation/templates/get.js (100%) rename lib/{6to5 => babel}/transformation/templates/has-own.js (100%) rename lib/{6to5 => babel}/transformation/templates/inherits.js (100%) rename lib/{6to5 => babel}/transformation/templates/interop-require-wildcard.js (100%) rename lib/{6to5 => babel}/transformation/templates/interop-require.js (100%) rename lib/{6to5 => babel}/transformation/templates/let-scoping-return.js (100%) rename lib/{6to5 => babel}/transformation/templates/object-destructuring-empty.js (100%) rename lib/{6to5 => babel}/transformation/templates/object-without-properties.js (100%) rename lib/{6to5 => babel}/transformation/templates/property-method-assignment-wrapper-generator.js (100%) rename lib/{6to5 => babel}/transformation/templates/property-method-assignment-wrapper.js (100%) rename lib/{6to5 => babel}/transformation/templates/prototype-identifier.js (100%) rename lib/{6to5 => babel}/transformation/templates/prototype-properties.js (100%) rename lib/{6to5 => babel}/transformation/templates/require-assign-key.js (100%) rename lib/{6to5 => babel}/transformation/templates/require.js (100%) rename lib/{6to5 => babel}/transformation/templates/rest.js (100%) rename lib/{6to5 => babel}/transformation/templates/self-contained-helpers-head.js (100%) rename lib/{6to5 => babel}/transformation/templates/self-global.js (100%) rename lib/{6to5 => babel}/transformation/templates/set.js (100%) rename lib/{6to5 => babel}/transformation/templates/slice.js (100%) rename lib/{6to5 => babel}/transformation/templates/sliced-to-array.js (100%) rename lib/{6to5 => babel}/transformation/templates/system.js (100%) rename lib/{6to5 => babel}/transformation/templates/tagged-template-literal-loose.js (100%) rename lib/{6to5 => babel}/transformation/templates/tagged-template-literal.js (100%) rename lib/{6to5 => babel}/transformation/templates/tail-call-body.js (100%) rename lib/{6to5 => babel}/transformation/templates/tail-call.js (100%) rename lib/{6to5 => babel}/transformation/templates/temporal-assert-defined.js (100%) rename lib/{6to5 => babel}/transformation/templates/temporal-undefined.js (100%) rename lib/{6to5 => babel}/transformation/templates/test-exports.js (100%) rename lib/{6to5 => babel}/transformation/templates/test-module.js (100%) rename lib/{6to5 => babel}/transformation/templates/to-array.js (100%) rename lib/{6to5 => babel}/transformation/templates/to-consumable-array.js (100%) rename lib/{6to5 => babel}/transformation/templates/typeof.js (100%) rename lib/{6to5 => babel}/transformation/templates/umd-runner-body.js (100%) rename lib/{6to5 => babel}/transformation/transformer-pass.js (100%) rename lib/{6to5 => babel}/transformation/transformer.js (100%) rename lib/{6to5 => babel}/transformation/transformers/deprecated.json (100%) rename lib/{6to5 => babel}/transformation/transformers/es3/member-expression-literals.js (100%) rename lib/{6to5 => babel}/transformation/transformers/es3/property-literals.js (100%) rename lib/{6to5 => babel}/transformation/transformers/es5/properties.mutators.js (100%) rename lib/{6to5 => babel}/transformation/transformers/es6/arrow-functions.js (100%) rename lib/{6to5 => babel}/transformation/transformers/es6/block-scoping-tdz.js (100%) rename lib/{6to5 => babel}/transformation/transformers/es6/block-scoping.js (99%) rename lib/{6to5 => babel}/transformation/transformers/es6/classes.js (100%) rename lib/{6to5 => babel}/transformation/transformers/es6/constants.js (100%) rename lib/{6to5 => babel}/transformation/transformers/es6/destructuring.js (99%) rename lib/{6to5 => babel}/transformation/transformers/es6/for-of.js (100%) rename lib/{6to5 => babel}/transformation/transformers/es6/modules.js (100%) rename lib/{6to5 => babel}/transformation/transformers/es6/object-super.js (100%) rename lib/{6to5 => babel}/transformation/transformers/es6/parameters.default.js (100%) rename lib/{6to5 => babel}/transformation/transformers/es6/parameters.rest.js (100%) rename lib/{6to5 => babel}/transformation/transformers/es6/properties.computed.js (100%) rename lib/{6to5 => babel}/transformation/transformers/es6/properties.shorthand.js (100%) rename lib/{6to5 => babel}/transformation/transformers/es6/spread.js (100%) rename lib/{6to5 => babel}/transformation/transformers/es6/tail-call.js (100%) rename lib/{6to5 => babel}/transformation/transformers/es6/template-literals.js (100%) rename lib/{6to5 => babel}/transformation/transformers/es6/unicode-regex.js (100%) rename lib/{6to5 => babel}/transformation/transformers/es7/abstract-references.js (100%) rename lib/{6to5 => babel}/transformation/transformers/es7/comprehensions.js (100%) rename lib/{6to5 => babel}/transformation/transformers/es7/exponentiation-operator.js (100%) rename lib/{6to5 => babel}/transformation/transformers/es7/object-rest-spread.js (100%) rename lib/{6to5 => babel}/transformation/transformers/index.js (100%) rename lib/{6to5 => babel}/transformation/transformers/internal/alias-functions.js (100%) rename lib/{6to5 => babel}/transformation/transformers/internal/block-hoist.js (100%) rename lib/{6to5 => babel}/transformation/transformers/internal/cleanup.js (100%) rename lib/{6to5 => babel}/transformation/transformers/internal/declarations.js (100%) rename lib/{6to5 => babel}/transformation/transformers/internal/module-formatter.js (100%) rename lib/{6to5 => babel}/transformation/transformers/internal/modules.js (100%) rename lib/{6to5 => babel}/transformation/transformers/minification/dead-code-elimination.js (100%) rename lib/{6to5 => babel}/transformation/transformers/minification/remove-console-calls.js (100%) rename lib/{6to5 => babel}/transformation/transformers/minification/remove-debugger.js (100%) rename lib/{6to5 => babel}/transformation/transformers/minification/rename-local-variables.js (100%) rename lib/{6to5 => babel}/transformation/transformers/other/async-to-generator.js (100%) rename lib/{6to5 => babel}/transformation/transformers/other/bluebird-coroutines.js (100%) rename lib/{6to5 => babel}/transformation/transformers/other/flow.js (100%) rename lib/{6to5 => babel}/transformation/transformers/other/react-compat.js (100%) rename lib/{6to5 => babel}/transformation/transformers/other/react.js (100%) rename lib/{6to5 => babel}/transformation/transformers/other/regenerator.js (84%) rename lib/{6to5 => babel}/transformation/transformers/other/self-contained.js (93%) rename lib/{6to5 => babel}/transformation/transformers/other/use-strict.js (100%) rename lib/{6to5 => babel}/transformation/transformers/playground/mallet-operator.js (100%) rename lib/{6to5 => babel}/transformation/transformers/playground/memoization-operator.js (100%) rename lib/{6to5 => babel}/transformation/transformers/playground/method-binding.js (100%) rename lib/{6to5 => babel}/transformation/transformers/playground/object-getter-memoization.js (100%) rename lib/{6to5 => babel}/transformation/transformers/spec/block-scoped-functions.js (100%) rename lib/{6to5 => babel}/transformation/transformers/spec/proto-to-assign.js (100%) rename lib/{6to5 => babel}/transformation/transformers/spec/typeof-symbol.js (100%) rename lib/{6to5 => babel}/transformation/transformers/spec/undefined-to-void.js (100%) rename lib/{6to5 => babel}/transformation/transformers/validation/no-for-in-of-assignment.js (100%) rename lib/{6to5 => babel}/transformation/transformers/validation/react.js (100%) rename lib/{6to5 => babel}/transformation/transformers/validation/setters.js (100%) rename lib/{6to5 => babel}/transformation/transformers/validation/undeclared-variable-check.js (100%) rename lib/{6to5 => babel}/traversal/context.js (100%) rename lib/{6to5 => babel}/traversal/index.js (100%) rename lib/{6to5 => babel}/traversal/path.js (100%) rename lib/{6to5 => babel}/traversal/scope.js (100%) rename lib/{6to5 => babel}/types/alias-keys.json (100%) rename lib/{6to5 => babel}/types/builder-keys.json (100%) rename lib/{6to5 => babel}/types/index.js (100%) rename lib/{6to5 => babel}/types/visitor-keys.json (100%) rename lib/{6to5 => babel}/util.js (97%) delete mode 100644 packages/6to5-runtime/README.md delete mode 100644 packages/6to5-runtime/package.json create mode 100644 packages/babel-runtime/README.md create mode 100644 packages/babel-runtime/package.json rename packages/{6to5-runtime => babel-runtime}/regenerator/.gitkeep (100%) diff --git a/.6to5rc b/.babelrc similarity index 100% rename from .6to5rc rename to .babelrc diff --git a/.gitignore b/.gitignore index 8d55145894..ab255e6959 100644 --- a/.gitignore +++ b/.gitignore @@ -11,5 +11,5 @@ test/tmp coverage dist .package.json -packages/6to5-runtime/*.js -packages/6to5-runtime/regenerator/*.js +packages/babel-runtime/*.js +packages/babel-runtime/regenerator/*.js diff --git a/.gitmodules b/.gitmodules index 9f64ea3f37..68ac264ec3 100644 --- a/.gitmodules +++ b/.gitmodules @@ -3,7 +3,7 @@ url = https://github.com/google/traceur-compiler [submodule "vendor/regenerator"] path = vendor/regenerator - url = https://github.com/6to5/regenerator-6to5 + url = https://github.com/babel/regenerator-babel [submodule "vendor/test262"] path = vendor/test262 url = https://github.com/tc39/test262 diff --git a/.jscsrc b/.jscsrc index 9e60dd5719..92ceeea268 100644 --- a/.jscsrc +++ b/.jscsrc @@ -1,5 +1,5 @@ { - "excludeFiles": ["lib/6to5/transformation/templates"], + "excludeFiles": ["lib/babel/transformation/templates"], "disallowSpacesInNamedFunctionExpression": { "beforeOpeningRoundBrace": true }, diff --git a/.jshintignore b/.jshintignore index 7b9eaccb48..60c0292be4 100644 --- a/.jshintignore +++ b/.jshintignore @@ -1 +1 @@ -lib/6to5/transformation/templates +lib/babel/transformation/templates diff --git a/.npmignore b/.npmignore index 34a941b95c..5e135bc1d1 100644 --- a/.npmignore +++ b/.npmignore @@ -1,7 +1,7 @@ node_modules *.log *.cache -lib/6to5/transformation/templates +lib/babel/transformation/templates test benchmark Makefile diff --git a/CHANGELOG-6to5.md b/CHANGELOG-6to5.md new file mode 100644 index 0000000000..555d4e7db4 --- /dev/null +++ b/CHANGELOG-6to5.md @@ -0,0 +1,1093 @@ +# 6to5 Changelog + +## 3.6.6 + + * **Internal** + * Upgrade `core-js`. + * **Bug Fix** + * Fix temp variables not being properly pushed inside of `while` loops. + * **New Feature** + * Add `auxilaryComment`/`--auxilary-comment` option that prepend auxilary helpers. + +## 3.6.5 + + * **Internal** + * Upgrade `core-js`. + * **Bug Fix** + * Fix block scoping leaking variables in IIFE mode. + * Fix tail call transformer exploding on return statements as the consequent of an if statement. + * **New Feature** + * Add `validation.react` transformer. + +## 3.6.4 + + * **New Feature** + * Add support for flow type casts and module types. + +## 3.6.3 + + * **Internal** + * Upgrade `acorn-6to5`. + * Use `default` property on `6to5-runtime`. + +## 3.6.2 + + * **Polish** + * Use better iterator detection in `slicedToArray` helper and add support for it to the `selfContained` transformer. + +## 3.6.1 + + * **Bug Fix** + * Multiline JSX string literals are now supported. + * Fix scope tracking import specifiers incorrectly. + * Fix templates incorrectly recursing into their replacements. + * **Internal** + * Type inferrence now extends to function return types. + * Upgrade `acorn-6to5`. + +## 3.6.0 + + * **New Feature** + * Add playground class property initializers. + * **Polish** + * Completely reimplemented scope tracking, can now track types and optimise certain helpers based on it. + * Extremely fast tail recursion optimisation implementation. Thanks [@RReverser](https://github.com/RReverser)! + * **Internal** + * `kexec` has been removed as an optional dependency and must be user installed. + * Upgrade `regenerator-6to5`. + * Upgrade `acorn-6to5`. + * Upgrade `core-js`. + +## 3.5.3 + + * Enable `es6.tailCall` transformer with the first implementation that only works with self referencing calls until we can implement nested tail calls elegantly. + +## 3.5.2 + + * Disable `es6.tailCall` temporairly after reports of it breaking. + +## 3.5.1 + + * **Polish** + * Allow tail calls to work across files without the runtime. + * **Internal** + * Upgrade `acorn-6to5`. + +## 3.5.0 + + * **Bug Fix** + * Destructuring patterns as the left operator in `ForInStatement`/`ForOfStatement`. + * **Polish** + * Make default parameter IIFE invocation smarter. + * Make `__esModule` flag non-enumerable. Thanks [@daliwali](https://github.com/daliwali)! + * **Internal** + * More performance improvements. + * Parsing is now ~30% faster thanks to [marijnh/acorn@7264bc0178e7e6af7cfe02e9e0c6b26ee0e6007f](https://github.com/marijnh/acorn/commit/7264bc0178e7e6af7cfe02e9e0c6b26ee0e6007f). + * **New Feature** + * Optional `es6.blockScopingTDZ` is now completely functional and handles all edgecases. + * `super` in object literals. + * Tail call optimisation. Thanks [@RReverser](https://github.com/RReverser)! + +## 3.4.1 + + * **Bug Fix** + * Fix conflicting `--module-ids` shorthand arg in `$ 6to5`. + * Add require hook options to cache key. + * Fix strict module formatter. + +## 3.4.0 + + * **New Feature** + * Add `commonStandard` module formatter. + * **Bug Fix** + * Fix conflicting `--module-ids` shorthand arg in `$ 6to5`. + * **Internal** + * Lots of internal refactoring with scope tracking and traversal. + * **Polish** + * Don't return `map` in the API result if `sourceMap` was set to `"inline"`. + +## 3.3.12 + + * **Bug Fix** + * Don't override `MemberExpression`s with `core-js` in `selfContained` if a local binding exists. + +## 3.3.11 + + * **Bug Fix** + * Fix the require cache. + +## 3.3.10 + + * **Internal** + * Restructure transformers so they're only ran if the AST contains nodes that they need to worry about. Improves transpilation speed significantly. + * **Bug Fix** + * Fix source maps not tracking end of node locations. + * **Spec Compliancy** + * Use static super references as the home object is actually done at definition time. + * **Polish** + * Force the `es6.destructuring` transformer to be whitelisted when the `es7.objectSpread` transformer is. + * Join sibling string literals when creating JSX. + +## 3.3.9 + + * **Bug Fix** + * Fix super inside of functions. + * Fix super constructor inheritance. + +## 3.3.7 + + * **Bug Fix** + * Add `--use-strict` to valid node flags in `6to5-node`. + * Fix booleans not being properly stripped from the arguments in `6to5-node`. + * Force `.js` extension when writing files to directories with `6to5`. + +## 3.3.5 + + * **Bug Fix** + * Fix block scoping inside of while loops. + * Make module name regex more conservative. Thanks [@johlrich](https://github.com/johlrich)! + * Fix block scoping of constants. + * Fix istanbul interop. + * Make JSX transforming more inline with the official transformer with spaces after non-empty last lines. + * **Polish** + * Make it illegal to export a property called `__esModule`. + +## 3.3.4 + + * **Polish** + * Add istanbul `require` interop. + * **Bug Fix** + * Fix incorrect source map column tracking in specific scenarios. + +## 3.3.3 + + * **Polish** + * Remap top level `this` to `undefined` instead of throwing an error. + * **Bug Fix** + * Run `selfContained` transformer over the regenerator runtime when building `6to5-runtime`. + * Fix `t.isReferenced` not properly allowing `value` nodes. + +## 3.3.1 + + * **Bug Fix** + * Block hoist assignment pattern destructuring. + +## 3.3.0 + + * **Bug Fix** + * Do all transforms before the regenerator transform is ran. + * **New Feature** + * Added back the 2.x optional runtime. + +## 3.2.1 + + * **Bug Fix** + * Fix block scoping transformer rewriting breaks and continues to inner labels. + +## 3.2.0 + + * **Bug Fix** + * Fixed scope tracking for default parameters IIFE. + * Fixed block scoped functions. + * Improved `bin/6to5` path resolution. + * **New Feature** + * You can now trigger super setters in classes. Thanks [@kruppel](https://github.com/kruppel)! + * Add `resolveSourceMap` option. + * Better support and output for block scoping loops with labels. + +## 3.1.1 + + * **Polish** + * Drop `enumerable: false` clause from class method definitions as `enumerable` already defaults to `false`. + * **Bug Fix** + * Properly transform `XJSIdentifier` nodes referencing `this` into a `ThisExpression`. + +## 3.1.0 + + * **Breaking Change** + * [Make class methods unenumerable](https://esdiscuss.org/topic/classes-and-enumerability#content-61). + +## 3.0.16 + + * **Bug Fix** + * Don't ignore dynamic import specifiers. + * **Internal** + * Upgrade `regenerator-6to5`. + * **Polish** + * Use `Object.assign` in place of extends helper if it exists. + * Require individual `lodash` methods. Thanks [@stefanpenner](https://github.com/stefanpenner)! + +## 3.0.15 + + * **Bug Fix** + * Use `debug/node` instead of `debug` to avoid browserify using the browser version that references `window`. + +## 3.0.14 + + * **New Feature** + * Add `--optional` argument to `6to5-node`. + * **Bug Fix** + * Fix bug in `asyncToGenerator` helper where it was incorrectly calling generator iterator functions. + +## 3.0.13 + + * **Bug Fix** + * Fix modules loose mode using `modules` instead of `es6.modules`. + +## 3.0.12 + + * **Internal** + * Add internal debug messages. + * **Bug Fix** + * Add `noScope` option to `traverse.clearProperties`. + +## 3.0.11 + + * **Bug Fix** + * Fix `ast-types` `RestElement` definition. + * Make `es6.forOf` loose mode more versatile and support destructuring. + +## 3.0.10 + + * **Bug Fix** + * In `types.getIds` make sure the `declaration` inside of `ExportDeclaration` is actually a `Declaration`. + +## 3.0.9 + + * **Bug Fix** + * Make `t.isReferenced` more powerful, actually take into consideration all contexts were identifier nodes aren't actually references. + * Don't camelcase underscores when converting a string to a valid identifier. + +## 3.0.8 + + * **Bug Fix** + * Split up default function declaration exports due to regenerator destroying the parent export declaration. + +## 3.0.7 + + * **Internal** + * Upgrade `core-js` to `0.4.9`. + * **Bug Fix** + * Add id to function express scope tracking. + +## 3.0.6 + + * **Bug Fix** + * Fix block scope variable tracking stopping whenever it hits a new scope. + * Fix block scope variable tracking breaking on all block statement scopes that have a for loop parent. + +## 3.0.5 + + * **Internal** + * More reliable default parameter scope. + +## 3.0.4 + + * **Bug Fix** + * Remove traversal stops from block scope tracking. + +## 3.0.3 + + * **Internal** + * Ignore options starting with `_`. + +## 3.0.2 + + * **Internal** + * Add common plugin options to valid options list. + +## 3.0.1 + + * **Internal** + * Downgrade `kexec` as `1.1.0` throws compilation errors. + +## 3.0.0 + + * **Polish** + * Generated code autoindentation. + * Moved global uid registry to a scope registry resulting in nicer uids. + * `this` is now illegal in the top level scope when using the default `useStrict` transformer. + * New `asyncToGenerator` helper that's much more compact. + * Throw errors on unknown options. + * More reliable default parameter scope. + * Helpers are now compact and have no newlines. + * **Internal** + * Rewritten a lot of the internals to much simpler. + * Removed TDZ from default parameters as it was very wonky and unreliable. + * Upgrade `core-js` to `0.4.6`. + * Upgrade `acorn-6to5`. + * JSX support is now on-par with react-tools/esprima. + * Shorthand destructuring. + * **Bug Fix** + * Generators now work flawlessly with any parameter transformers. + * Optional async function transformers should not name their functions. + * Remove `unlink` event watching in `bin/6to5`. + * Fix regenerator variable declarations being incorrectly hoisted breaking scope. + * Transformers that attempted to simplify expressions that had no consequence now take into account whether it's one of the last statements/expressions in the script. + * **New Feature** + * New `selfContained` transformer. + * New `undeclaredVariableCheck` optional transformer. + * Added `--blacklist` and `--whitelist` options to `6to5-node`. + * **Breaking Change** + * Caching is now always enabled for the require hook. It also now no longer caches require resolutions. + * Bare `super();` only works inside of constructors. + * Removed the optional runtime in favor of the `selfContained` transformer. + * This shorthand has been removed from the playground. + * `6to5/polyfill` can now only be required **once**. + * **CLI** + * `--indent` option has been removed. + * `--include-regenerator` option has been removed. + * `--amd-modules-id` option has been removed, use `--module-ids` instead. + * **Options** + * `amdModuleIds` option has been removed, use `moduleIds` instead. + * `includeRegenerator` has been removed. + * `ignoreRegex` fallback has now been dropped from the require hook. `register(/foo/);`, `register({ ignoreRegex: /foo/ })` -> `register({ ignore: /foo/ })`. + * **Modules** + * Module interop now only collapses to `module.exports` when there's a **single** export that's default. + * Imports and exports are now illegal anywhere except the root level by default. Set `modules` to [loose mode](http://6to5.org/docs/usage/loose) to allow them everywhere. + * **Transformers** + * Optional fast transformer backwards compatibility support has been removed. Use [loose mode](https://6to5.org/docs/usage/loose). + * Removed the `coreAliasing` transformer in favor of `selfContained`. + * Renamed transformers: + * `specNoForInOfAssignment` -> `validation.noForInOfAssignment` + * `specSetters` -> `validation.setters` + * `specBlockScopedFunctions` -> `spec.blockScopedFunctions` + * `malletOperator` -> `playground.malletOperator` + * `methodBinding` -> `playground.methodBinding` + * `memoizationOperator` -> `playground.memoizationOperator` + * `objectGetterMemoization` -> `playground.objectGetterMemoization` + * `modules` -> `es6.modules` + * `propertyNameShorthand` -> `es6.properties.shorthand` + * `arrayComprehension` -> `es7.comprehensions` + * `generatorComprehension` -> `es7.comprehensions` + * `arrowFunctions` -> `es6.arrowFunctions` + * `classes` -> `es6.classes` + * `objectSpread` -> `es7.objectSpread` + * `exponentiationOperator` -> `es7.exponentiationOperator` + * `spread` -> `es6.spread` + * `templateLiterals` -> `es6.templateLiterals` + * `propertyMethodAssignment` -> `es6.properties.shorthand` + * `computedPropertyNames` -> `es6.properties.computed` + * `defaultParameters` -> `es6.parameters.default` + * `restParameters` -> `es6.parameters.rest` + * `destructuring` -> `es6.destructuring` + * `forOf` -> `es6.forOf` + * `unicodeRegex` -> `es6.unicodeRegex` + * `abstractReferences` -> `es7.abstractReferences` + * `constants` -> `es6.constants` + * `letScoping` -> `es6.blockScoping` + * `blockScopingTDZ` -> `es6.blockScopingTDZ` + * `generators` -> `regenerator` + * `protoToAssign` -> `spec.protoToAssign` + * `typeofSymbol` -> `spec.typeofSymbol` + * `coreAliasing` -> `selfContained` + * `undefinedToVoid` -> `spec.undefinedToVoid` + * `undeclaredVariableCheck` -> `validation.undeclaredVariableCheck` + * `specPropertyLiterals` -> `minification.propertyLiterals` + * `specMemberExpressionLiterals` -> `minification.memberExpressionLiterals` + +## 2.13.7 + + * **Bug Fix** + * Don't realias variables that are already declared in optional `coreAliasing` transformer. + +## 2.13.6 + + * **Bug Fix** + * Add `NewExpression` as a valid parent for parentheses insertion for `ConditionalExpression`. + +## 2.13.5 + + * **Bug Fix** + * Allow rest parameters to be destructuring patterns. + * **Internal** + * Upgrade `kexec` to `1.1.0`. + +## 2.13.4 + + * **Bug Fix** + * Fix ordering of destructuring and default params. + * Fix loop body scope. + * Fix `for...of` transformation not retaining it's scope. + * Add destructuring assignment support to scope tracking. + * **Polish** + * More reliable newlines for pretty printing variable declarations. + +## 2.13.3 + + * **Internal** + * Add `coverage` and `vendor` to npmignore. + +## 2.13.2 + + * **Bug Fix** + * Fix `super` inside of nested functions. + * **Internal** + * Move let scoping TDZ into a separate transformer until it's more solid. + * Use `process.stdin.write` instead of `console.log` in `bin` to avoid sprintfification. + +## 2.13.1 + + * **New Feature** + * Temporal dead zone for block binding. + +## 2.13.0 + + * **New Feature** + * Block scoped functions. + * Add `--loose all` option. + * Add playground mallet operator thanks to [@jridgewell](https://github.com/jridgewell). + * **Bug Fix** + * Rewrote large parts of the let scoping transformer. Now passes all known tests. + * **Internal** + * Even more optimisations thanks to the awesome [@gaearon](https://github.com/gaearon). + * Upgrade `acorn-6to5`. + * Fixes exponentation operator thanks to [@charliesome](https://github.com/charliesome). + * Fix flow optional parameters with types. + * Upgrade `chokidar` to `0.12.6`. + * Upgrade `commander` to `2.6.0`. + * Upgrade `core-js` to `0.4.5`. + * Upgrade `estraverse` to `1.9.1`. + * Upgrade `jshint` to `2.5.11`. + * Upgrade `regenerator` to `0.8.9`. + * Upgrade `regexpu` to `1.0.0`. + * Upgrade `source-map` to `0.1.43`. + * Upgrade `source-map-support` to `0.2.9`. + * Upgrade `browserify` to `8.1.1`. + * Upgrade `chai` to `1.10.0`. + * Upgrade `istanbul` to `0.3.5`. + * Upgrade `mocha` to `2.1.0`. + * Upgrade `uglify-js` to `2.4.16`. + +## 2.12.6 + + * **Bug Fix** + * Add missing flow type traversal keys. + +## 2.12.5 + + * **Internal** + * Fix incorrect `for...in` loop still causing `ember-script` issues. + +## 2.12.4 + + * **Polish** + * Rest parameters now allocate the array before populating. + * **Internal** + * `for...in` loops have been changed to optimized `for` loops - better performance and no enumeration of protoype keys. + * Parts of the code generator have now been optimized thanks to [gaearon](https://github.com/gaearon). + +## 2.12.3 + + * **Spec Compliancy** + * Optional `typeof` transformer checks for `undefined` before passing it to the helper. + * Class methods are now named. + +## 2.12.2 + + * **Internal** + * Exclude nodes in function parameters and catch clauses from `isReferenced` check. + +## 2.12.1 + + * **Internal** + * Add `.jsx` to list of allowed extensions. + +## 2.12.0 + + * **Bug Fix** + * Support non-string JSX literals. + * **New Feature** + * Loose mode for some transformers that enables non-spec behavior. + * **Internal** + * Uglify `--mangle sort` has been added to the build script, cutting minified scripts in half. + +## 2.11.4 + + * **Internal** + * Make all dependency versions fixed. + +## 2.11.3 + + * **Bug Fix** + * Allow a string to be passed as the `optional` option. + +## 2.11.2 + + * **Bug Fix** + * Support esprima-style catch clause handlers. + * **Polish** + * Don't print a stacktrace for syntax errors in the CLI. + +## 2.11.1 + + * **Bug Fix** + * Remove stray `console.log` outputting debug code. + * Remove `Dict` from `coreAliasing`. + +## 2.11.0 + + * **Bug Fix** + * Fix unnecessary IIFE in default parameters on method calls. + * Add support for supers inside of closures. + * **New Feature** + * Add `--keep-module-id-extensions`/`keepModuleIdExtensions` option to keep extensions in module ids. + * **Polish** + * Special case single argument spread properties in `super` inside classes. + * Don't use a variable declaration for class declaration IFFE. + * Rename `inherits` helper parameters. + * `coreAliasing` transformer now aliases `Promise`, `Set`, `Map` and more. Thanks [@AluisioASG](https://github.com/AluisioASG). + +## 2.10.1 + + * **Internal** + * Upgrade `core-js` to `0.4.4`. + * **New Feature** + * Added `--include-regenerator` option to CLI and `includeRegenerator` option to API that includes the regenerator runtime if necessary. + +## 2.10.0 + + * **New Feature** + * Add `classesFastSuper` optional transformer that doesn't support parent getters and prototype changing. + * Add `forOfFast` transformer that speeds up `for...of` on arrays but produces more code. + * Add `--react-compat` to `bin/6to5`. + * **Spec Compliancy** + * Disallow setters without a single parameter. + * Add `configurable` and `writable` to defined properties. + * Use define instead of assignment for class methods. + * **Polish** + * Fix bin name in `6to5-node --help`. + * Fix shorthand `--whitelist` name in `bin/6to5`. + * **Internal** + * Hot code optimisation of traversal etc thanks to [gaearon](https://github.com/gaearon). + +## 2.9.4 + + * **Bug Fix** + * Support `UpdateExpression`s as `MemberExpression` objects. + +## 2.9.3 + + * **Bug Fix** + * Remove `exportsWildcard` helper in favor of `defaults`. + +## 2.9.2 + + * **Bug Fix** + * Pass `exports` to `exportWildcard` helper to allow for use inside the optional runtime. + +## 2.9.1 + + * **Bug Fix** + * Fix runtime generator breaking the helper inclusion loop. + +## 2.9.0 + + * **Internal** + * Upgrade `acorn-6to5`. + * Now supports destructuring shorthand properties. + +## 2.8.1 + + * **Bug Fix** + * Fix computed accessors on object literals. + +## 2.8.0 + + * **New Feature** + * Add `commonStrict`, `amdStrict` and `umdStrict` module formatters that remove `module.exports` interop assignment. + * Add `--indent` option to the 6to5 CLI. + +## 2.7.4 + + * **Polish** + * Inherit assignments from their declaration in destructuring. + * Properly align multi-declarator variable declarations. + +## 2.7.3 + + * **Polish** + * Indent and add newlines to `React.createElement` calls in `react` transformer. + * Remove `Object.assign` calls and replace it with an `extends` helper. + +## 2.7.1 + + * **New Feature** + * Expose `version` on browser and node API. + * **Internal** + * Upgrade `core-js` to 0.4.1 + +## 2.7.0 + + * **Spec Compliancy** + * Disallow reassignments of imports. + * **New Feature** + * `reactCompat` option to enable pre-v0.12 react components. + +## 2.6.3 + + * **Bug Fix** + * Fix 2.6.0 regression caused by faulty export default from a source handling. + +## 2.6.2 + + * **Bug Fix** + * Fix rest parameter keys when on functions with params. + +## 2.6.1 + + * **Bug Fix** + * Fix rest parameter arguments key. + +## 2.6.0 + + * **Bug Fix** + * Better handling of number literal property keys. + * Handle `NewExpression` paren insertion edegcases better. + * **Internal** + * Fix incorrect AST node `identifier("this")`. + * Better `toIdentifier` method that handles reserved words. + * Upgrade `acorn-6to5`. + * Fix exponentiation operator precedence. + * Fix line terminators after async contextual keywords. + * Add semicolons as class elements inside of a class body. + * Upgrade to `core-js` 4.0.0. + * Upgrade to `regenerator` 0.8.3. + * Fix non-loop labeled statements. + * **New Feature** + * Basic destructuring defaults + * Add `.es` to list of supported extensions. + * Add optional `typeofSymbol` transformer. + * Use a `for` loop for rest parameters instead of `Array.prototype.slice`. + * **Polish** + * Move `"use strict";` to inside module bodies instead of at the top of the file. + * Better handling of dynamic imports. + * **Spec Compliancy** + * Class inheritance now has a `function` or `null` type check. + * Add `interopRequireWildcard` around wildcard imports and exports to handle non-object exports. + +## 2.5.0 + + * Remove `noDuplicateProperties` transformer. + * Better generated UIDs based on nodes. + * Default parameters now use `arguments[i]`, conditionals and variable declarations instead of using long-form if statements. + +## 2.4.10 + + * Upgrade `acorn-6to5`. + +## 2.4.9 + + * Upgrade `acorn-6to5`. + * Add optional `protoToAssign` transformer. + * Fix missing properties from computed property keys. + * Make ES7 comprehensions `let` variables. + +## 2.4.8 + + * Make `require("6to5/register")` work with browserify - [#370](https://github.com/6to5/6to5/pull/370). Thanks [@hughsk](https://github.com/hughsk)! + +## 2.4.7 + + * Upgrade `acorn-6to5`. + +## 2.4.6 + + * Move `coreAliasing` and `undefinedToVoid` transformers down to catch `moduleFormatter` transforms. + +## 2.4.5 + + * Avoid printing comments if they've already been output. + +## 2.4.4 + + * Add `module` type to browser build ` - +