diff --git a/lib/manager/npm/registry.js b/lib/manager/npm/registry.js index 3448c9744b9ee7d0a5b6d639c98bb8ff13dadcde..ec5531c13488758e5818996362e2739069ae0ed6 100644 --- a/lib/manager/npm/registry.js +++ b/lib/manager/npm/registry.js @@ -81,7 +81,7 @@ async function getDependency(name) { time: res.time ? res.time[version] : '2017-01-01T12:00:00.000Z', }; }); - logger.trace({ dependency: dep }, 'dependency'); + logger.trace({ dep }, 'dep'); return dep; } catch (err) { logger.debug({ err }, `Dependency not found: ${name}`); diff --git a/lib/workers/package/versions.js b/lib/workers/package/versions.js index 0835f5de99e17f684dde1f202d353af3c8140ff5..4f340f55446face63ccbde3554a9d90c5d41fbc4 100644 --- a/lib/workers/package/versions.js +++ b/lib/workers/package/versions.js @@ -12,6 +12,8 @@ module.exports = { }; function determineUpgrades(npmDep, config) { + logger.debug(`determineUpgrades()`); + logger.trace({ npmDep, config }); const result = { type: 'warning', }; @@ -28,6 +30,7 @@ function determineUpgrades(npmDep, config) { // Check for a current range and pin it if (isRange(currentVersion)) { // Pin ranges to their maximum satisfying version + logger.debug('currentVersion is range'); const maxSatisfying = semver.maxSatisfying(versionList, currentVersion); allUpgrades.pin = { type: 'pin', @@ -37,19 +40,27 @@ function determineUpgrades(npmDep, config) { }; changeLogFromVersion = maxSatisfying; } else if (versionList.indexOf(currentVersion) === -1) { - const rollbackVersion = semver.maxSatisfying( - versionList, - `<${currentVersion}` - ); - allUpgrades.rollback = { - type: 'rollback', - isRollback: true, - newVersion: rollbackVersion, - newVersionMajor: semver.major(rollbackVersion), - semanticCommitType: 'fix', - branchName: - '{{branchPrefix}}rollback-{{depNameSanitized}}-{{newVersionMajor}}.x', - }; + logger.debug('Cannot find currentVersion'); + try { + const rollbackVersion = semver.maxSatisfying( + versionList, + `<${currentVersion}` + ); + allUpgrades.rollback = { + type: 'rollback', + isRollback: true, + newVersion: rollbackVersion, + newVersionMajor: semver.major(rollbackVersion), + semanticCommitType: 'fix', + branchName: + '{{branchPrefix}}rollback-{{depNameSanitized}}-{{newVersionMajor}}.x', + }; + } catch (err) /* istanbul ignore next */ { + logger.info( + { dependency: npmDep.name, currentVersion }, + 'Warning: current version is missing from npm registry and cannot roll back' + ); + } } _(versionList) // Filter out older versions as we can't upgrade to those