From d650427319e0568fba68ea9edea8cd93e4a97a13 Mon Sep 17 00:00:00 2001 From: Sergio Zharinov <zharinov@users.noreply.github.com> Date: Thu, 6 Feb 2020 19:29:50 +0400 Subject: [PATCH] fix(composer): Remove leading `v` in comparison (#5396) --- lib/versioning/composer/index.ts | 8 ++++++-- test/versioning/composer.spec.ts | 9 +++++++++ 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/lib/versioning/composer/index.ts b/lib/versioning/composer/index.ts index 721c58515f..d1f7b686d3 100644 --- a/lib/versioning/composer/index.ts +++ b/lib/versioning/composer/index.ts @@ -11,8 +11,12 @@ function padZeroes(input: string): string { return sections.join('.'); } +function removeLeadingV(input: string): string { + return input.replace(/^v/i, ''); +} + function composer2npm(input: string): string { - const cleanInput = input.replace(/^v/, ''); + const cleanInput = removeLeadingV(input); if (npm.isVersion(cleanInput)) { return cleanInput; } @@ -83,7 +87,7 @@ function getNewValue({ } else if ( npm.isVersion(padZeroes(toVersion)) && npm.isValid(currentValue) && - composer2npm(currentValue) === currentValue + composer2npm(currentValue) === removeLeadingV(currentValue) ) { newValue = npm.getNewValue({ currentValue, diff --git a/test/versioning/composer.spec.ts b/test/versioning/composer.spec.ts index 4496b70b6f..6097d526b4 100644 --- a/test/versioning/composer.spec.ts +++ b/test/versioning/composer.spec.ts @@ -257,5 +257,14 @@ describe('semver.getNewValue()', () => { toVersion: '3.7', }) ).toEqual('3.7.*'); + + expect( + semver.getNewValue({ + currentValue: 'v3.1.*', + rangeStrategy: 'replace', + fromVersion: '3.1.10', + toVersion: '3.2.0', + }) + ).toEqual('v3.2.*'); // #5388 }); }); -- GitLab