Skip to content

Commit

Permalink
Merge pull request #2436 from restfulhead/fix-2435
Browse files Browse the repository at this point in the history
fix: next version calculation for tags that contain a name/prefix
  • Loading branch information
hipstersmoothie committed Feb 24, 2024
2 parents 921976d + fcad699 commit ccd2092
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 1 deletion.
25 changes: 25 additions & 0 deletions packages/core/src/__tests__/release.test.ts
Expand Up @@ -531,6 +531,31 @@ describe("Release", () => {
expect(writeSpy.mock.calls[0][1].includes(`1.0.1`)).toBe(true);
});

test("creates changelog with named tag and version prefix", async () => {
const gh = new Release(git, {
noVersionPrefix: false,
prereleaseBranches: ["next"],
labels: defaultLabels,
baseBranch: "main",
});
await gh.addToChangelog("# My new Notes", "my-tag-name-v1.0.0", "v1.0.0");

expect(writeSpy.mock.calls[0][1].includes(`v1.0.1`)).toBe(true);
});

test("creates changelog with named tag", async () => {
const gh = new Release(git, {
noVersionPrefix: true,
prereleaseBranches: ["next"],
labels: defaultLabels,
baseBranch: "main",
});
await gh.addToChangelog("# My new Notes", "my-tag-name-1.0.0", "1.0.0");

expect(writeSpy.mock.calls[0][1].includes(`1.0.1`)).toBe(true);
});


test("prepends to old changelog", async () => {
const gh = new Release(git, config);

Expand Down
4 changes: 3 additions & 1 deletion packages/core/src/release.ts
Expand Up @@ -423,7 +423,9 @@ export default class Release {
/** Given a tag get the next incremented version */
async calcNextVersion(lastTag: string) {
const bump = await this.getSemverBump(lastTag);
return inc(lastTag, bump as ReleaseType);
const matches = lastTag.match(/(\d+\.\d+\.\d+)/)
const lastVersion = matches ? matches[0] : lastTag
return inc(lastVersion, bump as ReleaseType);
}

/** Create the class that will parse the log for PR info */
Expand Down

0 comments on commit ccd2092

Please sign in to comment.