From 4ec79bb01862dc7c2cbd3da08894728df556280e Mon Sep 17 00:00:00 2001
From: Rhys Arkins <rhys@arkins.net>
Date: Fri, 5 Oct 2018 06:39:53 +0200
Subject: [PATCH] fix: better detect common toVersion when grouping

Closes #2600
---
 lib/workers/repository/updates/generate.js       | 11 ++++++-----
 test/workers/repository/updates/generate.spec.js |  4 ++++
 2 files changed, 10 insertions(+), 5 deletions(-)

diff --git a/lib/workers/repository/updates/generate.js b/lib/workers/repository/updates/generate.js
index 70fa54d6e4..92b9150ddf 100644
--- a/lib/workers/repository/updates/generate.js
+++ b/lib/workers/repository/updates/generate.js
@@ -18,17 +18,18 @@ function generateBranchConfig(branchUpgrades) {
     if (!depNames.includes(upg.depName)) {
       depNames.push(upg.depName);
     }
-    if (upg.commitMessageExtra) {
-      const extra = handlebars.compile(upg.commitMessageExtra)(upg);
-      if (!newValue.includes(extra)) {
-        newValue.push(extra);
-      }
+    if (!newValue.includes(upg.toVersion)) {
+      newValue.push(upg.toVersion);
     }
   });
   const groupEligible =
     depNames.length > 1 ||
     newValue.length > 1 ||
     branchUpgrades[0].lazyGrouping === false;
+  if (branchUpgrades.length > 1 && !groupEligible) {
+    // eslint-disable-next-line no-param-reassign
+    branchUpgrades[0].commitMessageExtra = `to v${newValue[0]}`;
+  }
   logger.debug(`groupEligible: ${groupEligible}`);
   const useGroupSettings = hasGroupName && groupEligible;
   logger.debug(`useGroupSettings: ${useGroupSettings}`);
diff --git a/test/workers/repository/updates/generate.spec.js b/test/workers/repository/updates/generate.spec.js
index c8831b8006..d5455e4a93 100644
--- a/test/workers/repository/updates/generate.spec.js
+++ b/test/workers/repository/updates/generate.spec.js
@@ -89,6 +89,7 @@ describe('workers/repository/updates/generate', () => {
           lazyGrouping: true,
           foo: 1,
           newValue: '5.1.2',
+          toVersion: '5.1.2',
           group: {
             foo: 2,
           },
@@ -106,6 +107,7 @@ describe('workers/repository/updates/generate', () => {
           lazyGrouping: true,
           foo: 1,
           newValue: '5.1.2',
+          toVersion: '5.1.2',
           group: {
             foo: 2,
           },
@@ -133,6 +135,7 @@ describe('workers/repository/updates/generate', () => {
           lazyGrouping: true,
           foo: 1,
           newValue: '5.1.2',
+          toVersion: '5.1.2',
           group: {
             foo: 2,
           },
@@ -148,6 +151,7 @@ describe('workers/repository/updates/generate', () => {
           lazyGrouping: true,
           foo: 1,
           newValue: '1.1.0',
+          toVersion: '1.1.0',
           group: {
             foo: 2,
           },
-- 
GitLab