From e61a32aef18cc54a7e2d4ef22c2106e0be48a6dd Mon Sep 17 00:00:00 2001
From: Rhys Arkins <rhys@arkins.net>
Date: Fri, 12 Feb 2021 19:06:40 +0100
Subject: [PATCH] refactor: lookup updates loop

---
 .../repository/process/lookup/index.ts        | 27 ++++++++++---------
 1 file changed, 14 insertions(+), 13 deletions(-)

diff --git a/lib/workers/repository/process/lookup/index.ts b/lib/workers/repository/process/lookup/index.ts
index 75cb18b679..bdc17e62ca 100644
--- a/lib/workers/repository/process/lookup/index.ts
+++ b/lib/workers/repository/process/lookup/index.ts
@@ -341,6 +341,20 @@ export async function lookupUpdates(
       update.newMinor = version.getMinor(toVersion);
       update.updateType =
         update.updateType || getType(config, update.fromVersion, toVersion);
+
+      const bucket = getBucket(config, update);
+      if (buckets[bucket]) {
+        buckets[bucket].push(update);
+      } else {
+        buckets[bucket] = [update];
+      }
+    }
+    for (const updates of Object.values(buckets)) {
+      const sortedUpdates = updates.sort((u1, u2) =>
+        version.sortVersions(u1.toVersion, u2.toVersion)
+      );
+      const update = sortedUpdates.pop();
+      const { toVersion } = update;
       update.isSingleVersion =
         update.isSingleVersion || !!version.isSingleVersion(update.newValue);
       if (!version.isVersion(update.newValue)) {
@@ -359,19 +373,6 @@ export async function lookupUpdates(
           update[field] = updateRelease[field] as never;
         }
       });
-
-      const bucket = getBucket(config, update);
-      if (buckets[bucket]) {
-        buckets[bucket].push(update);
-      } else {
-        buckets[bucket] = [update];
-      }
-    }
-    for (const updates of Object.values(buckets)) {
-      const sortedUpdates = updates.sort((u1, u2) =>
-        version.sortVersions(u1.toVersion, u2.toVersion)
-      );
-      const update = sortedUpdates.pop();
       if (sortedUpdates.length) {
         update.skippedOverVersions = sortedUpdates.map((u) => u.toVersion);
       }
-- 
GitLab