From 32f79884934cb3a246bccef1e812d8decbc3931a Mon Sep 17 00:00:00 2001
From: LeoniePhiline <22329650+LeoniePhiline@users.noreply.github.com>
Date: Fri, 11 Feb 2022 17:12:55 +0100
Subject: [PATCH] feat(composer): Default to 'widen' rangeStrategy for TYPO3
 extensions (#14175)

---
 lib/manager/composer/range.spec.ts | 10 ++++++++++
 lib/manager/composer/range.ts      |  2 +-
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/lib/manager/composer/range.spec.ts b/lib/manager/composer/range.spec.ts
index 2f1d3621e0..ad94f004fe 100644
--- a/lib/manager/composer/range.spec.ts
+++ b/lib/manager/composer/range.spec.ts
@@ -41,4 +41,14 @@ describe('manager/composer/range', () => {
     const config: RangeConfig = { rangeStrategy: 'auto', depType: 'require' };
     expect(getRangeStrategy(config)).toBe('replace');
   });
+  it('defaults to widen for TYPO3 extensions', () => {
+    const config: RangeConfig = {
+      managerData: {
+        composerJsonType: 'typo3-cms-extension',
+      },
+      rangeStrategy: 'auto',
+      depType: 'require',
+    };
+    expect(getRangeStrategy(config)).toBe('widen');
+  });
 });
diff --git a/lib/manager/composer/range.ts b/lib/manager/composer/range.ts
index 0b9936cfdf..dbbca8c541 100644
--- a/lib/manager/composer/range.ts
+++ b/lib/manager/composer/range.ts
@@ -42,7 +42,7 @@ export function getRangeStrategy(config: RangeConfig): RangeStrategy {
     logger.trace({ dependency: depName }, 'Pinning app require');
     return 'pin';
   }
-  if (isComplexRange) {
+  if (isComplexRange || ['typo3-cms-extension'].includes(composerJsonType)) {
     return 'widen';
   }
   return 'replace';
-- 
GitLab