feat: cut releases from release branches (#31033)

This commit is contained in:
bo0tzz
2026-08-27 15:10:07 +02:00
committed by GitHub
parent 3be6b12292
commit a366db1494
11 changed files with 70 additions and 32 deletions
@@ -32,6 +32,13 @@ describe(getNewVersion.name, () => {
['release', '2.8.0-rc.1', '2.8.0'],
],
},
{
name: 'cutting the next line while on a prerelease',
items: [
['preminor', '3.3.0-rc.0', '3.4.0-rc.0'],
['premajor', '3.3.0-rc.0', '4.0.0-rc.0'],
],
},
{
name: 'premajor',
items: [
@@ -58,8 +65,6 @@ describe(getNewVersion.name, () => {
['patch', 'v3.0.0-rc.0'],
['prepatch', 'v3.0.0-rc.0'],
['minor', 'v3.0.0-rc.0'],
['preminor', 'v3.0.0-rc.0'],
['premajor', 'v3.0.0-rc.0'],
['prerelease', 'v3.0.0'],
['release', 'v3.0.0'],
])('should not allow a $0 on $1', (type, version) => {
+8 -3
View File
@@ -123,15 +123,20 @@ export const getNewVersion = (versionRaw: string, type: string) => {
switch (type) {
case 'patch':
case 'prepatch':
case 'minor':
case 'preminor':
case 'premajor': {
case 'minor': {
newVersionRaw = inc(version, type);
// can only use while not in a prerelease
valid = !isPrerelease(version);
break;
}
case 'preminor':
case 'premajor': {
// cutting the next release line is allowed while main sits on a prerelease
newVersionRaw = inc(version, type);
break;
}
case 'prerelease': {
newVersionRaw = inc(version, type);
// can only use while in a prerelease