From f74f764a8079e7e8878a1b7d20c57dc2d8d012b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stephan=20B=C3=B6nnemann?= Date: Fri, 3 Apr 2015 19:37:39 +0200 Subject: [PATCH] fix(npm-info): registry unexpectedly returned no json formatted error This only affected publishing of yet unreleased packages. --- lib/npm-info.js | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/lib/npm-info.js b/lib/npm-info.js index c77a05c5..ee795bfa 100644 --- a/lib/npm-info.js +++ b/lib/npm-info.js @@ -6,20 +6,21 @@ var efh = require('./error').efh module.exports = function (pkgName, cb) { request(process.env.npm_config_registry + pkgName, efh(cb)(function (response, body) { + var res = { + version: null, + gitHead: null, + pkg: null + } + + if (response.statusCode === 404 || !body) return cb(null, res) + var pkg = JSON.parse(body) if (pkg.error && response.statusCode !== 404) return cb(pkg.error) - var res = { - version: '', - gitHead: '', - pkg: pkg - } - - if (response.statusCode === 404) return cb(null, res) - res.version = pkg['dist-tags'].latest res.gitHead = pkg.versions[res.version].gitHead + res.pkg = pkg cb(null, res) }))