From c0721f3d197b32510920a2853829d548f8341447 Mon Sep 17 00:00:00 2001 From: Rebecca Turner Date: Fri, 17 Jul 2015 03:18:56 +0000 Subject: read-package-tree@5.1.0 Pull in 5.1.0 to support filtering the results at READ time. PR-URL: https://github.com/npm/npm/pull/8977 --- node_modules/read-package-tree/README.md | 8 +++++++- node_modules/read-package-tree/package.json | 30 ++++++++++++++--------------- node_modules/read-package-tree/rpt.js | 18 ++++++++++------- 3 files changed, 33 insertions(+), 23 deletions(-) (limited to 'node_modules/read-package-tree') diff --git a/node_modules/read-package-tree/README.md b/node_modules/read-package-tree/README.md index 3ef0a4c79..b3cda81f7 100644 --- a/node_modules/read-package-tree/README.md +++ b/node_modules/read-package-tree/README.md @@ -6,7 +6,13 @@ Read the contents of node_modules. ```javascript var rpt = require ('read-package-tree') -rpt('/path/to/pkg/root', function (er, data) { +rpt('/path/to/pkg/root', function (node, kidName) { + // optional filter function– if included, each package folder found is passed to + // it to see if it should be included in the final tree + // node is what we're adding children to + // kidName is the directory name of the module we're considering adding + // return true -> include, false -> skip +}, function (er, data) { // er means that something didn't work. // data is a structure like: // { diff --git a/node_modules/read-package-tree/package.json b/node_modules/read-package-tree/package.json index 037b5c18d..79a635628 100644 --- a/node_modules/read-package-tree/package.json +++ b/node_modules/read-package-tree/package.json @@ -1,35 +1,35 @@ { "_args": [ [ - "read-package-tree@~5.0.0", + "read-package-tree@~5.1.0", "/Users/rebecca/code/npm" ] ], - "_from": "read-package-tree@>=5.0.0 <5.1.0", - "_id": "read-package-tree@5.0.0", + "_from": "read-package-tree@>=5.1.0 <5.2.0", + "_id": "read-package-tree@5.1.0", "_inCache": true, "_location": "/read-package-tree", - "_nodeVersion": "0.12.4", + "_nodeVersion": "0.10.38", "_npmUser": { "email": "me@re-becca.org", "name": "iarna" }, - "_npmVersion": "2.11.2", + "_npmVersion": "3.1.2", "_phantomChildren": {}, "_requested": { "name": "read-package-tree", - "raw": "read-package-tree@~5.0.0", - "rawSpec": "~5.0.0", + "raw": "read-package-tree@~5.1.0", + "rawSpec": "~5.1.0", "scope": null, - "spec": ">=5.0.0 <5.1.0", + "spec": ">=5.1.0 <5.2.0", "type": "range" }, "_requiredBy": [ "/" ], - "_shasum": "0960bb19bff77ec7e35c1ea7ca8208945ea4bfb2", + "_shasum": "63cf2699d5cf8fb227703322e10a700f1208fc13", "_shrinkwrap": null, - "_spec": "read-package-tree@~5.0.0", + "_spec": "read-package-tree@~5.1.0", "_where": "/Users/rebecca/code/npm", "author": { "email": "i@izs.me", @@ -49,16 +49,16 @@ "description": "Read the contents of node_modules.", "devDependencies": { "archy": "0", - "tap": "^0.4.12" + "tap": "^1.2.0" }, "directories": { "test": "test" }, "dist": { - "shasum": "0960bb19bff77ec7e35c1ea7ca8208945ea4bfb2", - "tarball": "http://registry.npmjs.org/read-package-tree/-/read-package-tree-5.0.0.tgz" + "shasum": "63cf2699d5cf8fb227703322e10a700f1208fc13", + "tarball": "http://registry.npmjs.org/read-package-tree/-/read-package-tree-5.1.0.tgz" }, - "gitHead": "57ab023d0a50214b5ea73887adb874723a4b0232", + "gitHead": "9c8baac5c966f4976cfc4de6caafe58299d7a51e", "homepage": "https://github.com/npm/read-package-tree", "license": "ISC", "main": "rpt.js", @@ -81,5 +81,5 @@ "scripts": { "test": "tap test/*.js" }, - "version": "5.0.0" + "version": "5.1.0" } diff --git a/node_modules/read-package-tree/rpt.js b/node_modules/read-package-tree/rpt.js index 58b5928ed..43da67c91 100644 --- a/node_modules/read-package-tree/rpt.js +++ b/node_modules/read-package-tree/rpt.js @@ -97,7 +97,7 @@ function loadNode (logical, physical, cache, cb) { }) } -function loadChildren (node, cache, cb) { +function loadChildren (node, cache, filterWith, cb) { debug('loadChildren', dpath(node.path)) // don't let it be called more than once cb = once(cb) @@ -107,7 +107,7 @@ function loadChildren (node, cache, cb) { if (er) return cb(null, node) kids = kids.filter(function (kid) { - return kid[0] !== '.' + return kid[0] !== '.' && (!filterWith || filterWith(node, kid)) }) var l = kids . length @@ -140,7 +140,7 @@ function sortChildren (node) { }) } -function loadTree (node, did, cache, cb) { +function loadTree (node, did, cache, filterWith, cb) { debug('loadTree', dpath(node.path), !!cache[node.path]) if (did[node.realpath]) { @@ -150,7 +150,7 @@ function loadTree (node, did, cache, cb) { did[node.realpath] = true cb = once(cb) - loadChildren(node, cache, function (er, node) { + loadChildren(node, cache, filterWith, function (er, node) { if (er) return cb(er) var kids = node.children.filter(function (kid) { @@ -161,7 +161,7 @@ function loadTree (node, did, cache, cb) { if (l === 0) return cb(null, node) kids.forEach(function (kid, index) { - loadTree(kid, did, cache, then) + loadTree(kid, did, cache, filterWith, then) }) function then (er, kid) { @@ -172,7 +172,11 @@ function loadTree (node, did, cache, cb) { }) } -function rpt (root, cb) { +function rpt (root, filterWith, cb) { + if (!cb) { + cb = filterWith + filterWith = null + } fs.realpath(root, function (er, realRoot) { if (er) return cb(er) debug('rpt', dpath(realRoot)) @@ -180,7 +184,7 @@ function rpt (root, cb) { loadNode(root, realRoot, cache, function (er, node) { // if there's an error, it's fine, as long as we got a node if (!node) return cb(er) - loadTree(node, {}, cache, function (lter, tree) { + loadTree(node, {}, cache, filterWith, function (lter, tree) { cb(er && er.code !== 'ENOENT' ? er : lter, tree) }) }) -- cgit v1.2.3