From e35c067aad35fabb4c379419732ec9c441461411 Mon Sep 17 00:00:00 2001 From: Maksim <m.v.sharipov@gmail.com> Date: Tue, 13 Sep 2022 17:28:13 +0200 Subject: [PATCH] fix: generate pretty package version name properly (#17310) Co-authored-by: Rhys Arkins <rhys@arkins.net> --- .../repository/updates/generate.spec.ts | 23 +++++++++++++++++++ lib/workers/repository/updates/generate.ts | 12 +++++++--- 2 files changed, 32 insertions(+), 3 deletions(-) diff --git a/lib/workers/repository/updates/generate.spec.ts b/lib/workers/repository/updates/generate.spec.ts index a2eabaeecd..782ec1dc7c 100644 --- a/lib/workers/repository/updates/generate.spec.ts +++ b/lib/workers/repository/updates/generate.spec.ts @@ -1078,6 +1078,29 @@ describe('workers/repository/updates/generate', () => { ); }); + it('generates pretty version name properly', () => { + const branch: BranchUpgradeConfig[] = [ + { + ...defaultConfig, + depName: 'some-dep', + isSingleVersion: true, + manager: 'some-manager', + newValue: 'foo-pkg-v3.2.1', + newVersion: 'foo-pkg-v3.2.1', + semanticCommits: 'enabled', + semanticCommitScope: 'package', + semanticCommitType: 'chore', + } as BranchUpgradeConfig, + ]; + const res = generateBranchConfig(branch); + expect(res.prTitle).toBe( + 'chore(package): update dependency some-dep to foo-pkg-v3.2.1' + ); + expect(res.commitMessage).toBe( + 'chore(package): update dependency some-dep to foo-pkg-v3.2.1' + ); + }); + it('prevents issue with duplicating "v" character', () => { const branch: BranchUpgradeConfig[] = [ { diff --git a/lib/workers/repository/updates/generate.ts b/lib/workers/repository/updates/generate.ts index 20ebc0de9d..02278169c7 100644 --- a/lib/workers/repository/updates/generate.ts +++ b/lib/workers/repository/updates/generate.ts @@ -12,6 +12,14 @@ import * as template from '../../../util/template'; import type { BranchConfig, BranchUpgradeConfig } from '../../types'; import { CommitMessage } from '../model/commit-message'; +function prettifyVersion(version: string): string { + if (regEx(/^\d/).test(version)) { + return `v${version}`; + } + + return version; +} + function isTypesGroup(branchUpgrades: BranchUpgradeConfig[]): boolean { return ( branchUpgrades.some(({ depName }) => depName?.startsWith('@types/')) && @@ -84,9 +92,7 @@ export function generateBranchConfig( toValues.add(upg.newValue!); // prettify newVersion and newMajor for printing if (upg.newVersion) { - upg.prettyNewVersion = upg.newVersion.startsWith('v') - ? upg.newVersion - : `v${upg.newVersion}`; + upg.prettyNewVersion = prettifyVersion(upg.newVersion); } if (upg.newMajor) { upg.prettyNewMajor = `v${upg.newMajor}`; -- GitLab