Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 83d6bde

Browse files
refactor(Prerelease): use enum
1 parent 4b72cf8 commit 83d6bde

File tree

5 files changed

+203
-185
lines changed

5 files changed

+203
-185
lines changed

‎commitizen/commands/bump.py‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -173,7 +173,7 @@ def __call__(self) -> None: # noqa: C901
173173
increment: SemVerIncrement | None = SemVerIncrement.safe_cast(
174174
self.arguments["increment"]
175175
)
176-
prerelease: Prerelease|None=self.arguments["prerelease"]
176+
prerelease=Prerelease.safe_cast(self.arguments["prerelease"])
177177
devrelease: int | None = self.arguments["devrelease"]
178178
is_files_only: bool | None = self.arguments["files_only"]
179179
is_local_version: bool = self.arguments["local_version"]

‎commitizen/version_schemes.py‎

Lines changed: 27 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,12 @@
33
import re
44
import sys
55
import warnings
6+
from enum import Enum
67
from itertools import zip_longest
78
from typing import (
89
TYPE_CHECKING,
910
Any,
1011
ClassVar,
11-
Literal,
1212
Protocol,
1313
cast,
1414
runtime_checkable,
@@ -41,7 +41,24 @@
4141
from typing import Self
4242

4343

44-
Prerelease: TypeAlias = Literal["alpha", "beta", "rc"]
44+
class Prerelease(Enum):
45+
ALPHA = "alpha"
46+
BETA = "beta"
47+
RC = "rc"
48+
49+
def __str__(self) -> str:
50+
return self.value
51+
52+
@classmethod
53+
def safe_cast(cls, value: str | None) -> Prerelease | None:
54+
if not value:
55+
return None
56+
try:
57+
return cls[value.upper()]
58+
except KeyError:
59+
return None
60+
61+
4562
DEFAULT_VERSION_PARSER = r"v?(?P<version>([0-9]+)\.([0-9]+)(?:\.([0-9]+))?(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+[0-9A-Za-z.]+)?(\w+)?)"
4663

4764

@@ -172,7 +189,7 @@ def prerelease(self) -> str | None:
172189
return None
173190

174191
def generate_prerelease(
175-
self, prerelease: str | None = None, offset: int = 0
192+
self, prerelease: Prerelease | None = None, offset: int = 0
176193
) -> str:
177194
"""Generate prerelease
178195
@@ -187,20 +204,18 @@ def generate_prerelease(
187204
if not prerelease:
188205
return ""
189206

207+
prerelease_value = prerelease.value
208+
new_prerelease_number = offset
209+
190210
# prevent down-bumping the pre-release phase, e.g. from 'b1' to 'a2'
191211
# https://packaging.python.org/en/latest/specifications/version-specifiers/#pre-releases
192212
# https://semver.org/#spec-item-11
193213
if self.is_prerelease and self.pre:
194-
prerelease = max(prerelease, self.pre[0])
214+
prerelease_value = max(prerelease_value, self.pre[0])
215+
if prerelease_value.startswith(self.pre[0]):
216+
new_prerelease_number = self.pre[1] + 1
195217

196-
# version.pre is needed for mypy check
197-
if self.is_prerelease and self.pre and prerelease.startswith(self.pre[0]):
198-
prev_prerelease: int = self.pre[1]
199-
new_prerelease_number = prev_prerelease + 1
200-
else:
201-
new_prerelease_number = offset
202-
pre_version = f"{prerelease}{new_prerelease_number}"
203-
return pre_version
218+
return f"{prerelease_value}{new_prerelease_number}"
204219

205220
def generate_devrelease(self, devrelease: int | None) -> str:
206221
"""Generate devrelease

‎tests/test_version_scheme_pep440.py‎

Lines changed: 88 additions & 85 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
import pytest
55

66
from commitizen.bump_rule import SemVerIncrement
7-
from commitizen.version_schemes import Pep440, VersionProtocol
7+
from commitizen.version_schemes import Pep440, Prerelease, VersionProtocol
88

99
simple_flow = [
1010
(("0.1.0", SemVerIncrement.PATCH, None, 0, None), "0.1.1"),
@@ -13,25 +13,25 @@
1313
(("0.2.0", SemVerIncrement.MINOR, None, 0, None), "0.3.0"),
1414
(("0.2.0", SemVerIncrement.MINOR, None, 0, 1), "0.3.0.dev1"),
1515
(("0.3.0", SemVerIncrement.PATCH, None, 0, None), "0.3.1"),
16-
(("0.3.0", SemVerIncrement.PATCH, "alpha", 0, None), "0.3.1a0"),
17-
(("0.3.1a0", None, "alpha", 0, None), "0.3.1a1"),
18-
(("0.3.0", SemVerIncrement.PATCH, "alpha", 1, None), "0.3.1a1"),
19-
(("0.3.1a0", None, "alpha", 1, None), "0.3.1a1"),
16+
(("0.3.0", SemVerIncrement.PATCH, Prerelease.ALPHA, 0, None), "0.3.1a0"),
17+
(("0.3.1a0", None, Prerelease.ALPHA, 0, None), "0.3.1a1"),
18+
(("0.3.0", SemVerIncrement.PATCH, Prerelease.ALPHA, 1, None), "0.3.1a1"),
19+
(("0.3.1a0", None, Prerelease.ALPHA, 1, None), "0.3.1a1"),
2020
(("0.3.1a0", None, None, 0, None), "0.3.1"),
2121
(("0.3.1", SemVerIncrement.PATCH, None, 0, None), "0.3.2"),
22-
(("0.4.2", SemVerIncrement.MAJOR, "alpha", 0, None), "1.0.0a0"),
23-
(("1.0.0a0", None, "alpha", 0, None), "1.0.0a1"),
24-
(("1.0.0a1", None, "alpha", 0, None), "1.0.0a2"),
25-
(("1.0.0a1", None, "alpha", 0, 1), "1.0.0a2.dev1"),
26-
(("1.0.0a2.dev0", None, "alpha", 0, 1), "1.0.0a3.dev1"),
27-
(("1.0.0a2.dev0", None, "alpha", 0, 0), "1.0.0a3.dev0"),
28-
(("1.0.0a1", None, "beta", 0, None), "1.0.0b0"),
29-
(("1.0.0b0", None, "beta", 0, None), "1.0.0b1"),
30-
(("1.0.0b1", None, "rc", 0, None), "1.0.0rc0"),
31-
(("1.0.0rc0", None, "rc", 0, None), "1.0.0rc1"),
32-
(("1.0.0rc0", None, "rc", 0, 1), "1.0.0rc1.dev1"),
22+
(("0.4.2", SemVerIncrement.MAJOR, Prerelease.ALPHA, 0, None), "1.0.0a0"),
23+
(("1.0.0a0", None, Prerelease.ALPHA, 0, None), "1.0.0a1"),
24+
(("1.0.0a1", None, Prerelease.ALPHA, 0, None), "1.0.0a2"),
25+
(("1.0.0a1", None, Prerelease.ALPHA, 0, 1), "1.0.0a2.dev1"),
26+
(("1.0.0a2.dev0", None, Prerelease.ALPHA, 0, 1), "1.0.0a3.dev1"),
27+
(("1.0.0a2.dev0", None, Prerelease.ALPHA, 0, 0), "1.0.0a3.dev0"),
28+
(("1.0.0a1", None, Prerelease.BETA, 0, None), "1.0.0b0"),
29+
(("1.0.0b0", None, Prerelease.BETA, 0, None), "1.0.0b1"),
30+
(("1.0.0b1", None, Prerelease.RC, 0, None), "1.0.0rc0"),
31+
(("1.0.0rc0", None, Prerelease.RC, 0, None), "1.0.0rc1"),
32+
(("1.0.0rc0", None, Prerelease.RC, 0, 1), "1.0.0rc1.dev1"),
3333
(("1.0.0rc0", SemVerIncrement.PATCH, None, 0, None), "1.0.0"),
34-
(("1.0.0a3.dev0", None, "beta", 0, None), "1.0.0b0"),
34+
(("1.0.0a3.dev0", None, Prerelease.BETA, 0, None), "1.0.0b0"),
3535
(("1.0.0", SemVerIncrement.PATCH, None, 0, None), "1.0.1"),
3636
(("1.0.1", SemVerIncrement.PATCH, None, 0, None), "1.0.2"),
3737
(("1.0.2", SemVerIncrement.MINOR, None, 0, None), "1.1.0"),
@@ -48,22 +48,22 @@
4848

4949
# never bump backwards on pre-releases
5050
linear_prerelease_cases = [
51-
(("0.1.1b1", None, "alpha", 0, None), "0.1.1b2"),
52-
(("0.1.1rc0", None, "alpha", 0, None), "0.1.1rc1"),
53-
(("0.1.1rc0", None, "beta", 0, None), "0.1.1rc1"),
51+
(("0.1.1b1", None, Prerelease.ALPHA, 0, None), "0.1.1b2"),
52+
(("0.1.1rc0", None, Prerelease.ALPHA, 0, None), "0.1.1rc1"),
53+
(("0.1.1rc0", None, Prerelease.BETA, 0, None), "0.1.1rc1"),
5454
]
5555

5656
weird_cases = [
5757
(("1.1", SemVerIncrement.PATCH, None, 0, None), "1.1.1"),
5858
(("1", SemVerIncrement.MINOR, None, 0, None), "1.1.0"),
5959
(("1", SemVerIncrement.MAJOR, None, 0, None), "2.0.0"),
60-
(("1a0", None, "alpha", 0, None), "1.0.0a1"),
61-
(("1a0", None, "alpha", 1, None), "1.0.0a1"),
62-
(("1", None, "beta", 0, None), "1.0.0b0"),
63-
(("1", None, "beta", 1, None), "1.0.0b1"),
64-
(("1beta", None, "beta", 0, None), "1.0.0b1"),
65-
(("1.0.0alpha1", None, "alpha", 0, None), "1.0.0a2"),
66-
(("1", None, "rc", 0, None), "1.0.0rc0"),
60+
(("1a0", None, Prerelease.ALPHA, 0, None), "1.0.0a1"),
61+
(("1a0", None, Prerelease.ALPHA, 1, None), "1.0.0a1"),
62+
(("1", None, Prerelease.BETA, 0, None), "1.0.0b0"),
63+
(("1", None, Prerelease.BETA, 1, None), "1.0.0b1"),
64+
(("1beta", None, Prerelease.BETA, 0, None), "1.0.0b1"),
65+
(("1.0.0alpha1", None, Prerelease.ALPHA, 0, None), "1.0.0a2"),
66+
(("1", None, Prerelease.RC, 0, None), "1.0.0rc0"),
6767
(("1.0.0rc1+e20d7b57f3eb", SemVerIncrement.PATCH, None, 0, None), "1.0.0"),
6868
]
6969

@@ -72,52 +72,52 @@
7272
(("0.1.1", SemVerIncrement.PATCH, None, 0, None), "0.1.2"),
7373
(("0.1.1", SemVerIncrement.MINOR, None, 0, None), "0.2.0"),
7474
(("2.1.1", SemVerIncrement.MAJOR, None, 0, None), "3.0.0"),
75-
(("0.9.0", SemVerIncrement.PATCH, "alpha", 0, None), "0.9.1a0"),
76-
(("0.9.0", SemVerIncrement.MINOR, "alpha", 0, None), "0.10.0a0"),
77-
(("0.9.0", SemVerIncrement.MAJOR, "alpha", 0, None), "1.0.0a0"),
78-
(("0.9.0", SemVerIncrement.MAJOR, "alpha", 1, None), "1.0.0a1"),
79-
(("1.0.0a2", None, "beta", 0, None), "1.0.0b0"),
80-
(("1.0.0a2", None, "beta", 1, None), "1.0.0b1"),
81-
(("1.0.0beta1", None, "rc", 0, None), "1.0.0rc0"),
82-
(("1.0.0rc1", None, "rc", 0, None), "1.0.0rc2"),
75+
(("0.9.0", SemVerIncrement.PATCH, Prerelease.ALPHA, 0, None), "0.9.1a0"),
76+
(("0.9.0", SemVerIncrement.MINOR, Prerelease.ALPHA, 0, None), "0.10.0a0"),
77+
(("0.9.0", SemVerIncrement.MAJOR, Prerelease.ALPHA, 0, None), "1.0.0a0"),
78+
(("0.9.0", SemVerIncrement.MAJOR, Prerelease.ALPHA, 1, None), "1.0.0a1"),
79+
(("1.0.0a2", None, Prerelease.BETA, 0, None), "1.0.0b0"),
80+
(("1.0.0a2", None, Prerelease.BETA, 1, None), "1.0.0b1"),
81+
(("1.0.0beta1", None, Prerelease.RC, 0, None), "1.0.0rc0"),
82+
(("1.0.0rc1", None, Prerelease.RC, 0, None), "1.0.0rc2"),
8383
]
8484

8585
# additional pre-release tests run through various release scenarios
8686
prerelease_cases = [
8787
#
88-
(("3.3.3", SemVerIncrement.PATCH, "alpha", 0, None), "3.3.4a0"),
89-
(("3.3.4a0", SemVerIncrement.PATCH, "alpha", 0, None), "3.3.4a1"),
90-
(("3.3.4a1", SemVerIncrement.MINOR, "alpha", 0, None), "3.4.0a0"),
91-
(("3.4.0a0", SemVerIncrement.PATCH, "alpha", 0, None), "3.4.0a1"),
92-
(("3.4.0a1", SemVerIncrement.MINOR, "alpha", 0, None), "3.4.0a2"),
93-
(("3.4.0a2", SemVerIncrement.MAJOR, "alpha", 0, None), "4.0.0a0"),
94-
(("4.0.0a0", SemVerIncrement.PATCH, "alpha", 0, None), "4.0.0a1"),
95-
(("4.0.0a1", SemVerIncrement.MINOR, "alpha", 0, None), "4.0.0a2"),
96-
(("4.0.0a2", SemVerIncrement.MAJOR, "alpha", 0, None), "4.0.0a3"),
88+
(("3.3.3", SemVerIncrement.PATCH, Prerelease.ALPHA, 0, None), "3.3.4a0"),
89+
(("3.3.4a0", SemVerIncrement.PATCH, Prerelease.ALPHA, 0, None), "3.3.4a1"),
90+
(("3.3.4a1", SemVerIncrement.MINOR, Prerelease.ALPHA, 0, None), "3.4.0a0"),
91+
(("3.4.0a0", SemVerIncrement.PATCH, Prerelease.ALPHA, 0, None), "3.4.0a1"),
92+
(("3.4.0a1", SemVerIncrement.MINOR, Prerelease.ALPHA, 0, None), "3.4.0a2"),
93+
(("3.4.0a2", SemVerIncrement.MAJOR, Prerelease.ALPHA, 0, None), "4.0.0a0"),
94+
(("4.0.0a0", SemVerIncrement.PATCH, Prerelease.ALPHA, 0, None), "4.0.0a1"),
95+
(("4.0.0a1", SemVerIncrement.MINOR, Prerelease.ALPHA, 0, None), "4.0.0a2"),
96+
(("4.0.0a2", SemVerIncrement.MAJOR, Prerelease.ALPHA, 0, None), "4.0.0a3"),
9797
#
98-
(("1.0.0", SemVerIncrement.PATCH, "alpha", 0, None), "1.0.1a0"),
99-
(("1.0.1a0", SemVerIncrement.PATCH, "alpha", 0, None), "1.0.1a1"),
100-
(("1.0.1a1", SemVerIncrement.MINOR, "alpha", 0, None), "1.1.0a0"),
101-
(("1.1.0a0", SemVerIncrement.PATCH, "alpha", 0, None), "1.1.0a1"),
102-
(("1.1.0a1", SemVerIncrement.MINOR, "alpha", 0, None), "1.1.0a2"),
103-
(("1.1.0a2", SemVerIncrement.MAJOR, "alpha", 0, None), "2.0.0a0"),
98+
(("1.0.0", SemVerIncrement.PATCH, Prerelease.ALPHA, 0, None), "1.0.1a0"),
99+
(("1.0.1a0", SemVerIncrement.PATCH, Prerelease.ALPHA, 0, None), "1.0.1a1"),
100+
(("1.0.1a1", SemVerIncrement.MINOR, Prerelease.ALPHA, 0, None), "1.1.0a0"),
101+
(("1.1.0a0", SemVerIncrement.PATCH, Prerelease.ALPHA, 0, None), "1.1.0a1"),
102+
(("1.1.0a1", SemVerIncrement.MINOR, Prerelease.ALPHA, 0, None), "1.1.0a2"),
103+
(("1.1.0a2", SemVerIncrement.MAJOR, Prerelease.ALPHA, 0, None), "2.0.0a0"),
104104
#
105-
(("1.0.0", SemVerIncrement.MINOR, "alpha", 0, None), "1.1.0a0"),
106-
(("1.1.0a0", SemVerIncrement.PATCH, "alpha", 0, None), "1.1.0a1"),
107-
(("1.1.0a1", SemVerIncrement.MINOR, "alpha", 0, None), "1.1.0a2"),
108-
(("1.1.0a2", SemVerIncrement.PATCH, "alpha", 0, None), "1.1.0a3"),
109-
(("1.1.0a3", SemVerIncrement.MAJOR, "alpha", 0, None), "2.0.0a0"),
105+
(("1.0.0", SemVerIncrement.MINOR, Prerelease.ALPHA, 0, None), "1.1.0a0"),
106+
(("1.1.0a0", SemVerIncrement.PATCH, Prerelease.ALPHA, 0, None), "1.1.0a1"),
107+
(("1.1.0a1", SemVerIncrement.MINOR, Prerelease.ALPHA, 0, None), "1.1.0a2"),
108+
(("1.1.0a2", SemVerIncrement.PATCH, Prerelease.ALPHA, 0, None), "1.1.0a3"),
109+
(("1.1.0a3", SemVerIncrement.MAJOR, Prerelease.ALPHA, 0, None), "2.0.0a0"),
110110
#
111-
(("1.0.0", SemVerIncrement.MAJOR, "alpha", 0, None), "2.0.0a0"),
112-
(("2.0.0a0", SemVerIncrement.MINOR, "alpha", 0, None), "2.0.0a1"),
113-
(("2.0.0a1", SemVerIncrement.PATCH, "alpha", 0, None), "2.0.0a2"),
114-
(("2.0.0a2", SemVerIncrement.MAJOR, "alpha", 0, None), "2.0.0a3"),
115-
(("2.0.0a3", SemVerIncrement.MINOR, "alpha", 0, None), "2.0.0a4"),
116-
(("2.0.0a4", SemVerIncrement.PATCH, "alpha", 0, None), "2.0.0a5"),
117-
(("2.0.0a5", SemVerIncrement.MAJOR, "alpha", 0, None), "2.0.0a6"),
111+
(("1.0.0", SemVerIncrement.MAJOR, Prerelease.ALPHA, 0, None), "2.0.0a0"),
112+
(("2.0.0a0", SemVerIncrement.MINOR, Prerelease.ALPHA, 0, None), "2.0.0a1"),
113+
(("2.0.0a1", SemVerIncrement.PATCH, Prerelease.ALPHA, 0, None), "2.0.0a2"),
114+
(("2.0.0a2", SemVerIncrement.MAJOR, Prerelease.ALPHA, 0, None), "2.0.0a3"),
115+
(("2.0.0a3", SemVerIncrement.MINOR, Prerelease.ALPHA, 0, None), "2.0.0a4"),
116+
(("2.0.0a4", SemVerIncrement.PATCH, Prerelease.ALPHA, 0, None), "2.0.0a5"),
117+
(("2.0.0a5", SemVerIncrement.MAJOR, Prerelease.ALPHA, 0, None), "2.0.0a6"),
118118
#
119-
(("2.0.0b0", SemVerIncrement.MINOR, "alpha", 0, None), "2.0.0b1"),
120-
(("2.0.0b0", SemVerIncrement.PATCH, "alpha", 0, None), "2.0.0b1"),
119+
(("2.0.0b0", SemVerIncrement.MINOR, Prerelease.ALPHA, 0, None), "2.0.0b1"),
120+
(("2.0.0b0", SemVerIncrement.PATCH, Prerelease.ALPHA, 0, None), "2.0.0b1"),
121121
#
122122
(("1.0.1a0", SemVerIncrement.PATCH, None, 0, None), "1.0.1"),
123123
(("1.0.1a0", SemVerIncrement.MINOR, None, 0, None), "1.1.0"),
@@ -135,53 +135,56 @@
135135
(("3.0.0b1", None, None, 0, None), "3.0.0"),
136136
(("3.0.0rc1", None, None, 0, None), "3.0.0"),
137137
#
138-
(("3.1.4", None, "alpha", 0, None), "3.1.4a0"),
139-
(("3.1.4", None, "beta", 0, None), "3.1.4b0"),
140-
(("3.1.4", None, "rc", 0, None), "3.1.4rc0"),
138+
(("3.1.4", None, Prerelease.ALPHA, 0, None), "3.1.4a0"),
139+
(("3.1.4", None, Prerelease.BETA, 0, None), "3.1.4b0"),
140+
(("3.1.4", None, Prerelease.RC, 0, None), "3.1.4rc0"),
141141
#
142-
(("3.1.4", None, "alpha", 0, None), "3.1.4a0"),
143-
(("3.1.4a0", SemVerIncrement.PATCH, "alpha", 0, None), "3.1.4a1"), # UNEXPECTED!
144-
(("3.1.4a0", SemVerIncrement.MINOR, "alpha", 0, None), "3.2.0a0"),
145-
(("3.1.4a0", SemVerIncrement.MAJOR, "alpha", 0, None), "4.0.0a0"),
142+
(("3.1.4", None, Prerelease.ALPHA, 0, None), "3.1.4a0"),
143+
(
144+
("3.1.4a0", SemVerIncrement.PATCH, Prerelease.ALPHA, 0, None),
145+
"3.1.4a1",
146+
), # UNEXPECTED!
147+
(("3.1.4a0", SemVerIncrement.MINOR, Prerelease.ALPHA, 0, None), "3.2.0a0"),
148+
(("3.1.4a0", SemVerIncrement.MAJOR, Prerelease.ALPHA, 0, None), "4.0.0a0"),
146149
]
147150

148151
exact_cases = [
149152
(("1.0.0", SemVerIncrement.PATCH, None, 0, None), "1.0.1"),
150153
(("1.0.0", SemVerIncrement.MINOR, None, 0, None), "1.1.0"),
151154
# with exact_increment=False: "1.0.0b0"
152-
(("1.0.0a1", SemVerIncrement.PATCH, "beta", 0, None), "1.0.1b0"),
155+
(("1.0.0a1", SemVerIncrement.PATCH, Prerelease.BETA, 0, None), "1.0.1b0"),
153156
# with exact_increment=False: "1.0.0b1"
154-
(("1.0.0b0", SemVerIncrement.PATCH, "beta", 0, None), "1.0.1b0"),
157+
(("1.0.0b0", SemVerIncrement.PATCH, Prerelease.BETA, 0, None), "1.0.1b0"),
155158
# with exact_increment=False: "1.0.0rc0"
156-
(("1.0.0b1", SemVerIncrement.PATCH, "rc", 0, None), "1.0.1rc0"),
159+
(("1.0.0b1", SemVerIncrement.PATCH, Prerelease.RC, 0, None), "1.0.1rc0"),
157160
# with exact_increment=False: "1.0.0-rc1"
158-
(("1.0.0rc0", SemVerIncrement.PATCH, "rc", 0, None), "1.0.1rc0"),
161+
(("1.0.0rc0", SemVerIncrement.PATCH, Prerelease.RC, 0, None), "1.0.1rc0"),
159162
# with exact_increment=False: "1.0.0rc1-dev1"
160-
(("1.0.0rc0", SemVerIncrement.PATCH, "rc", 0, 1), "1.0.1rc0.dev1"),
163+
(("1.0.0rc0", SemVerIncrement.PATCH, Prerelease.RC, 0, 1), "1.0.1rc0.dev1"),
161164
# with exact_increment=False: "1.0.0b0"
162-
(("1.0.0a1", SemVerIncrement.MINOR, "beta", 0, None), "1.1.0b0"),
165+
(("1.0.0a1", SemVerIncrement.MINOR, Prerelease.BETA, 0, None), "1.1.0b0"),
163166
# with exact_increment=False: "1.0.0b1"
164-
(("1.0.0b0", SemVerIncrement.MINOR, "beta", 0, None), "1.1.0b0"),
167+
(("1.0.0b0", SemVerIncrement.MINOR, Prerelease.BETA, 0, None), "1.1.0b0"),
165168
# with exact_increment=False: "1.0.0b1"
166-
(("1.0.0b0", SemVerIncrement.MINOR, "alpha", 0, None), "1.1.0a0"),
169+
(("1.0.0b0", SemVerIncrement.MINOR, Prerelease.ALPHA, 0, None), "1.1.0a0"),
167170
# with exact_increment=False: "1.0.0rc0"
168-
(("1.0.0b1", SemVerIncrement.MINOR, "rc", 0, None), "1.1.0rc0"),
171+
(("1.0.0b1", SemVerIncrement.MINOR, Prerelease.RC, 0, None), "1.1.0rc0"),
169172
# with exact_increment=False: "1.0.0rc1"
170-
(("1.0.0rc0", SemVerIncrement.MINOR, "rc", 0, None), "1.1.0rc0"),
173+
(("1.0.0rc0", SemVerIncrement.MINOR, Prerelease.RC, 0, None), "1.1.0rc0"),
171174
# with exact_increment=False: "1.0.0rc1-dev1"
172-
(("1.0.0rc0", SemVerIncrement.MINOR, "rc", 0, 1), "1.1.0rc0.dev1"),
175+
(("1.0.0rc0", SemVerIncrement.MINOR, Prerelease.RC, 0, 1), "1.1.0rc0.dev1"),
173176
# with exact_increment=False: "2.0.0"
174177
(("2.0.0b0", SemVerIncrement.MAJOR, None, 0, None), "3.0.0"),
175178
# with exact_increment=False: "2.0.0"
176179
(("2.0.0b0", SemVerIncrement.MINOR, None, 0, None), "2.1.0"),
177180
# with exact_increment=False: "2.0.0"
178181
(("2.0.0b0", SemVerIncrement.PATCH, None, 0, None), "2.0.1"),
179182
# same with exact_increment=False
180-
(("2.0.0b0", SemVerIncrement.MAJOR, "alpha", 0, None), "3.0.0a0"),
183+
(("2.0.0b0", SemVerIncrement.MAJOR, Prerelease.ALPHA, 0, None), "3.0.0a0"),
181184
# with exact_increment=False: "2.0.0b1"
182-
(("2.0.0b0", SemVerIncrement.MINOR, "alpha", 0, None), "2.1.0a0"),
185+
(("2.0.0b0", SemVerIncrement.MINOR, Prerelease.ALPHA, 0, None), "2.1.0a0"),
183186
# with exact_increment=False: "2.0.0b1"
184-
(("2.0.0b0", SemVerIncrement.PATCH, "alpha", 0, None), "2.0.1a0"),
187+
(("2.0.0b0", SemVerIncrement.PATCH, Prerelease.ALPHA, 0, None), "2.0.1a0"),
185188
]
186189

187190

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /