Skip to content

Commit b305988

Browse files
committed
Merge pull request webpack#949 from monder/master
Use node-interpret to import configuration in various formats.
2 parents 0431b74 + a1596fb commit b305988

2 files changed

Lines changed: 12 additions & 0 deletions

File tree

bin/convert-argv.js

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ var path = require("path");
22
var fs = require("fs");
33
fs.existsSync = fs.existsSync || path.existsSync;
44
var resolve = require("enhanced-resolve");
5+
var interpret = require('interpret');
56

67
module.exports = function(optimist, argv, convertOptions) {
78

@@ -27,6 +28,16 @@ module.exports = function(optimist, argv, convertOptions) {
2728
}
2829

2930
if(argv.config) {
31+
var ext = path.extname(argv.config);
32+
if (Object.keys(require.extensions).indexOf(ext) === -1) {
33+
var moduleName = interpret.extensions[ext];
34+
var compiler = require(moduleName);
35+
var register = interpret.register[moduleName];
36+
var config = interpret.configurations[moduleName];
37+
if (register) {
38+
register(compiler, config);
39+
}
40+
}
3041
options = require(path.resolve(argv.config));
3142
} else {
3243
var configPath = path.resolve("webpack.config.js");

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
"description": "Packs CommonJs/AMD modules for the browser. Allows to split your codebase into multiple bundles, which can be loaded on demand. Support loaders to preprocess files, i.e. json, jade, coffee, css, less, ... and your custom stuff.",
66
"dependencies": {
77
"esprima": "~1.2.0",
8+
"interpret": "^0.5.2",
89
"mkdirp": "~0.5.0",
910
"optimist": "~0.6.0",
1011
"uglify-js": "~2.4.13",

0 commit comments

Comments
 (0)