- 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 prepends comments to auxilary helpers.
- 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.
- New Feature
- Add support for flow type casts and module types.
- Internal
- Upgrade
acorn-6to5
. - Use
default
property on6to5-runtime
.
- Polish
- Use better iterator detection in
slicedToArray
helper and add support for it to theselfContained
transformer.
- 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
.
- 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
.
- Enable
es6.tailCall
transformer with the first implementation that only works with self referencing calls until we can implement nested tail calls elegantly.
- Disable
es6.tailCall
temporairly after reports of it breaking.
- Polish
- Allow tail calls to work across files without the runtime.
- Internal
- Upgrade
acorn-6to5
.
- 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
- More performance improvements.
- Parsing is now ~30% faster thanks to marijnh/acorn@7264bc0178e7e6af7cfe02e9e0c6b26ee0e6007f.
- New Feature
- Optional
es6.blockScopingTDZ
is now completely functional and handles all edgecases. super
in object literals.- Tail call optimisation. Thanks @RReverser!
- Bug Fix
- Fix conflicting
--module-ids
shorthand arg in$ 6to5
. - Add require hook options to cache key.
- Fix strict module formatter.
- 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 ifsourceMap
was set to"inline"
.
- Bug Fix
- Don't override
MemberExpression
s withcore-js
inselfContained
if a local binding exists.
- Bug Fix
- Fix the require cache.
- 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 thees7.objectSpread
transformer is. - Join sibling string literals when creating JSX.
- Bug Fix
- Fix super inside of functions.
- Fix super constructor inheritance.
- Bug Fix
- Add
--use-strict
to valid node flags in6to5-node
. - Fix booleans not being properly stripped from the arguments in
6to5-node
. - Force
.js
extension when writing files to directories with6to5
.
- 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
.
- Polish
- Add istanbul
require
interop. - Bug Fix
- Fix incorrect source map column tracking in specific scenarios.
- Polish
- Remap top level
this
toundefined
instead of throwing an error. - Bug Fix
- Run
selfContained
transformer over the regenerator runtime when building6to5-runtime
. - Fix
t.isReferenced
not properly allowingvalue
nodes.
- Bug Fix
- Block hoist assignment pattern destructuring.
- Bug Fix
- Do all transforms before the regenerator transform is ran.
- New Feature
- Added back the 2.x optional runtime.
- Bug Fix
- Fix block scoping transformer rewriting breaks and continues to inner labels.
- 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.
- Polish
- Drop
enumerable: false
clause from class method definitions asenumerable
already defaults tofalse
. - Bug Fix
- Properly transform
XJSIdentifier
nodes referencingthis
into aThisExpression
.
- Breaking Change
- Make class methods unenumerable.
- 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!
- Bug Fix
- Use
debug/node
instead ofdebug
to avoid browserify using the browser version that referenceswindow
.
- New Feature
- Add
--optional
argument to6to5-node
. - Bug Fix
- Fix bug in
asyncToGenerator
helper where it was incorrectly calling generator iterator functions.
- Bug Fix
- Fix modules loose mode using
modules
instead ofes6.modules
.
- Internal
- Add internal debug messages.
- Bug Fix
- Add
noScope
option totraverse.clearProperties
.
- Bug Fix
- Fix
ast-types
RestElement
definition. - Make
es6.forOf
loose mode more versatile and support destructuring.
- Bug Fix
- In
types.getIds
make sure thedeclaration
inside ofExportDeclaration
is actually aDeclaration
.
- 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.
- Bug Fix
- Split up default function declaration exports due to regenerator destroying the parent export declaration.
- Internal
- Upgrade
core-js
to0.4.9
. - Bug Fix
- Add id to function express scope tracking.
- 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.
- Internal
- More reliable default parameter scope.
- Bug Fix
- Remove traversal stops from block scope tracking.
- Internal
- Ignore options starting with
_
.
- Internal
- Add common plugin options to valid options list.
- Internal
- Downgrade
kexec
as1.1.0
throws compilation errors.
- 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 defaultuseStrict
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
to0.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 inbin/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 to6to5-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, usemoduleIds
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.
- Module interop now only collapses to
- Transformers
- Optional fast transformer backwards compatibility support has been removed. Use loose mode.
- Removed the
coreAliasing
transformer in favor ofselfContained
. - 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
- Bug Fix
- Don't realias variables that are already declared in optional
coreAliasing
transformer.
- Bug Fix
- Add
NewExpression
as a valid parent for parentheses insertion forConditionalExpression
.
- Bug Fix
- Allow rest parameters to be destructuring patterns.
- Internal
- Upgrade
kexec
to1.1.0
.
- 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.
- Internal
- Add
coverage
andvendor
to npmignore.
- 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 ofconsole.log
inbin
to avoid sprintfification.
- New Feature
- Temporal dead zone for block binding.
- 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
to0.12.6
. - Upgrade
commander
to2.6.0
. - Upgrade
core-js
to0.4.5
. - Upgrade
estraverse
to1.9.1
. - Upgrade
jshint
to2.5.11
. - Upgrade
regenerator
to0.8.9
. - Upgrade
regexpu
to1.0.0
. - Upgrade
source-map
to0.1.43
. - Upgrade
source-map-support
to0.2.9
. - Upgrade
browserify
to8.1.1
. - Upgrade
chai
to1.10.0
. - Upgrade
istanbul
to0.3.5
. - Upgrade
mocha
to2.1.0
. - Upgrade
uglify-js
to2.4.16
.
- Bug Fix
- Add missing flow type traversal keys.
- Internal
- Fix incorrect
for...in
loop still causingember-script
issues.
- Polish
- Rest parameters now allocate the array before populating.
- Internal
for...in
loops have been changed to optimizedfor
loops - better performance and no enumeration of protoype keys.- Parts of the code generator have now been optimized thanks to gaearon.
- Spec Compliancy
- Optional
typeof
transformer checks forundefined
before passing it to the helper. - Class methods are now named.
- Internal
- Exclude nodes in function parameters and catch clauses from
isReferenced
check.
- Internal
- Add
.jsx
to list of allowed extensions.
- 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.
- Internal
- Make all dependency versions fixed.
- Bug Fix
- Allow a string to be passed as the
optional
option.
- Bug Fix
- Support esprima-style catch clause handlers.
- Polish
- Don't print a stacktrace for syntax errors in the CLI.
- Bug Fix
- Remove stray
console.log
outputting debug code. - Remove
Dict
fromcoreAliasing
.
- 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 aliasesPromise
,Set
,Map
and more. Thanks @AluisioASG.
- Internal
- Upgrade
core-js
to0.4.4
. - New Feature
- Added
--include-regenerator
option to CLI andincludeRegenerator
option to API that includes the regenerator runtime if necessary.
- New Feature
- Add
classesFastSuper
optional transformer that doesn't support parent getters and prototype changing. - Add
forOfFast
transformer that speeds upfor...of
on arrays but produces more code. - Add
--react-compat
tobin/6to5
. - Spec Compliancy
- Disallow setters without a single parameter.
- Add
configurable
andwritable
to defined properties. - Use define instead of assignment for class methods.
- Polish
- Fix bin name in
6to5-node --help
. - Fix shorthand
--whitelist
name inbin/6to5
. - Internal
- Hot code optimisation of traversal etc thanks to gaearon.
- Bug Fix
- Support
UpdateExpression
s asMemberExpression
objects.
- Bug Fix
- Remove
exportsWildcard
helper in favor ofdefaults
.
- Bug Fix
- Pass
exports
toexportWildcard
helper to allow for use inside the optional runtime.
- Bug Fix
- Fix runtime generator breaking the helper inclusion loop.
- Internal
- Upgrade
acorn-6to5
.- Now supports destructuring shorthand properties.
- Bug Fix
- Fix computed accessors on object literals.
- New Feature
- Add
commonStrict
,amdStrict
andumdStrict
module formatters that removemodule.exports
interop assignment. - Add
--indent
option to the 6to5 CLI.
- Polish
- Inherit assignments from their declaration in destructuring.
- Properly align multi-declarator variable declarations.
- Polish
- Indent and add newlines to
React.createElement
calls inreact
transformer. - Remove
Object.assign
calls and replace it with anextends
helper.
- New Feature
- Expose
version
on browser and node API. - Internal
- Upgrade
core-js
to 0.4.1
- Spec Compliancy
- Disallow reassignments of imports.
- New Feature
reactCompat
option to enable pre-v0.12 react components.
- Bug Fix
- Fix 2.6.0 regression caused by faulty export default from a source handling.
- Bug Fix
- Fix rest parameter keys when on functions with params.
- Bug Fix
- Fix rest parameter arguments key.
- 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 ofArray.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
ornull
type check. - Add
interopRequireWildcard
around wildcard imports and exports to handle non-object exports.
- 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.
- Upgrade
acorn-6to5
.
- Upgrade
acorn-6to5
. - Add optional
protoToAssign
transformer. - Fix missing properties from computed property keys.
- Make ES7 comprehensions
let
variables.
- Upgrade
acorn-6to5
.
- Move
coreAliasing
andundefinedToVoid
transformers down to catchmoduleFormatter
transforms.
- Avoid printing comments if they've already been output.
- Add
module
type to browser build<script>
handler. - Fix some
MemberExpression
modifying incorrectly settingproperty
to aMemberExpression
.
- Upgrade
acorn-6to5
. - Add support for
FunctionDeclaration
s inbluebirdCoroutines
andasyncToGenerators
transformers.
- Upgrade
acorn-6to5
. - Better uids generated for various transformers based on parent node.
- Alias flat references in
coreAliasing
transformer.
- Better whitespace handling of parenthesized expressions due to trailing comments.
- Fix
yield
inside of comprehensions.
- 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.
- Add parens on expressions with trailing comments.
- Add
undefinedToVoid
optional transformer. - Use
Object.defineProperty
for computed properties.
- 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 theircore-js
equivalent.
- Make
system
module formatter modules anonymous by default. - Fix duplicate comments being output, breaking code.
- Add
cache
option to register hook. - Update
core-js
. - Fix starting newline not being added on case statements.
- Fix destructuring
VariableDeclaration
s not insideBlockStatement
s andProgram
.
- Avoid being greedy when destructuring array iterables.
- Hoist function declarations in system module formatter for circular references.
- Hoist default function declarations in umd and amd module formatters for circular references.
- Inherit comments in
for-of
transformer. - Remove
interopRequire
fromsystem
module formatter.
- Remap
UpdateExpression
module export binding. - Fix automatic closure on
PrivateDeclaration
in classes.
- 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 asnode
.6to5-node
now useskexec
to become the forked process to correctly propagate signals on unix.- Constants are now block scoped.
- Exposed ast transformer.
- Merged
commonInterop
andcommon
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
andumd
module formatters now behave the same ascommon
withinteropRequire
.- Micro-optimizations to boost performance by 200%.
- Rename module formatter methods
import
toimportDeclaration
andexport
toexportDeclaration
. - Support multiple declarators in export variable declarations.
- Freeze tagged template literal object.
- Remove inlined
regenerator
fork. - Remove
ParenthesizedExpression
. - Rename
object-spread
helper toobject-without-properties
. - Rename
class-props
helper toprototype-properties
. - Rename
extends
helper toinherits
. - Completely rewritten
system
module formatter.
- 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.
- Fix files only containg comments not being output.
- Fix duplicate comments on property key shorthands.
- Add default initializer to let variables within loop bodies.
- Fix excessive
break
replacement inside of switches in let scoping.
- Add object getter memos and this shorthand to playground.
- Fix while loops in let scoping.
- Upgrade
acorn-6to5
.
- Fix template literals escaping.
- Fix let scoping of
while
loops. - Make class methods enumerable.
- Fix duplicate dynamic expressions in call spread.
- Fix let scoping unneccesary override.
- Avoid ensuring a block on non-array node replacements.
- 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.
- Merge pretzel maps and method binding.
- Add playground pretzel maps.
- Fix
commonInterop
default export handling. - Fix keyworded property key identifiers being turned into computed property key literals.
- Inherit comments from
ClassDeclaration
.
- Add playground.
- Fix
--debug
inbin/6to5-node
. Thanks @timoxley.
- Ignore
XJSEmptyExpression
s inreact
transformer output.
- Fix
util.regexify
on falsy values. - Fix
_aliasFunction
with rest parameters. - Export as
module.exports
instead ofexports.default
if there are no otherExportDeclaration
s incommonInterop
module formatter. - Add
system
module formatter. Thanks @douglasduteil.
- Add support for
AssignmentExpression
destructuring outside ofExpressionStatement
.
- Fix
VirtualPropertyExpression
visitor keys.
- Only use a single reference in abstract references.
- Upgrade
acorn-6to5
. - Add experimental exponentiation operator support.
- Fix experimental object spread/rest helper.
- Upgrade
acorn-6to5
. - Add experimental support for object spread/rest.
- Change
arguments
to array to an additional helper method.
- Fix single spread element returning itself.
- Upgrade
acorn-6to5
. - Add experimental support for abstract references.
- Optimize
Array.from
usage by adding a helper method. - Upgrade
acorn-6to5
.
- Fix constructor spread optimisation. Thanks @zloirock.
- Put experimental ES7 features behind a flag
--experimental
andexperimental
option. - Constructor spread performance increase. Thanks @RReverser.
- Use
self
instead ofwindow
in the optional 6to5 runtime. Thanks @RReverser.
- Support computed property destructuring.
- Update
acorn-6to5
,ast-types
,es6-shim
,chokidar
,estraverse
andprivate
.
- Collect references that haven't been declared in scope.
- Fix generator function export hoisting.
- Update
fs-readdir-recursive
andchokidar
. - Support array destructuring on iterables.
- Make amd module id optional. Thanks @webpro.
- 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.
- Append
sourceMappingURL
when usingbin/6to5
and output sourcemaps.
- Add
comments
option and--remove-comments
flag. Thanks @webpro. - Embed
regenerator
.
- Use
global
reference instead ofwindow
.
- Add
moduleName
,sourceRoot
andfilenameRelative
options. Thanks @darvelo. - Traversal optimisations.
- Fix comments not being retained from
MethodDefinition
in classes. - Add temporal dead zone in default parameters.
- Update
acorn-6to5
.
- 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
.
- Support duplicate constants within different block scopes.
- Fix for-head duplication testing and replacement.
- Support
raw
property on tagged template literals.
- Make scope tracker more reliable to handle all edgecases.
- Block scope classes.
- Fix generation of integer
Literal
s inMemberExpression
.
- Fix let scoping var hoisting.
- Escape unicode characters when generating string
Literal
s. - Fix semicolons being output for statements in
ExportDeclaration
. - Fix
WithStatement
missing parenthesis.
- Temporarily forbid
AssignmentExpression
destructuring outside ofExpressionStatement
.
- Update to latest
acorn-6to5
.
- Update to latest
acorn-6to5
.
- Fix excessive whitespace trimming resulting in innaccurate sourcemap line.
- Add
doc
folder for documentation.
- Support generator comprehensions.
- Use
Array.from
instead ofArray.prototype.slice
in spread transformer. - Support spread in
NewExpression
s.
- Upgrade
matcha
to0.6.0
andbrowserify
to6.3.2
. - Add own
trimRight
helper instead of relying on the string instance method. - Support JSX spreads that aren't the first.
- Fix
this
andarguments
mapping in the_aliasFunctions
transformer.
- Combine
jsx
andreact
transformers toreact
. - Update
react
syntax output to React v0.12.
- Fix JSX literal whitespace generation.
- 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.
- Update regenerator-6to5
- Add support for most escodegen formatting options