From 67eb76d4065bbd044a4a2299092e2224e438805a Mon Sep 17 00:00:00 2001 From: Martin Herndl <martin.herndl@icis.com> Date: Sat, 18 Dec 2021 21:55:13 +0100 Subject: [PATCH] feat(composer): support composer platform package constraint (#13186) --- lib/manager/composer/utils.spec.ts | 12 ++++++++++++ lib/manager/composer/utils.ts | 6 ++++++ 2 files changed, 18 insertions(+) diff --git a/lib/manager/composer/utils.spec.ts b/lib/manager/composer/utils.spec.ts index 5553063184..ff972e6a9f 100644 --- a/lib/manager/composer/utils.spec.ts +++ b/lib/manager/composer/utils.spec.ts @@ -27,6 +27,18 @@ describe('manager/composer/utils', () => { ).toEqual({ composer: '1.1.0' }); }); + it('returns from composer platform require', () => { + expect( + extractContraints({ require: { php: '^8.1', composer: '2.2.0' } }, {}) + ).toEqual({ php: '^8.1', composer: '2.2.0' }); + }); + + it('returns from composer platform require-dev', () => { + expect( + extractContraints({ 'require-dev': { composer: '^2.2' } }, {}) + ).toEqual({ composer: '^2.2' }); + }); + it('returns from composer-runtime-api', () => { expect( extractContraints({ require: { 'composer-runtime-api': '^1.1.0' } }, {}) diff --git a/lib/manager/composer/utils.ts b/lib/manager/composer/utils.ts index 5b6b3a2c00..3841400c03 100644 --- a/lib/manager/composer/utils.ts +++ b/lib/manager/composer/utils.ts @@ -71,6 +71,12 @@ export function extractContraints( } else if (composerJson['require-dev']?.['composer/composer']) { res.composer = composerJson['require-dev']?.['composer/composer']; } + // composer platform package + else if (composerJson.require?.['composer']) { + res.composer = composerJson.require?.['composer']; + } else if (composerJson['require-dev']?.['composer']) { + res.composer = composerJson['require-dev']?.['composer']; + } // check last used composer version else if (lockParsed?.['plugin-api-version']) { const major = api.getMajor(lockParsed?.['plugin-api-version']); -- GitLab