- Fix source maps to include directory names as well as file names.
- Fix re-exporting module objects created by namespace imports (e.g.
import * as foo from 'foo'; export { foo }
).
- Fix bundle format support for named exports of class declarations.
- Add support for exporting ES6 class declarations and expressions.
- Clarify README to indicate that ES6 module syntax is now stable.
- Add
Container#transform
to get transformed code without writing to the file system.
- Add support for namespace imports (e.g.
import * as foo from 'foo'
).
- Fixed internal helper
mkdirpSync
that could causeContainer#write
to fail on some machines.
- Fixed bundle formatter renaming of function or class declarations in export default. Previously they were not properly renamed to prevent collision with other modules.
- Fixed bundle formatter rewriting identifiers inside named function expressions if the identifier shared a name with a module-scope binding. For example, in this code sample the
a
inreturn a
would be rewritten asmod$$a
when it should have remaineda
(the fix was in ast-types).
// mod.js
var a;
var fn = function f() { var a; return a; };
- Simplify the CommonJS formatter output to use ES3.
- Use a common base class for all built-in formatters.
- Various internal cleanups.
- Prevent all instances of export reassignment, not just those at the top level.
- Reference a custom fork of esprima.
- Allow resolvers to set the
Module#src
property to prevent direct file system access.
- Add support for source maps.
- Allow formatters to handle export reassignment.
- Update recast to v0.6.6.
- Fix the file list to be included in npm.
- Completely re-written using recast.
- Removed YUI support, to be re-added as a plugin.
- Removed AMD support, to be re-added as a plugin.
- Added "bundle" formatter for concatenating all modules together.
- Assert on various invalid module syntax usage.
- Remove trailing whitespace after AMD define (#93)
- (breaking) Default to anonymous modules for AMD output (use
--infer-name
flag for old behavior). Replaces--anonymous
flag.
- Rebuilt & republished to fix regression on quoting
static
property (sorry!)
- Fixed incorrect module path strings in CJS output (#82)
- CJS: Build a module object when using
module foo from "foo"
for better forward-compatibility. - Added YUI transpiler, lovingly created & maintained by the YUI team
- Fixed
'static'
keyword not being quoted in Esprima, causing issues in some JS runtimes
- Fix syntax error in CommonJS output with default imports and
compatFix
option
- Fixes path resolution on the command line (thanks rpflorence!)
- Use a working commit for Esprima
This is a major, breaking version. See TRANSITION.md for information on upgrading your code.
- Rewrote the transpiler using Esprima
- Support default exports and named exports in the same module
- Default export now exports to
moduleObject.default
, see TRANSITION.md for details
- Default export now exports to
- Fixed multiline export parsing
- Added support for
module
keyword (i.e.module foo from "foo"
) - Added support for
import "foo";
form - fixed the
--anonymous
flag with the CLI for recursive transpiling (#20) - Removed relative pathing for AMD resolution & direct CoffeeScript transpilation (see TRANSITION.md)
- added support for default export (
export default jQuery
) - added support for default import (
import $ from "jquery"
) - added support for re-exporting properties (
export { ajax } from "jquery"
) - removed support for
export =
syntax (useexport default
) - removed support for
import "jquery" as $
(useimport $ from "jquery"
)
- fixed: import/export statements within block comments are now ignored
- added support for
export var foo = …
- added support for
export function foo() { … }
- use Grunt for building the project
- fixed: use local variables for imports
- fixed: add missing
--global
option to CLI - documentation and clarifications of examples
- initial release