diff options
author | Kat Marchán <kzm@sykosomatic.org> | 2016-09-22 07:59:37 -0700 |
---|---|---|
committer | Jeremiah Senkpiel <fishrock123@rocketmail.com> | 2016-09-27 16:39:27 -0400 |
commit | d44a9eb11b34900b44a9d135a2c965346fff702e (patch) | |
tree | a8d074826fb51641f5a7f24978e5e632b958ca84 /deps/npm/lib/fetch-package-metadata.js | |
parent | 33aa953f918f624a44e538baf2a3ee41570ac303 (diff) | |
download | android-node-v8-d44a9eb11b34900b44a9d135a2c965346fff702e.tar.gz android-node-v8-d44a9eb11b34900b44a9d135a2c965346fff702e.tar.bz2 android-node-v8-d44a9eb11b34900b44a9d135a2c965346fff702e.zip |
deps: upgrade npm to 3.10.8
PR-URL: https://github.com/nodejs/node/pull/8706
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Diffstat (limited to 'deps/npm/lib/fetch-package-metadata.js')
-rw-r--r-- | deps/npm/lib/fetch-package-metadata.js | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/deps/npm/lib/fetch-package-metadata.js b/deps/npm/lib/fetch-package-metadata.js index d4f02bb278..85322304d5 100644 --- a/deps/npm/lib/fetch-package-metadata.js +++ b/deps/npm/lib/fetch-package-metadata.js @@ -122,7 +122,15 @@ function fetchNamedPackageData (dep, next) { } function pickVersionFromRegistryDocument (pkg) { if (!regCache[url]) regCache[url] = pkg - var versions = Object.keys(pkg.versions).sort(semver.rcompare) + var versions = Object.keys(pkg.versions) + + var invalidVersions = versions.filter(function (v) { return !semver.valid(v) }) + if (invalidVersions.length > 0) { + log.warn('pickVersion', 'The package %s has invalid semver-version(s): %s. This usually only happens for unofficial private registries. ' + + 'You should delete or re-publish the invalid versions.', pkg.name, invalidVersions.join(', ')) + } + + versions = versions.filter(function (v) { return semver.valid(v) }).sort(semver.rcompare) if (dep.type === 'tag') { var tagVersion = pkg['dist-tags'][dep.spec] @@ -169,6 +177,7 @@ function fetchNamedPackageData (dep, next) { : 'No valid targets found.' var er = new Error('No compatible version found: ' + dep.raw + '\n' + targets) + er.code = 'ETARGET' return next(er) } })) |