Merge branch 'master' into code-generator

Conflicts:
	lib/6to5/register.js
This commit is contained in:
Sebastian McKenzie
2014-11-03 12:22:07 +11:00
29 changed files with 57 additions and 62 deletions

View File

@@ -102,6 +102,10 @@ map embedded in a comment at the bottom.
Compile the entire `src` directory and output it to the `lib` directory.
$ 6to5 src --out-dir lib
Compile the entire `src` directory and output it to the one concatenated file.
$ 6to5 src --out-file script-compiled.js
Pipe a file in via stdin and output it to `script-compiled.js`

View File

@@ -100,8 +100,8 @@ module.exports = function (commander, filenames) {
}
});
_.each(_filenames, function (filename, i) {
results.push(util.compile(filename, { _noStrict: +i !== 0 }));
_.each(_filenames, function (filename) {
results.push(util.compile(filename));
});
output();

View File

@@ -90,13 +90,9 @@ module.exports = function (opts) {
opts = opts || {};
if (_.isRegExp(opts)) opts = { ignoreRegex: opts };
if (opts.ignoreRegex != null) {
ignoreRegex = opts.ignoreRegex;
}
if (opts.blacklist) {
blacklist = opts.blacklist;
}
if (opts.ignoreRegex != null) ignoreRegex = opts.ignoreRegex;
if (opts.extensions) hookExtensions(opts.extensions);
if (opts.blacklist) blacklist = opts.blacklist;
};

View File

@@ -105,6 +105,7 @@ transform.transformers = {
forOf: require("./transformers/for-of"),
unicodeRegex: require("./transformers/unicode-regex"),
generators: require("./transformers/generators"),
numericLiterals: require("./transformers/numeric-literals"),
react: require("./transformers/react"),
jsx: require("./transformers/jsx"),
@@ -112,9 +113,10 @@ transform.transformers = {
_aliasFunctions: require("./transformers/_alias-functions"),
_blockHoist: require("./transformers/_block-hoist"),
_declarations: require("./transformers/_declarations"),
_moduleFormatter: require("./transformers/_module-formatter"),
useStrict: require("./transformers/use-strict")
useStrict: require("./transformers/use-strict"),
_moduleFormatter: require("./transformers/_module-formatter")
};
transform.moduleFormatters = {

View File

@@ -0,0 +1,6 @@
var _ = require("lodash");
exports.Literal = function (node) {
// TODO: remove this when the new code generator is released
if (_.isNumber(node.value)) delete node.raw;
};

View File

@@ -1,15 +1,12 @@
var b = require("../builders");
module.exports = function (ast, file) {
module.exports = function (ast) {
var body = ast.program.body;
var first = body[0];
var noStrict = !first || first.type !== "ExpressionStatement" || first.expression.type !== "Literal" || first.expression.value !== "use strict";
if (noStrict) {
if (file.opts._noStrict) return;
body.unshift(b.expressionStatement(b.literal("use strict")));
} else {
if (file.opts._noStrict) body.shift();
}
};

View File

@@ -1,7 +1,7 @@
{
"name": "6to5",
"description": "Turn ES6 code into readable vanilla ES5 with source maps",
"version": "1.10.9",
"version": "1.10.10",
"author": "Sebastian McKenzie <sebmck@gmail.com>",
"homepage": "https://github.com/sebmck/6to5",
"repository": {

View File

@@ -1,6 +1,6 @@
"use strict";
define(["exports"], function (exports) {
"use strict";
exports.default = 42;
exports.default = {};
exports.default = [];

View File

@@ -1,6 +1,6 @@
"use strict";
define(["exports", "foo"], function (exports, _foo) {
"use strict";
(function(obj) {
for (var i in obj) {
exports[i] = obj[i];

View File

@@ -1,6 +1,6 @@
"use strict";
define(["exports"], function (exports) {
"use strict";
exports.foo = foo;
exports.foo = foo;
exports.bar = bar;

View File

@@ -1,6 +1,6 @@
"use strict";
define(["exports"], function (exports) {
"use strict";
exports.foo7 = foo7;
var foo = 1;
exports.foo = foo;

View File

@@ -1,6 +1,6 @@
"use strict";
define(["exports", "./evens"], function (exports, _evens) {
"use strict";
exports.nextOdd = nextOdd;
var isEven = _evens.isEven;

View File

@@ -1,6 +1,5 @@
"use strict";
define(["exports", "foo"], function (exports, _foo) {
"use strict";
var foo = _foo.default;
var foo = _foo.default;
});

View File

@@ -1,5 +1,4 @@
"use strict";
define(["exports", "foo"], function (exports, _foo) {
"use strict";
var foo = _foo;
});

View File

@@ -1,6 +1,6 @@
"use strict";
define(["exports", "foo"], function (exports, _foo) {
"use strict";
var foo = _foo.default;
var xyz = _foo.baz;
});

View File

@@ -1,6 +1,6 @@
"use strict";
define(["exports", "foo"], function (exports, _foo) {
"use strict";
var bar = _foo.bar;
var bar = _foo.bar;
var baz = _foo.baz;

View File

@@ -1,5 +1,3 @@
"use strict";
define(["exports", "foo", "foo-bar", "./directory/foo-bar"], function (exports, _foo, _fooBar, _directoryFooBar) {
"use strict";
});

View File

@@ -1,6 +1,6 @@
"use strict";
define(["exports", "foo", "foo-bar", "./directory/foo-bar"], function (exports, _foo, _fooBar, _directoryFooBar) {
"use strict";
var foo = _foo.default;
var foo = _foo;
var bar = _foo.bar;

View File

@@ -1,5 +1,3 @@
"use strict";
(function (factory) {
if (typeof define === "function" && define.amd) {
define(["exports"], factory);
@@ -7,6 +5,8 @@
factory(exports);
}
})(function (exports) {
"use strict";
exports.default = 42;
exports.default = {};
exports.default = [];

View File

@@ -1,5 +1,3 @@
"use strict";
(function (factory) {
if (typeof define === "function" && define.amd) {
define(["exports", "foo"], factory);
@@ -7,6 +5,8 @@
factory(exports, require("foo"));
}
})(function (exports, _foo) {
"use strict";
(function(obj) {
for (var i in obj) {
exports[i] = obj[i];

View File

@@ -1,5 +1,3 @@
"use strict";
(function (factory) {
if (typeof define === "function" && define.amd) {
define(["exports"], factory);
@@ -7,6 +5,8 @@
factory(exports);
}
})(function (exports) {
"use strict";
exports.foo = foo;
exports.foo = foo;
exports.bar = bar;

View File

@@ -1,5 +1,3 @@
"use strict";
(function (factory) {
if (typeof define === "function" && define.amd) {
define(["exports"], factory);
@@ -7,6 +5,8 @@
factory(exports);
}
})(function (exports) {
"use strict";
exports.foo7 = foo7;
var foo = 1;
exports.foo = foo;

View File

@@ -1,5 +1,3 @@
"use strict";
(function (factory) {
if (typeof define === "function" && define.amd) {
define(["exports", "./evens"], factory);
@@ -7,6 +5,8 @@
factory(exports, require("./evens"));
}
})(function (exports, _evens) {
"use strict";
exports.nextOdd = nextOdd;
var isEven = _evens.isEven;

View File

@@ -1,5 +1,3 @@
"use strict";
(function (factory) {
if (typeof define === "function" && define.amd) {
define(["exports", "foo"], factory);
@@ -7,6 +5,8 @@
factory(exports, require("foo"));
}
})(function (exports, _foo) {
"use strict";
var foo = _foo.default;
var foo = _foo.default;
});

View File

@@ -1,5 +1,3 @@
"use strict";
(function (factory) {
if (typeof define === "function" && define.amd) {
define(["exports", "foo"], factory);
@@ -7,5 +5,6 @@
factory(exports, require("foo"));
}
})(function (exports, _foo) {
"use strict";
var foo = _foo;
});

View File

@@ -1,5 +1,3 @@
"use strict";
(function (factory) {
if (typeof define === "function" && define.amd) {
define(["exports", "foo"], factory);
@@ -7,6 +5,7 @@
factory(exports, require("foo"));
}
})(function (exports, _foo) {
"use strict";
var foo = _foo.default;
var xyz = _foo.baz;
});

View File

@@ -1,5 +1,3 @@
"use strict";
(function (factory) {
if (typeof define === "function" && define.amd) {
define(["exports", "foo"], factory);
@@ -7,6 +5,7 @@
factory(exports, require("foo"));
}
})(function (exports, _foo) {
"use strict";
var bar = _foo.bar;
var bar = _foo.bar;
var baz = _foo.baz;

View File

@@ -1,5 +1,3 @@
"use strict";
(function (factory) {
if (typeof define === "function" && define.amd) {
define(["exports", "foo", "foo-bar", "./directory/foo-bar"], factory);
@@ -7,5 +5,5 @@
factory(exports, require("foo"), require("foo-bar"), require("./directory/foo-bar"));
}
})(function (exports, _foo, _fooBar, _directoryFooBar) {
"use strict";
});

View File

@@ -1,5 +1,3 @@
"use strict";
(function (factory) {
if (typeof define === "function" && define.amd) {
define(["exports", "foo", "foo-bar", "./directory/foo-bar"], factory);
@@ -7,6 +5,7 @@
factory(exports, require("foo"), require("foo-bar"), require("./directory/foo-bar"));
}
})(function (exports, _foo, _fooBar, _directoryFooBar) {
"use strict";
var foo = _foo.default;
var foo = _foo;
var bar = _foo.bar;