diff --git a/lib/utils/read-json.js b/lib/utils/read-json.js index fdaaea21..7d9b1e4b 100644 --- a/lib/utils/read-json.js +++ b/lib/utils/read-json.js @@ -116,6 +116,7 @@ function processObject (opts, cb) { return function (er, json) { if (cb) return cb(e) throw e } + json.version = semver.clean(json.version) if (json.main) json.main = json.main.replace(/(\.js|\.node)$/, '') diff --git a/lib/utils/semver.js b/lib/utils/semver.js index 0763978d..5199c7bc 100644 --- a/lib/utils/semver.js +++ b/lib/utils/semver.js @@ -15,7 +15,7 @@ Object.getOwnPropertyNames(expressions).forEach(function (i) { exports[i] = function (str) { return (str || "").match(expressions[i]) } }) exports.rangeReplace = ">=$1 <=$7" - +exports.clean = clean exports.compare = compare exports.satisfies = satisfies exports.gt = gt @@ -25,6 +25,11 @@ exports.validPackage = validPackage exports.validRange = validRange exports.maxSatisfying = maxSatisfying +function clean (ver) { + v = exports.parse(ver) + if (!v) return v + return [v[1]||'', v[2]||'', v[3]||''].join(".") + (v[4]||'') + (v[5]||'') +} function valid (version) { return exports.parse(version) && version.trim().replace(/^[v=]+/, '') }