Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/npm/cli.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xbin/npm-cli.js7
-rw-r--r--lib/version.js20
2 files changed, 22 insertions, 5 deletions
diff --git a/bin/npm-cli.js b/bin/npm-cli.js
index a71985b37..79e5c9702 100755
--- a/bin/npm-cli.js
+++ b/bin/npm-cli.js
@@ -50,10 +50,9 @@ if (conf.version) {
}
if (conf.versions) {
- var v = process.versions
- v.npm = npm.version
- console.log(v)
- return
+ npm.command = "version"
+ conf.usage = false
+ npm.argv = []
}
log.info("using", "npm@%s", npm.version)
diff --git a/lib/version.js b/lib/version.js
index a1edf8575..fb00e21d3 100644
--- a/lib/version.js
+++ b/lib/version.js
@@ -20,8 +20,26 @@ version.usage = "npm version [<newversion> | major | minor | patch | build]\n"
function version (args, silent, cb_) {
if (typeof cb_ !== "function") cb_ = silent, silent = false
- if (args.length !== 1) return cb_(version.usage)
+ if (args.length > 1) return cb_(version.usage)
fs.readFile(path.join(process.cwd(), "package.json"), function (er, data) {
+ if (!args.length) {
+ var v = {}
+ Object.keys(process.versions).forEach(function (k) {
+ v[k] = process.versions[k]
+ })
+ v.npm = npm.version
+ try {
+ data = JSON.parse(data.toString())
+ } catch (er) {
+ data = null
+ }
+ if (data && data.name && data.version) {
+ v[data.name] = data.version
+ }
+ console.log(v)
+ return cb_()
+ }
+
if (er) {
log.error("version", "No package.json found")
return cb_(er)