diff options
author | Forrest L Norvell <forrest@npmjs.com> | 2015-04-10 05:56:01 -0700 |
---|---|---|
committer | Forrest L Norvell <forrest@npmjs.com> | 2015-04-10 14:22:47 -0700 |
commit | cc8376ae67b57d5379881ae9582ee2e8352fc171 (patch) | |
tree | cd66f66da8e42dbf61016018667b0e57c0844663 /deps/npm/lib | |
parent | f0bf6bb024f86412c2dbe6f0ea1f984a3a25ec2a (diff) | |
download | android-node-v8-cc8376ae67b57d5379881ae9582ee2e8352fc171.tar.gz android-node-v8-cc8376ae67b57d5379881ae9582ee2e8352fc171.tar.bz2 android-node-v8-cc8376ae67b57d5379881ae9582ee2e8352fc171.zip |
deps: upgrade npm to 2.7.6
PR-URL: https://github.com/iojs/io.js/pull/1390
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Diffstat (limited to 'deps/npm/lib')
-rw-r--r-- | deps/npm/lib/build.js | 34 | ||||
-rw-r--r-- | deps/npm/lib/cache.js | 2 | ||||
-rw-r--r-- | deps/npm/lib/cache/add-named.js | 19 | ||||
-rw-r--r-- | deps/npm/lib/cache/add-remote-git.js | 9 | ||||
-rw-r--r-- | deps/npm/lib/cache/maybe-github.js | 20 | ||||
-rw-r--r-- | deps/npm/lib/config/core.js | 3 | ||||
-rw-r--r-- | deps/npm/lib/install.js | 76 | ||||
-rw-r--r-- | deps/npm/lib/run-script.js | 3 | ||||
-rw-r--r-- | deps/npm/lib/unbuild.js | 3 | ||||
-rw-r--r-- | deps/npm/lib/utils/git.js | 6 |
10 files changed, 95 insertions, 80 deletions
diff --git a/deps/npm/lib/build.js b/deps/npm/lib/build.js index 47f1055967..c5ee76e5c8 100644 --- a/deps/npm/lib/build.js +++ b/deps/npm/lib/build.js @@ -85,20 +85,26 @@ function linkStuff (pkg, folder, global, didRB, cb) { // if it's global, and folder is in {prefix}/node_modules, // then bins are in {prefix}/bin // otherwise, then bins are in folder/../.bin - var parent = pkg.name[0] === "@" ? path.dirname(path.dirname(folder)) : path.dirname(folder) - , gnm = global && npm.globalDir - , gtop = parent === gnm - - log.verbose("linkStuff", [global, gnm, gtop, parent]) - log.info("linkStuff", pkg._id) - - shouldWarn(pkg, folder, global, function() { - asyncMap( [linkBins, linkMans, !didRB && rebuildBundles] - , function (fn, cb) { - if (!fn) return cb() - log.verbose(fn.name, pkg._id) - fn(pkg, folder, parent, gtop, cb) - }, cb) + var parent = pkg.name[0] === '@' ? path.dirname(path.dirname(folder)) : path.dirname(folder) + var gnm = global && npm.globalDir + var gtop = parent === gnm + + log.info('linkStuff', pkg._id) + log.silly('linkStuff', pkg._id, 'has', parent, 'as its parent node_modules') + if (global) log.silly('linkStuff', pkg._id, 'is part of a global install') + if (gnm) log.silly('linkStuff', pkg._id, 'is installed into a global node_modules') + if (gtop) log.silly('linkStuff', pkg._id, 'is installed into the top-level global node_modules') + + shouldWarn(pkg, folder, global, function () { + asyncMap( + [linkBins, linkMans, !didRB && rebuildBundles], + function (fn, cb) { + if (!fn) return cb() + log.verbose(fn.name, pkg._id) + fn(pkg, folder, parent, gtop, cb) + }, + cb + ) }) } diff --git a/deps/npm/lib/cache.js b/deps/npm/lib/cache.js index b5a9fae0e4..b3c237509d 100644 --- a/deps/npm/lib/cache.js +++ b/deps/npm/lib/cache.js @@ -135,9 +135,7 @@ function read (name, ver, forceBypass, cb) { var root = cachedPackageRoot({name : name, version : ver}) function c (er, data) { - log.silly("cache", "addNamed cb", name+"@"+ver) if (er) log.verbose("cache", "addNamed error for", name+"@"+ver, er) - if (data) deprCheck(data) return cb(er, data) diff --git a/deps/npm/lib/cache/add-named.js b/deps/npm/lib/cache/add-named.js index cb5a3fa8a6..07d5b7f01b 100644 --- a/deps/npm/lib/cache/add-named.js +++ b/deps/npm/lib/cache/add-named.js @@ -34,20 +34,23 @@ function addNamed (name, version, data, cb_) { assert(typeof cb_ === "function", "must have callback") var key = name + "@" + version - log.verbose("addNamed", key) + log.silly("addNamed", key) function cb (er, data) { if (data && !data._fromGithub) data._from = key cb_(er, data) } - log.silly("addNamed", "semver.valid", semver.valid(version)) - log.silly("addNamed", "semver.validRange", semver.validRange(version)) - var fn = ( semver.valid(version, true) ? addNameVersion - : semver.validRange(version, true) ? addNameRange - : addNameTag - ) - fn(name, version, data, cb) + if (semver.valid(version, true)) { + log.verbose('addNamed', JSON.stringify(version), 'is a plain semver version for', name) + addNameVersion(name, version, data, cb) + } else if (semver.validRange(version, true)) { + log.verbose('addNamed', JSON.stringify(version), 'is a valid semver range for', name) + addNameRange(name, version, data, cb) + } else { + log.verbose('addNamed', JSON.stringify(version), 'is being treated as a dist-tag for', name) + addNameTag(name, version, data, cb) + } } function addNameTag (name, tag, data, cb) { diff --git a/deps/npm/lib/cache/add-remote-git.js b/deps/npm/lib/cache/add-remote-git.js index cf0a5d4c8c..84d5207dd0 100644 --- a/deps/npm/lib/cache/add-remote-git.js +++ b/deps/npm/lib/cache/add-remote-git.js @@ -95,10 +95,13 @@ module.exports = function addRemoteGit (uri, silent, cb) { ['config', '--get', 'remote.origin.url'], { cwd: cachedRemote, env: gitEnv() }, function (er, stdout, stderr) { - var originURL = stdout.trim() - stderr = stderr.trim() - log.verbose('addRemoteGit', 'remote.origin.url:', originURL) + var originURL + if (stdout) { + originURL = stdout.trim() + log.verbose('addRemoteGit', 'remote.origin.url:', originURL) + } + if (stderr) stderr = stderr.trim() if (stderr || er) { log.warn('addRemoteGit', 'resetting remote', cachedRemote, 'because of error:', stderr || er) return resetRemote(cb) diff --git a/deps/npm/lib/cache/maybe-github.js b/deps/npm/lib/cache/maybe-github.js index 1a033c3d5a..60c14a0225 100644 --- a/deps/npm/lib/cache/maybe-github.js +++ b/deps/npm/lib/cache/maybe-github.js @@ -1,19 +1,21 @@ -var assert = require("assert") - , log = require("npmlog") - , addRemoteGit = require("./add-remote-git.js") - , hosted = require("hosted-git-info") +var assert = require('assert') + +var hosted = require('hosted-git-info') +var log = require('npmlog') + +var addRemoteGit = require('./add-remote-git.js') module.exports = function maybeGithub (p, cb) { - assert(typeof p === "string", "must pass package name") - assert(typeof cb === "function", "must pass callback") + assert(typeof p === 'string', 'must pass package name') + assert(typeof cb === 'function', 'must pass callback') var parsed = hosted.fromUrl(p) - log.info("maybeGithub", "Attempting %s from %s", p, parsed.git()) + log.info('maybeGithub', 'Attempting %s from %s', p, parsed.git()) return addRemoteGit(parsed.git(), true, function (er, data) { if (er) { - log.info("maybeGithub", "Couldn't clone %s", parsed.git()) - log.info("maybeGithub", "Now attempting %s from %s", p, parsed.sshurl()) + log.info('maybeGithub', "Couldn't clone %s", parsed.git()) + log.info('maybeGithub', 'Now attempting %s from %s', p, parsed.sshurl()) return addRemoteGit(parsed.sshurl(), false, function (er, data) { if (er) return cb(er) diff --git a/deps/npm/lib/config/core.js b/deps/npm/lib/config/core.js index fc1569eaf3..f11a98dfb8 100644 --- a/deps/npm/lib/config/core.js +++ b/deps/npm/lib/config/core.js @@ -74,9 +74,10 @@ function load () { loading = true cb = once(function (er, conf) { - if (!er) + if (!er) { exports.loaded = conf loading = false + } loadCbs.forEach(function (fn) { fn(er, conf) }) diff --git a/deps/npm/lib/install.js b/deps/npm/lib/install.js index d9a8c9af0d..7d38406442 100644 --- a/deps/npm/lib/install.js +++ b/deps/npm/lib/install.js @@ -223,8 +223,9 @@ function install (args, cb_) { // initial "family" is the name:version of the root, if it's got // a package.json file. - var jsonFile = path.resolve(where, "package.json") - readJson(jsonFile, log.warn, function (er, data) { + var jsonPath = path.resolve(where, "package.json") + log.verbose('install', 'initial load of', jsonPath) + readJson(jsonPath, log.warn, function (er, data) { if (er && er.code !== "ENOENT" && er.code !== "ENOTDIR") return cb(er) @@ -246,7 +247,9 @@ function install (args, cb_) { } function validateInstall (where, cb) { - readJson(path.resolve(where, 'package.json'), log.warn, function (er, data) { + var jsonPath = path.resolve(where, 'package.json') + log.verbose('validateInstall', 'loading', jsonPath, 'for validation') + readJson(jsonPath, log.warn, function (er, data) { if (er && er.code !== 'ENOENT' && er.code !== 'ENOTDIR') return cb(er) @@ -314,11 +317,11 @@ function findPeerInvalid_ (packageMap, fpiList) { function readDependencies (context, where, opts, cb) { var wrap = context ? context.wrap : null - readJson( path.resolve(where, "package.json") - , log.warn - , function (er, data) { + var jsonPath = path.resolve(where, 'package.json') + log.verbose('readDependencies', 'loading dependencies from', jsonPath) + readJson(jsonPath, log.warn, function (er, data) { if (er && er.code === "ENOENT") er.code = "ENOPACKAGEJSON" - if (er) return cb(er) + if (er) return cb(er) if (opts && opts.dev) { if (!data.dependencies) data.dependencies = {} @@ -472,7 +475,7 @@ function save (where, installed, tree, pretty, hasArguments, cb) { data.bundleDependencies = bundle.sort() } - log.verbose("saving", things) + log.verbose("save", "saving", things) data[deps] = data[deps] || {} Object.keys(things).forEach(function (t) { data[deps][t] = things[t] @@ -485,6 +488,7 @@ function save (where, installed, tree, pretty, hasArguments, cb) { data[deps] = sortedObject(data[deps]) + log.silly("save", "writing", saveTarget) data = JSON.stringify(data, null, 2) + "\n" writeFileAtomic(saveTarget, data, function (er) { cb(er, installed, tree, pretty) @@ -601,7 +605,9 @@ function installManyTop (what, where, context, cb_) { if (context.explicit) return next() - readJson(path.join(where, "package.json"), log.warn, function (er, data) { + var jsonPath = path.join(where, 'package.json') + log.verbose('installManyTop', 'reading for lifecycle', jsonPath) + readJson(jsonPath, log.warn, function (er, data) { if (er) return next(er) lifecycle(data, "preinstall", where, next) }) @@ -636,8 +642,9 @@ function installManyTop_ (what, where, context, cb) { // recombine unscoped with @scope/package packages asyncMap(unscoped.concat(scoped).map(function (p) { return path.resolve(nm, p, "package.json") - }), function (jsonfile, cb) { - readJson(jsonfile, log.warn, function (er, data) { + }), function (jsonPath, cb) { + log.verbose('installManyTop', 'reading scoped package data from', jsonPath) + readJson(jsonPath, log.warn, function (er, data) { if (er && er.code !== "ENOENT" && er.code !== "ENOTDIR") return cb(er) if (er) return cb(null, []) cb(null, [[data.name, data.version]]) @@ -789,7 +796,9 @@ function targetResolver (where, context, deps) { }) asyncMap(inst, function (pkg, cb) { - readJson(path.resolve(name, pkg, "package.json"), log.warn, function (er, d) { + var jsonPath = path.resolve(name, pkg, 'package.json') + log.verbose('targetResolver', 'reading package data from', jsonPath) + readJson(jsonPath, log.warn, function (er, d) { if (er && er.code !== "ENOENT" && er.code !== "ENOTDIR") return cb(er) // error means it's not a package, most likely. if (er) return cb(null, []) @@ -930,11 +939,11 @@ function installOne (target, where, context, cb) { function localLink (target, where, context, cb) { log.verbose("localLink", target._id) - var jsonFile = path.resolve( npm.globalDir, target.name - , "package.json" ) - , parent = context.parent + var jsonPath = path.resolve(npm.globalDir, target.name , 'package.json') + var parent = context.parent - readJson(jsonFile, log.warn, function (er, data) { + log.verbose('localLink', 'reading data to link', target.name, 'from', jsonPath) + readJson(jsonPath, log.warn, function (er, data) { function thenLink () { npm.commands.link([target.name], function (er, d) { log.silly("localLink", "back from link", [er, d]) @@ -1057,23 +1066,24 @@ function write (target, targetFolder, context, cb_) { log.silly("install write", "writing", target.name, target.version, "to", targetFolder) chain( - [ [ cache.unpack, target.name, target.version, targetFolder - , null, null, user, group ] - , [ fs, "writeFile" - , path.resolve(targetFolder, "package.json") - , JSON.stringify(target, null, 2) + "\n" ] - , [ lifecycle, target, "preinstall", targetFolder ] - , function (cb) { - if (!target.bundleDependencies) return cb() - - var bd = path.resolve(targetFolder, "node_modules") - fs.readdir(bd, function (er, b) { - // nothing bundled, maybe - if (er) return cb() - bundled = b || [] - cb() - }) - } ] + [ [ cache.unpack, target.name, target.version, targetFolder, null, null, user, group ], + function writePackageJSON (cb) { + var jsonPath = path.resolve(targetFolder, 'package.json') + log.verbose('write', 'writing to', jsonPath) + writeFileAtomic(jsonPath, JSON.stringify(target, null, 2) + '\n', cb) + }, + [ lifecycle, target, "preinstall", targetFolder ], + function collectBundled (cb) { + if (!target.bundleDependencies) return cb() + + var bd = path.resolve(targetFolder, "node_modules") + fs.readdir(bd, function (er, b) { + // nothing bundled, maybe + if (er) return cb() + bundled = b || [] + cb() + }) + } ] // nest the chain so that we can throw away the results returned // up until this point, since we really don't care about it. diff --git a/deps/npm/lib/run-script.js b/deps/npm/lib/run-script.js index b6aa5fe7e8..bf72bf814d 100644 --- a/deps/npm/lib/run-script.js +++ b/deps/npm/lib/run-script.js @@ -189,8 +189,7 @@ function run (pkg, wd, cmd, args, cb) { function joinArgs (args) { var joinedArgs = "" args.forEach(function(arg) { - if (arg.match(/[ '"]/)) arg = '"' + arg.replace(/"/g, '\\"') + '"' - joinedArgs += " " + arg + joinedArgs += ' "' + arg.replace(/"/g, '\\"') + '"' }) return joinedArgs } diff --git a/deps/npm/lib/unbuild.js b/deps/npm/lib/unbuild.js index ede8482c40..d5fe0e6a0d 100644 --- a/deps/npm/lib/unbuild.js +++ b/deps/npm/lib/unbuild.js @@ -30,7 +30,6 @@ function unbuild_ (silent) { return function (folder, cb_) { readJson(path.resolve(folder, "package.json"), function (er, pkg) { // if no json, then just trash it, but no scripts or whatever. if (er) return gentlyRm(folder, false, base, cb) - readJson.cache.del(folder) chain ( [ [lifecycle, pkg, "preuninstall", folder, false, true] , [lifecycle, pkg, "uninstall", folder, false, true] @@ -53,8 +52,6 @@ function rmStuff (pkg, folder, cb) { , gnm = npm.dir , top = gnm === parent - readJson.cache.del(path.resolve(folder, "package.json")) - log.verbose("unbuild rmStuff", pkg._id, "from", gnm) if (!top) log.verbose("unbuild rmStuff", "in", parent) asyncMap([rmBins, rmMans], function (fn, cb) { diff --git a/deps/npm/lib/utils/git.js b/deps/npm/lib/utils/git.js index a312770a88..9c80ea5537 100644 --- a/deps/npm/lib/utils/git.js +++ b/deps/npm/lib/utils/git.js @@ -20,11 +20,7 @@ function prefixGitArgs () { function execGit (args, options, cb) { log.info('git', args) var fullArgs = prefixGitArgs().concat(args || []) - return exec(git, fullArgs, options, function (err) { - if (err) log.error('git', fullArgs.join(' ')) - - cb.apply(null, arguments) - }) + return exec(git, fullArgs, options, cb) } function spawnGit (args, options) { |