diff options
author | isaacs <i@izs.me> | 2013-01-19 03:20:53 +0400 |
---|---|---|
committer | isaacs <i@izs.me> | 2013-01-19 03:20:53 +0400 |
commit | d992fc7113dd1e0e41b694d36b38e3f6ee7912f6 (patch) | |
tree | 7b89a54ee2a4ff85c35875d202fe36e6c6d937a7 /node_modules/read-installed | |
parent | 7e5f6f9e7f732f9495ed0e3d04bdb468db1bd30d (diff) |
read-installed@0.1.0
Diffstat (limited to 'node_modules/read-installed')
-rw-r--r-- | node_modules/read-installed/package.json | 10 | ||||
-rw-r--r-- | node_modules/read-installed/read-installed.js | 21 |
2 files changed, 24 insertions, 7 deletions
diff --git a/node_modules/read-installed/package.json b/node_modules/read-installed/package.json index e05c5a98b..91d01c2ac 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": "0.0.4", + "version": "0.1.0", "repository": { "type": "git", "url": "git://github.com/isaacs/read-installed" @@ -28,6 +28,10 @@ }, "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## Usage\n\n```javascript\nvar readInstalled = require(\"read-installed\")\n// depth is optional, defaults to Infinity\nreadInstalled(folder, depth, function (er, data) {\n ...\n})\n```\n", "readmeFilename": "README.md", - "_id": "read-installed@0.0.4", - "_from": "read-installed@latest" + "_id": "read-installed@0.1.0", + "dist": { + "shasum": "27b1358951086bc9b69d527961d9e04a27c921d1" + }, + "_from": "read-installed@0.1.0", + "_resolved": "https://registry.npmjs.org/read-installed/-/read-installed-0.1.0.tgz" } diff --git a/node_modules/read-installed/read-installed.js b/node_modules/read-installed/read-installed.js index 192907c26..4babfc862 100644 --- a/node_modules/read-installed/read-installed.js +++ b/node_modules/read-installed/read-installed.js @@ -121,8 +121,6 @@ function readInstalled (folder, depth, cb) { var rpSeen = {} function readInstalled_ (folder, parent, name, reqver, depth, maxDepth, cb) { - //console.error(folder, name) - var installed , obj , real @@ -251,6 +249,7 @@ function resolveInheritance (obj) { Object.keys(obj.dependencies).forEach(function (dep) { resolveInheritance(obj.dependencies[dep]) }) + findUnmet(obj) } // find unmet deps by walking up the tree object. @@ -261,6 +260,7 @@ function findUnmet (obj) { fuSeen.push(obj) //console.error("find unmet", obj.name, obj.parent && obj.parent.name) var deps = obj.dependencies = obj.dependencies || {} + //console.error(deps) Object.keys(deps) .filter(function (d) { return typeof deps[d] === "string" }) @@ -297,8 +297,21 @@ function findUnmet (obj) { var peerDeps = obj.peerDependencies = obj.peerDependencies || {} Object.keys(peerDeps).forEach(function (d) { - var dependency = obj.parent && obj.parent.dependencies && - obj.parent.dependencies[d] + var dependency + + if (!obj.parent) { + dependency = obj.dependencies[d] + + // read it as a missing dep + if (!dependency) { + obj.dependencies[d] = peerDeps[d] + } + } else { + dependency = obj.parent.dependencies && obj.parent.dependencies[d] + } + + if (!dependency) return + dependency.extraneous = false if (!semver.satisfies(dependency.version, peerDeps[d])) { |