From bc652673bab8df561e862b771d448f77bfd16b90 Mon Sep 17 00:00:00 2001
From: Rhys Arkins <rhys@arkins.net>
Date: Tue, 5 Jun 2018 10:48:38 +0200
Subject: [PATCH] fix: properly handle null rollback

---
 lib/workers/repository/process/lookup/index.js    | 11 ++++++++++-
 lib/workers/repository/process/lookup/rollback.js |  4 ++--
 2 files changed, 12 insertions(+), 3 deletions(-)

diff --git a/lib/workers/repository/process/lookup/index.js b/lib/workers/repository/process/lookup/index.js
index 8ca9c398ab..94fa620262 100644
--- a/lib/workers/repository/process/lookup/index.js
+++ b/lib/workers/repository/process/lookup/index.js
@@ -77,7 +77,16 @@ async function lookupUpdates(config) {
   );
   const updates = [];
   if (!allSatisfyingVersions.length) {
-    updates.push(getRollbackUpdate(config, allVersions));
+    const rollback = getRollbackUpdate(config, allVersions);
+    if (!rollback) {
+      return [
+        {
+          type: 'warning',
+          message: `Can't find version matching ${currentValue} for ${depName}`,
+        },
+      ];
+    }
+    updates.push(rollback);
   }
   const rangeStrategy = getRangeStrategy(config);
   const fromVersion = getFromVersion(config, rangeStrategy, allVersions);
diff --git a/lib/workers/repository/process/lookup/rollback.js b/lib/workers/repository/process/lookup/rollback.js
index b300d699af..086d4a454b 100644
--- a/lib/workers/repository/process/lookup/rollback.js
+++ b/lib/workers/repository/process/lookup/rollback.js
@@ -15,7 +15,7 @@ function getRollbackUpdate(config, versions) {
       { versionScheme },
       'Current version scheme does not support isLessThanRange()'
     );
-    return [];
+    return null;
   }
   const lessThanVersions = versions.filter(version =>
     isLessThanRange(version, currentValue)
@@ -26,7 +26,7 @@ function getRollbackUpdate(config, versions) {
       { packageFile, depName, currentValue },
       'Missing version has nothing to roll back to'
     );
-    return [];
+    return null;
   }
   logger.info(
     { packageFile, depName, currentValue },
-- 
GitLab