diff options
author | Rebecca Turner <rebecca@npmjs.com> | 2015-06-26 04:06:45 +0300 |
---|---|---|
committer | Rebecca Turner <rebecca@npmjs.com> | 2015-06-26 04:13:53 +0300 |
commit | d67d437661b694e25ec5bab32e6e60f8920fec76 (patch) | |
tree | ed04763ddfe7a84a95f0dd1e68a9b6d02c25fd46 | |
parent | 2becdc3c68774d34602d102110eb6a47c2c88372 (diff) |
read-installed@4.0.1
-rw-r--r-- | node_modules/read-installed/.travis.yml | 9 | ||||
-rw-r--r-- | node_modules/read-installed/package.json | 26 | ||||
-rw-r--r-- | node_modules/read-installed/read-installed.js | 16 | ||||
-rw-r--r-- | node_modules/read-installed/test/issue-40.js | 15 | ||||
-rw-r--r-- | package.json | 2 |
5 files changed, 52 insertions, 16 deletions
diff --git a/node_modules/read-installed/.travis.yml b/node_modules/read-installed/.travis.yml new file mode 100644 index 000000000..848ffd1c5 --- /dev/null +++ b/node_modules/read-installed/.travis.yml @@ -0,0 +1,9 @@ +language: node_js +before_install: + - '[ "${TRAVIS_NODE_VERSION}" != "0.8" ] || npm install -g npm@1.4.28' + - npm install -g npm@latest +node_js: + - '0.8' + - '0.10' + - '0.12' + - 'iojs' diff --git a/node_modules/read-installed/package.json b/node_modules/read-installed/package.json index 1e14fdcfc..d2222ee43 100644 --- a/node_modules/read-installed/package.json +++ b/node_modules/read-installed/package.json @@ -2,19 +2,19 @@ "_args": [ [ "read-installed@~4.0.0", - "/Users/rebecca/code/npm" + "/Users/rebecca/code/release/npm-3" ] ], "_from": "read-installed@>=4.0.0 <4.1.0", - "_id": "read-installed@4.0.0", + "_id": "read-installed@4.0.1", "_inCache": true, "_location": "/read-installed", - "_nodeVersion": "1.6.2", + "_nodeVersion": "2.3.1", "_npmUser": { "email": "me@re-becca.org", "name": "iarna" }, - "_npmVersion": "2.7.5", + "_npmVersion": "2.11.3", "_phantomChildren": {}, "_requested": { "name": "read-installed", @@ -27,10 +27,10 @@ "_requiredBy": [ "/" ], - "_shasum": "dbca08d6bd83e2a3b93c962053ba4d839e0769ba", + "_shasum": "b8d8f8034159586fea57d606a9aaba3df74284c3", "_shrinkwrap": null, "_spec": "read-installed@~4.0.0", - "_where": "/Users/rebecca/code/npm", + "_where": "/Users/rebecca/code/release/npm-3", "author": { "email": "i@izs.me", "name": "Isaac Z. Schlueter", @@ -52,15 +52,15 @@ "devDependencies": { "mkdirp": "^0.5.0", "rimraf": "^2.2.8", - "tap": "~0.4.8" + "tap": "^1.2.0" }, "directories": {}, "dist": { - "shasum": "dbca08d6bd83e2a3b93c962053ba4d839e0769ba", - "tarball": "http://registry.npmjs.org/read-installed/-/read-installed-4.0.0.tgz" + "shasum": "b8d8f8034159586fea57d606a9aaba3df74284c3", + "tarball": "http://registry.npmjs.org/read-installed/-/read-installed-4.0.1.tgz" }, - "gitHead": "c1dea4823e2219a79d6184621917ee27d4283bc0", - "homepage": "https://github.com/isaacs/read-installed", + "gitHead": "8547e3e176098051615651481f402d22e1f33c9d", + "homepage": "https://github.com/isaacs/read-installed#readme", "license": "ISC", "main": "read-installed.js", "maintainers": [ @@ -83,10 +83,10 @@ }, "repository": { "type": "git", - "url": "git://github.com/isaacs/read-installed" + "url": "git://github.com/isaacs/read-installed.git" }, "scripts": { "test": "tap ./test/*.js" }, - "version": "4.0.0" + "version": "4.0.1" } diff --git a/node_modules/read-installed/read-installed.js b/node_modules/read-installed/read-installed.js index 2e299445b..19e77be91 100644 --- a/node_modules/read-installed/read-installed.js +++ b/node_modules/read-installed/read-installed.js @@ -56,7 +56,7 @@ to READ(packagefolder, parentobj, name, reqver) obj = read package.json installed = ./node_modules/* if parentobj is null, and no package.json - obj = {dependencies:{<installed>:"*"}} + obj = {dependencies:{<installed>:ANY}} deps = Object.keys(obj.dependencies) obj.path = packagefolder obj.parent = parentobj @@ -105,6 +105,10 @@ var debug = require("debuglog")("read-installed") var readdir = require("readdir-scoped-modules") +// Sentinel catch-all version constraint used when a dependency is not +// listed in the package.json file. +var ANY = {} + module.exports = readInstalled function readInstalled (folder, opts, cb) { @@ -190,7 +194,7 @@ function readInstalled_ (folder, parent, name, reqver, depth, opts, cb) { if (realpathSeen[real]) return cb(null, realpathSeen[real]) if (obj === true) { obj = {dependencies:{}, path:folder} - installed.forEach(function (i) { obj.dependencies[i] = "*" }) + installed.forEach(function (i) { obj.dependencies[i] = ANY }) } if (name && obj.name !== name) obj.invalid = true obj.realName = name || obj.name @@ -199,6 +203,14 @@ function readInstalled_ (folder, parent, name, reqver, depth, opts, cb) { // At this point, figure out what dependencies we NEED to get met obj._dependencies = copy(obj.dependencies) + if (reqver === ANY) { + // We were unable to determine the required version of this + // dependency from the package.json file, but we now know its actual + // version, so treat that version as the required version to avoid + // marking the dependency as invalid below. See #40. + reqver = obj.version; + } + // "foo":"http://blah" and "foo":"latest" are always presumed valid if (reqver && semver.validRange(reqver, true) diff --git a/node_modules/read-installed/test/issue-40.js b/node_modules/read-installed/test/issue-40.js new file mode 100644 index 000000000..3105fe24a --- /dev/null +++ b/node_modules/read-installed/test/issue-40.js @@ -0,0 +1,15 @@ +var readInstalled = require('../read-installed.js'); +var test = require('tap').test; +var path = require('path'); + +test('prerelease packages should not be marked invalid', function(t) { + readInstalled( + path.join(__dirname, 'fixtures/issue-40'), + { log: console.error }, + function(err, map) { + t.strictEqual(map.dependencies.fake.version, '0.1.0-2'); + t.notOk(map.dependencies.fake.invalid); + t.end(); + } + ); +}); diff --git a/package.json b/package.json index 54aa0f989..29519e3a8 100644 --- a/package.json +++ b/package.json @@ -76,7 +76,7 @@ "osenv": "~0.1.2", "path-is-inside": "~1.0.0", "read": "~1.0.6", - "read-installed": "~4.0.0", + "read-installed": "~4.0.1", "read-package-json": "~2.0.0", "read-package-tree": "~4.1.0", "realize-package-specifier": "~3.0.1", |