module-deps
Advanced tools
Comparing version 1.1.0 to 1.2.0
53
index.js
@@ -14,3 +14,3 @@ var fs = require('fs'); | ||
var cache = opts.cache; | ||
var pkgCache = opts.packageCache; | ||
var pkgCache = opts.packageCache || {}; | ||
@@ -42,13 +42,37 @@ if (!Array.isArray(mains)) mains = [ mains ].filter(Boolean); | ||
var top = { id: '/', filename: '/', paths: [] }; | ||
mains.forEach(function (main, ix) { | ||
if (typeof main === 'object') { | ||
walk({ stream: main, file: entries[ix] }, top); | ||
(function () { | ||
var pkgCount = mains.length; | ||
if (pkgCount === 0) next(); | ||
mains.forEach(function (main) { | ||
if (typeof main === 'object') return done(); | ||
var id = path.resolve(basedir, main); | ||
if (pkgCache[id]) return done(); | ||
var pkgfile = path.join(path.dirname(main), 'package.json'); | ||
fs.readFile(pkgfile, function (err, src) { | ||
if (err) return done(); | ||
try { var pkg = JSON.parse(src) } | ||
catch (err) { return done() } | ||
pkgCache[id] = pkg; | ||
done(); | ||
}); | ||
}); | ||
function done () { if (--pkgCount === 0) next() } | ||
})(); | ||
function next () { | ||
mains.forEach(function (main, ix) { | ||
if (typeof main === 'object') { | ||
walk({ stream: main, file: entries[ix] }, top); | ||
} | ||
else walk(main, top) | ||
}); | ||
if (mains.length === 0) { | ||
output.pause(); | ||
output.queue(null); | ||
process.nextTick(function () { output.resume() }); | ||
} | ||
else walk(main, top) | ||
}); | ||
if (mains.length === 0) { | ||
output.pause(); | ||
output.queue(null); | ||
process.nextTick(function () { output.resume() }); | ||
} | ||
@@ -62,3 +86,3 @@ | ||
if (typeof id === 'object') { | ||
id.stream.pipe(concat(function (src) { | ||
id.stream.pipe(concat({ encoding: 'string' }, function (src) { | ||
var pkgfile = path.join(basedir, 'package.json'); | ||
@@ -107,2 +131,3 @@ fs.readFile(pkgfile, function (err, pkgsrc) { | ||
visited[file] = true; | ||
if (!pkg && pkgCache[file]) pkg = pkgCache[file]; | ||
@@ -139,3 +164,3 @@ var trx = getTransform(pkg); | ||
} | ||
return trx; | ||
return trx.concat(opts.globalTransform || []); | ||
} | ||
@@ -157,3 +182,3 @@ | ||
s.on('error', output.emit.bind(output, 'error')); | ||
s.pipe(concat(function (data) { | ||
s.pipe(concat({ encoding: 'string' }, function (data) { | ||
src = data; | ||
@@ -160,0 +185,0 @@ ap(trs.slice(1)); |
{ | ||
"name": "module-deps", | ||
"version": "1.1.0", | ||
"description": "walk the dependency graph to generate json output that can be fed into browser-pack", | ||
"main": "index.js", | ||
"bin": { | ||
"module-deps": "cmd.js" | ||
}, | ||
"dependencies": { | ||
"through": "~2.3.4", | ||
"JSONStream": "~0.6.4", | ||
"browser-resolve": "~1.2.0", | ||
"resolve": "~0.6.0", | ||
"detective": "~2.1.2", | ||
"concat-stream": "~1.0.0", | ||
"minimist": "~0.0.1" | ||
}, | ||
"devDependencies": { | ||
"tap": "~0.4.0", | ||
"browser-pack": "~0.0.0" | ||
}, | ||
"scripts": { | ||
"test": "tap test/*.js" | ||
}, | ||
"repository": { | ||
"type": "git", | ||
"url": "git://github.com/substack/module-deps.git" | ||
}, | ||
"homepage": "https://github.com/substack/module-deps", | ||
"keywords": [ | ||
"dependency", | ||
"graph", | ||
"browser", | ||
"require", | ||
"module", | ||
"exports", | ||
"json" | ||
], | ||
"author": { | ||
"name": "James Halliday", | ||
"email": "mail@substack.net", | ||
"url": "http://substack.net" | ||
}, | ||
"license": "MIT" | ||
"name": "module-deps", | ||
"version": "1.2.0", | ||
"description": "walk the dependency graph to generate json output that can be fed into browser-pack", | ||
"main": "index.js", | ||
"bin": { | ||
"module-deps": "cmd.js" | ||
}, | ||
"dependencies": { | ||
"through": "~2.3.4", | ||
"JSONStream": "~0.7.1", | ||
"browser-resolve": "~1.2.1", | ||
"resolve": "~0.6.0", | ||
"detective": "~2.1.2", | ||
"concat-stream": "~1.3.1", | ||
"minimist": "~0.0.5" | ||
}, | ||
"devDependencies": { | ||
"tape": "~2.3.2", | ||
"browser-pack": "~0.0.0" | ||
}, | ||
"scripts": { | ||
"test": "tape test/*.js" | ||
}, | ||
"repository": { | ||
"type": "git", | ||
"url": "git://github.com/substack/module-deps.git" | ||
}, | ||
"homepage": "https://github.com/substack/module-deps", | ||
"keywords": [ | ||
"dependency", | ||
"graph", | ||
"browser", | ||
"require", | ||
"module", | ||
"exports", | ||
"json" | ||
], | ||
"author": { | ||
"name": "James Halliday", | ||
"email": "mail@substack.net", | ||
"url": "http://substack.net" | ||
}, | ||
"engines": { | ||
"node": ">= 0.10" | ||
}, | ||
"license": "MIT" | ||
} |
var parser = require('../'); | ||
var test = require('tap').test; | ||
var test = require('tape'); | ||
var JSONStream = require('JSONStream'); | ||
@@ -4,0 +4,0 @@ var packer = require('browser-pack'); |
var parser = require('../'); | ||
var test = require('tap').test; | ||
var test = require('tape'); | ||
var fs = require('fs'); | ||
@@ -4,0 +4,0 @@ |
@@ -1,2 +0,2 @@ | ||
var test = require('tap').test; | ||
var test = require('tape'); | ||
var path = require('path') | ||
@@ -33,3 +33,2 @@ var mdeps = require('../') | ||
.on('end', function () { | ||
console.error(collect) | ||
t.equal(collect.length, 1) | ||
@@ -36,0 +35,0 @@ t.end() |
var parser = require('../'); | ||
var test = require('tap').test; | ||
var test = require('tape'); | ||
var fs = require('fs'); | ||
@@ -4,0 +4,0 @@ |
var mdeps = require('../'); | ||
var test = require('tap').test; | ||
var test = require('tape'); | ||
var JSONStream = require('JSONStream'); | ||
@@ -4,0 +4,0 @@ var packer = require('browser-pack'); |
var parser = require('../'); | ||
var test = require('tap').test; | ||
var test = require('tape'); | ||
var JSONStream = require('JSONStream'); | ||
@@ -16,5 +16,7 @@ var packer = require('browser-pack'); | ||
p.pipe(JSONStream.stringify()).pipe(pack).pipe(concat(function (src) { | ||
Function(['t'],src)(t); | ||
})); | ||
p.pipe(JSONStream.stringify()).pipe(pack) | ||
.pipe(concat({ encoding: 'string' }, function (src) { | ||
Function(['t'], src)(t); | ||
})) | ||
; | ||
@@ -21,0 +23,0 @@ tr.queue('t.ok(true)'); |
var mdeps = require('../'); | ||
var test = require('tap').test; | ||
var test = require('tape'); | ||
var JSONStream = require('JSONStream'); | ||
@@ -4,0 +4,0 @@ var packer = require('browser-pack'); |
var mdeps = require('../'); | ||
var test = require('tap').test; | ||
var test = require('tape'); | ||
var JSONStream = require('JSONStream'); | ||
@@ -4,0 +4,0 @@ var packer = require('browser-pack'); |
var mdeps = require('../'); | ||
var test = require('tap').test; | ||
var test = require('tape'); | ||
var JSONStream = require('JSONStream'); | ||
@@ -4,0 +4,0 @@ var packer = require('browser-pack'); |
var mdeps = require('../'); | ||
var test = require('tap').test; | ||
var test = require('tape'); | ||
var JSONStream = require('JSONStream'); | ||
@@ -4,0 +4,0 @@ var packer = require('browser-pack'); |
var mdeps = require('../'); | ||
var test = require('tap').test; | ||
var test = require('tape'); | ||
var JSONStream = require('JSONStream'); | ||
@@ -4,0 +4,0 @@ var packer = require('browser-pack'); |
var parser = require('../'); | ||
var test = require('tap').test; | ||
var test = require('tape'); | ||
var fs = require('fs'); | ||
@@ -4,0 +4,0 @@ |
Sorry, the diff of this file is not supported yet
Uses eval
Supply chain riskPackage uses eval() which is a dangerous function. This prevents the code from running in certain environments and increases the risk that the code may contain exploits or malicious behavior.
Found 1 instance in 1 package
Uses eval
Supply chain riskPackage uses eval() which is a dangerous function. This prevents the code from running in certain environments and increases the risk that the code may contain exploits or malicious behavior.
Found 1 instance in 1 package
30290
70
710
15
+ AddedJSONStream@0.7.4(transitive)
+ Addedconcat-stream@1.3.2(transitive)
+ Addedinherits@2.0.4(transitive)
+ Addedtypedarray@0.0.7(transitive)
- RemovedJSONStream@0.6.4(transitive)
- Removedbase64-js@0.0.2(transitive)
- Removedbops@0.0.6(transitive)
- Removedconcat-stream@1.0.1(transitive)
- Removedthrough@2.2.7(transitive)
- Removedto-utf8@0.0.1(transitive)
UpdatedJSONStream@~0.7.1
Updatedbrowser-resolve@~1.2.1
Updatedconcat-stream@~1.3.1
Updatedminimist@~0.0.5