diff options
author | Forrest L Norvell <forrest@npmjs.com> | 2014-08-30 02:40:44 +0400 |
---|---|---|
committer | isaacs <i@izs.me> | 2014-08-30 02:43:30 +0400 |
commit | e8d75d0d9f148ce2b3e8f7671fa281945bac363d (patch) | |
tree | b7dce13e9c06d181f0485ec40bdf7a674b9a322a /node_modules/read-installed | |
parent | 0602f708f070d524ad41573afd4c57171cab21ad (diff) |
read-installed@3.1.1
Properly handles extraneous dev dependencies of required dependencies.
Diffstat (limited to 'node_modules/read-installed')
7 files changed, 42 insertions, 31 deletions
diff --git a/node_modules/read-installed/node_modules/readdir-scoped-modules/package.json b/node_modules/read-installed/node_modules/readdir-scoped-modules/package.json index 84b91e75a..982135b66 100644 --- a/node_modules/read-installed/node_modules/readdir-scoped-modules/package.json +++ b/node_modules/read-installed/node_modules/readdir-scoped-modules/package.json @@ -50,5 +50,6 @@ "shasum": "e939de969b38b3e7dfaa14fbcfe7a2fd15a4ea37", "tarball": "http://registry.npmjs.org/readdir-scoped-modules/-/readdir-scoped-modules-1.0.0.tgz" }, - "_resolved": "https://registry.npmjs.org/readdir-scoped-modules/-/readdir-scoped-modules-1.0.0.tgz" + "_resolved": "https://registry.npmjs.org/readdir-scoped-modules/-/readdir-scoped-modules-1.0.0.tgz", + "readme": "ERROR: No README data found!" } diff --git a/node_modules/read-installed/package.json b/node_modules/read-installed/package.json index bc1fdb8e0..13a146cad 100644 --- a/node_modules/read-installed/package.json +++ b/node_modules/read-installed/package.json @@ -1,7 +1,7 @@ { "name": "read-installed", "description": "Read all the installed packages in a folder, and return a tree structure with all the data.", - "version": "3.1.0", + "version": "3.1.1", "repository": { "type": "git", "url": "git://github.com/isaacs/read-installed" @@ -33,33 +33,14 @@ "rimraf": "^2.2.8", "tap": "~0.4.8" }, - "gitHead": "1dbabc054a686b43607c642b1eea30b6707a18c6", + "readme": "# read-installed\n\nRead all the installed packages in a folder, and return a tree\nstructure with all the data.\n\nnpm uses this.\n\n## 2.0.0\n\nBreaking changes in `2.0.0`:\n\nThe second argument is now an `Object` that contains the following keys:\n\n * `depth` optional, defaults to Infinity\n * `log` optional log Function\n * `dev` optional, default false, set to true to include devDependencies\n\n## Usage\n\n```javascript\nvar readInstalled = require(\"read-installed\")\n// optional options\nvar options = { dev: false, log: fn, depth: 2 }\nreadInstalled(folder, options, function (er, data) {\n ...\n})\n```\n", + "readmeFilename": "README.md", + "gitHead": "30e5bc219bb144afe28d0453fdf1d5831bf210e2", "bugs": { "url": "https://github.com/isaacs/read-installed/issues" }, "homepage": "https://github.com/isaacs/read-installed", - "_id": "read-installed@3.1.0", - "_shasum": "47075ba8828147ed495084df779f29a4329ad3df", - "_from": "read-installed@latest", - "_npmVersion": "2.0.0-alpha.6.0", - "_npmUser": { - "name": "isaacs", - "email": "i@izs.me" - }, - "maintainers": [ - { - "name": "isaacs", - "email": "i@izs.me" - }, - { - "name": "othiym23", - "email": "ogd@aoaioxxysz.net" - } - ], - "dist": { - "shasum": "47075ba8828147ed495084df779f29a4329ad3df", - "tarball": "http://registry.npmjs.org/read-installed/-/read-installed-3.1.0.tgz" - }, - "directories": {}, - "_resolved": "https://registry.npmjs.org/read-installed/-/read-installed-3.1.0.tgz" + "_id": "read-installed@3.1.1", + "_shasum": "d706c022e6508cdb1df2a8071826549679fd6792", + "_from": "read-installed@>=3.1.1-0 <3.2.0-0" } diff --git a/node_modules/read-installed/read-installed.js b/node_modules/read-installed/read-installed.js index a3e50e2c7..faf64314c 100644 --- a/node_modules/read-installed/read-installed.js +++ b/node_modules/read-installed/read-installed.js @@ -133,6 +133,7 @@ function readInstalled (folder, opts, cb) { // now obj has all the installed things, where they're installed // figure out the inheritance links, now that the object is built. resolveInheritance(obj, opts) + obj.root = true unmarkExtraneous(obj, opts) cb(null, obj) }) @@ -344,7 +345,7 @@ function unmarkExtraneous (obj, opts) { obj.extraneous = false var deps = obj._dependencies - if (opts.dev && obj.devDependencies) { + if (opts.dev && obj.devDependencies && obj.root) { Object.keys(obj.devDependencies).forEach(function (k) { deps[k] = obj.devDependencies[k] }) @@ -356,6 +357,7 @@ function unmarkExtraneous (obj, opts) { }) } + debug("not extraneous", obj._id, deps) Object.keys(deps).forEach(function (d) { var dep = findDep(obj, d) if (dep && dep.extraneous) { diff --git a/node_modules/read-installed/test/dev.js b/node_modules/read-installed/test/dev.js index 48efe80b3..5e5a994a8 100644 --- a/node_modules/read-installed/test/dev.js +++ b/node_modules/read-installed/test/dev.js @@ -17,7 +17,7 @@ test("make sure that it works without dev deps", function (t) { var deps = Object.keys(map.dependencies).sort() t.equal(deps.length, known.length, "array lengths are equal") t.deepEqual(deps, known, "arrays should be equal") - t.ok(map.dependencies.tap.extraneous, 'extraneous is set on devDep') + t.ok(map.dependencies.tap.extraneous, "extraneous is set on devDep") t.end() }) }) diff --git a/node_modules/read-installed/test/extraneous-dev.js b/node_modules/read-installed/test/extraneous-dev.js new file mode 100644 index 000000000..2f9012d54 --- /dev/null +++ b/node_modules/read-installed/test/extraneous-dev.js @@ -0,0 +1,20 @@ +var readInstalled = require("../read-installed.js") +var test = require("tap").test +var path = require("path") + +test("extraneous detected", function(t) { + // This test verifies read-installed#16 + readInstalled( + path.join(__dirname, "fixtures/extraneous-dev-dep"), + { + log: console.error, + dev: true + }, + function (err, map) { + t.ifError(err, "read-installed made it") + + t.notOk(map.dependencies.d.extraneous, "d is not extraneous, it's required by root") + t.ok(map.dependencies.x.extraneous, "x is extraneous, it's only a dev dep of d") + t.end() + }) +}) diff --git a/node_modules/read-installed/test/extraneous.js b/node_modules/read-installed/test/extraneous.js index 2cc0d04e7..e999c9b4f 100644 --- a/node_modules/read-installed/test/extraneous.js +++ b/node_modules/read-installed/test/extraneous.js @@ -1,6 +1,6 @@ var readInstalled = require('../read-installed.js') var test = require('tap').test -var path = require('path'); +var path = require('path') test('extraneous detected', function(t) { // This test verifies read-installed#16 @@ -12,6 +12,6 @@ test('extraneous detected', function(t) { t.ok(map.dependencies.bar.extraneous, 'bar is extraneous, it\'s not required by any module') t.notOk(map.dependencies.asdf.extraneous, 'asdf is not extraneous, it\'s required by ghjk') t.notOk(map.dependencies.ghjk.extraneous, 'ghjk is not extraneous, it\'s required by our root module') - t.end(); + t.end() }) }) diff --git a/node_modules/read-installed/test/fixtures/extraneous-dev-dep/package.json b/node_modules/read-installed/test/fixtures/extraneous-dev-dep/package.json new file mode 100644 index 000000000..9bfa7ce8f --- /dev/null +++ b/node_modules/read-installed/test/fixtures/extraneous-dev-dep/package.json @@ -0,0 +1,7 @@ +{ + "name": "extraneous-dev-dep", + "version": "0.0.0", + "dependencies": { + "d": "1.0.0" + } +} |