Changelog
Tags:
- [New Feature]
- [Bug Fix]
- [Spec Compliancy]
- [Breaking Change]
- [Documentation]
- [Internal]
- [Polish]
Note: Gaps between patch versions are faulty/broken releases.
3.6.5
- Internal
- 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!
- 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
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!
- Internal
- New Feature
- Optional
es6.blockScopingTDZ
is now completely functional and handles all edgecases.
super
in object literals.
- Tail call optimisation. Thanks @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
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!
- 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!
- 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
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!
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 to allow them everywhere.
- Transformers
- Optional fast transformer backwards compatibility support has been removed. Use loose mode.
- 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
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.
- Bug Fix
- Rewrote large parts of the let scoping transformer. Now passes all known tests.
- Internal
- Even more optimisations thanks to the awesome @gaearon.
- Upgrade
acorn-6to5
.
- Fixes exponentation operator thanks to @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.
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.
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.
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
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
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. Thanks @hughsk!
2.4.7
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 <script>
handler.
- Fix some
MemberExpression
modifying incorrectly setting property
to a MemberExpression
.
2.4.3
- Upgrade
acorn-6to5
.
- Add support for
FunctionDeclaration
s in bluebirdCoroutines
and asyncToGenerators
transformers.
2.4.2
- Upgrade
acorn-6to5
.
- Better uids generated for various transformers based on parent node.
- Alias flat references in
coreAliasing
transformer.
2.4.1
- Better whitespace handling of parenthesized expressions due to trailing comments.
- Fix
yield
inside of comprehensions.
2.4.0
- Use a closure always for classes with a super.
- Always use native loops for array comprehensions.
- Allow
yield
inside of comprehensions.
- Add optional
bluebirdCoroutine
transformer.
- Add optional
asyncToGenerator
transformer.
- Move
useStrict
transformer to before _moduleFormatter
causing "use strict";
to always be placed the very top.
2.3.2
- Add parens on expressions with trailing comments.
2.3.1
- Add
undefinedToVoid
optional transformer.
- Use
Object.defineProperty
for computed properties.
2.3.0
- Upgrade
acorn-6to5
.
- Support circular references and hoist variable declarations in
system
module formatter.
- Add optional transformers, including a new
coreAliasing
transformer that aliases native ES6 static properties to their core-js
equivalent.
2.2.0
- Make
system
module formatter modules anonymous by default.
- Fix duplicate comments being output, breaking code.
2.1.0
- Add
cache
option to register hook.
- Update
core-js
.
- Fix starting newline not being added on case statements.
- Fix destructuring
VariableDeclaration
s not inside BlockStatement
s and Program
.
2.0.4
- Avoid being greedy when destructuring array iterables.
2.0.3
- Hoist function declarations in system module formatter for circular references.
- Hoist default function declarations in umd and amd module formatters for circular references.
2.0.2
- Inherit comments in
for-of
transformer.
- Remove
interopRequire
from system
module formatter.
2.0.1
- Remap
UpdateExpression
module export binding.
- Fix automatic closure on
PrivateDeclaration
in classes.
2.0.0
- Make string literal generation only escapes unicode that it has to.
- Internal code generation format options have been exposed.
- Change playground method binding operator from
:
to #
removing ambiguous syntax with terns.
- Fix rest parameters in async and generator functions.
- Export/import declarations replace by the modules transformer now inherit comments.
- Added playground flag to
6to5-node
.
6to5-node
now behaves the same as node
.
6to5-node
now uses kexec
to become the forked process to correctly propagate signals on unix.
- Constants are now block scoped.
- Exposed ast transformer.
- Merged
commonInterop
and common
module formatters.
- Fix generator comprehensions not inheriting
arguments
, this
etc.
- Object and class mutator shorthand are now enumerable.
- Remove regenerator
Generator has already finished
error which isn't spec-compliant.
- Expose internal
spec
transformers that nicen up code output.
- Add export variable declaration default initializers.
- Propagate export declaration reassignments.
- Add initializer default to block scoped variable declarations within a loop.
- Flow type support.
- Make async/await contextual keywords.
- Allow
yield
ing of non-objects.
- Class declarations now lack an IIFE.
- Support falsy and
null
super classes.
- Add support for experimental abstract references
private
declarations.
- Leave out IIFE for class declarations.
- Switched to core-js from es6-symbol and es6-shim for built-in polyfill.
amd
and umd
module formatters now behave the same as common
with interopRequire
.
- Micro-optimizations to boost performance by 200%.
- Rename module formatter methods
import
to importDeclaration
and export
to exportDeclaration
.
- Support multiple declarators in export variable declarations.
- Freeze tagged template literal object.
- Remove inlined
regenerator
fork.
- Remove
ParenthesizedExpression
.
- Rename
object-spread
helper to object-without-properties
.
- Rename
class-props
helper to prototype-properties
.
- Rename
extends
helper to inherits
.
- Completely rewritten
system
module formatter.
1.15.0
- Don't alias
GeneratorFunction
and check the name which causes minifiers to remove the name and throw an error later on when we check if it's set.
1.14.18
- Fix files only containg comments not being output.
- Fix duplicate comments on property key shorthands.
1.14.17
- Add default initializer to let variables within loop bodies.
- Fix excessive
break
replacement inside of switches in let scoping.
1.14.16
- Add object getter memos and this shorthand to playground.
- Fix while loops in let scoping.
- Upgrade
acorn-6to5
.
1.14.14
- Fix template literals escaping.
1.14.13
- Fix let scoping of
while
loops.
- Make class methods enumerable.
1.14.12
- Fix duplicate dynamic expressions in call spread.
1.14.10
- Fix let scoping unneccesary override.
1.14.6
- Avoid ensuring a block on non-array node replacements.
1.14.5
- Upgrade
acorn-6to5
.
- Fix JSON recursion error for unknown code generator node types.
- Ensure that a statement is a block on block/statement types when replacing them with multiple nodes.
1.14.4
- Merge pretzel maps and method binding.
1.14.3
- Add playground pretzel maps.
1.14.2
- Fix
commonInterop
default export handling.
- Fix keyworded property key identifiers being turned into computed property key literals.
1.14.1
- Inherit comments from
ClassDeclaration
.
1.14.0
1.13.13
- Fix
--debug
in bin/6to5-node
. Thanks @timoxley.
1.13.12
- Ignore
XJSEmptyExpression
s in react
transformer output.
1.13.11
- Fix
util.regexify
on falsy values.
- Fix
_aliasFunction
with rest parameters.
- Export as
module.exports
instead of exports.default
if there are no other ExportDeclaration
s in commonInterop
module formatter.
- Add
system
module formatter. Thanks @douglasduteil.
1.13.10
- Add support for
AssignmentExpression
destructuring outside of ExpressionStatement
.
1.13.9
- Fix
VirtualPropertyExpression
visitor keys.
1.13.8
- Only use a single reference in abstract references.
1.13.7
- Upgrade
acorn-6to5
.
- Add experimental exponentiation operator support.
1.13.6
- Fix experimental object spread/rest helper.
1.13.5
- Upgrade
acorn-6to5
.
- Add experimental support for object spread/rest.
- Change
arguments
to array to an additional helper method.
1.13.4
- Fix single spread element returning itself.
1.13.3
- Upgrade
acorn-6to5
.
- Add experimental support for abstract references.
1.13.2
- Optimize
Array.from
usage by adding a helper method.
- Upgrade
acorn-6to5
.
1.13.1
- Fix constructor spread optimisation. Thanks @zloirock.
1.13.0
- Put experimental ES7 features behind a flag
--experimental
and experimental
option.
- Constructor spread performance increase. Thanks @RReverser.
- Use
self
instead of window
in the optional 6to5 runtime. Thanks @RReverser.
1.12.26
- Support computed property destructuring.
1.12.25
- Update
acorn-6to5
, ast-types
, es6-shim
, chokidar
, estraverse
and private
.
1.12.24
- Collect references that haven't been declared in scope.
1.12.23
- Fix generator function export hoisting.
1.12.22
- Update
fs-readdir-recursive
and chokidar
.
- Support array destructuring on iterables.
- Make amd module id optional. Thanks @webpro.
1.12.21
- Fix unneccesary let scoping replacement.
- Add
commonInterop
module formatter. Thanks @Naddiseo.
- Fix
return
outside of function body bug. Thanks @brentburg.
- Add more flexible option types.
1.12.20
- Append
sourceMappingURL
when using bin/6to5
and output sourcemaps.
1.12.19
- Add
comments
option and --remove-comments
flag. Thanks @webpro.
- Embed
regenerator
.
1.12.18
- Use
global
reference instead of window
.
1.12.17
- Add
moduleName
, sourceRoot
and filenameRelative
options. Thanks @darvelo.
- Traversal optimisations.
1.12.16
- Fix comments not being retained from
MethodDefinition
in classes.
- Add temporal dead zone in default parameters.
1.12.15
1.12.14
- Fix duplicate let scoping in functions.
- Make JSX whitespace more React-compliant.
- Add
_memberExpressionKeywords
transformer that turns keyword identifiers to computed literals.
- Upgrade
regenerator-6to5
.
1.12.13
- Support duplicate constants within different block scopes.
- Fix for-head duplication testing and replacement.
- Support
raw
property on tagged template literals.
1.12.12
- Make scope tracker more reliable to handle all edgecases.
1.12.11
- Block scope classes.
- Fix generation of integer
Literal
s in MemberExpression
.
1.12.10
- Fix let scoping var hoisting.
1.12.9
- Escape unicode characters when generating string
Literal
s.
- Fix semicolons being output for statements in
ExportDeclaration
.
- Fix
WithStatement
missing parenthesis.
1.12.8
- Temporarily forbid
AssignmentExpression
destructuring outside of ExpressionStatement
.
1.12.7
- Update to latest
acorn-6to5
.
1.12.6
- Update to latest
acorn-6to5
.
1.12.5
- Fix excessive whitespace trimming resulting in innaccurate sourcemap line.
1.12.4
- Add
doc
folder for documentation.
1.12.3
- Support generator comprehensions.
- Use
Array.from
instead of Array.prototype.slice
in spread transformer.
- Support spread in
NewExpression
s.
1.12.2
- Upgrade
matcha
to 0.6.0
and browserify
to 6.3.2
.
- Add own
trimRight
helper instead of relying on the string instance method.
- Support JSX spreads that aren't the first.
1.12.1
- Fix
this
and arguments
mapping in the _aliasFunctions
transformer.
1.12.0
- Combine
jsx
and react
transformers to react
.
- Update
react
syntax output to React v0.12.
1.11.15
- Fix JSX literal whitespace generation.
1.11.14
- Avoid using a switch for let-scoping continue and break statements and use an if statement instead.
- Remove excess whitespace and newlines from JSX literals.
1.11.13
- Update regenerator-6to5
- Add support for most escodegen formatting options