Skip to content

Commit 41c1658

Browse files
committed
use Version type everywhere
1 parent 1435b88 commit 41c1658

File tree

1 file changed

+23
-21
lines changed

1 file changed

+23
-21
lines changed

scripts/release.py

Lines changed: 23 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ def pyproject_file_path() -> Path:
7070
return project_root() / PYPROJECT_FILE_PATH
7171

7272

73-
def write_version_file(version: Text) -> None:
73+
def write_version_file(version: Version) -> None:
7474
"""Dump a new version into the python version file."""
7575

7676
with version_file_path().open("w") as f:
@@ -82,13 +82,13 @@ def write_version_file(version: Text) -> None:
8282
check_call(["git", "add", str(version_file_path().absolute())])
8383

8484

85-
def write_version_to_pyproject(version: Text) -> None:
85+
def write_version_to_pyproject(version: Version) -> None:
8686
"""Dump a new version into the pyproject.toml."""
8787
pyproject_file = pyproject_file_path()
8888

8989
try:
9090
data = toml.load(pyproject_file)
91-
data["tool"]["poetry"]["version"] = version
91+
data["tool"]["poetry"]["version"] = str(version)
9292
with pyproject_file.open("w", encoding="utf8") as f:
9393
toml.dump(data, f)
9494
except (FileNotFoundError, TypeError):
@@ -119,10 +119,10 @@ def get_current_version() -> Text:
119119
return _globals["__version__"]
120120

121121

122-
def confirm_version(version: Text) -> bool:
122+
def confirm_version(version: Version) -> bool:
123123
"""Allow the user to confirm the version number."""
124124

125-
if version in git_existing_tags():
125+
if str(version) in git_existing_tags():
126126
confirmed = questionary.confirm(
127127
f"Tag with version '{version}' already exists, overwrite?", default=False
128128
).ask()
@@ -175,12 +175,12 @@ def get_rasa_sdk_version() -> Text:
175175
raise Exception(f"Failed to find Rasa SDK version in {dependencies_filename}")
176176

177177

178-
def validate_code_is_release_ready(version: Text) -> None:
178+
def validate_code_is_release_ready(version: Version) -> None:
179179
"""Make sure the code base is valid (e.g. Rasa SDK is up to date)."""
180180

181181
sdk = get_rasa_sdk_version()
182182
sdk_version = (Version.coerce(sdk).major, Version.coerce(sdk).minor)
183-
rasa_version = (Version.coerce(version).major, Version.coerce(version).minor)
183+
rasa_version = (version.major, version.minor)
184184

185185
if sdk_version != rasa_version:
186186
print()
@@ -221,15 +221,15 @@ def git_current_branch_is_master_or_release() -> bool:
221221
)
222222

223223

224-
def create_release_branch(version: Text) -> Text:
224+
def create_release_branch(version: Version) -> Text:
225225
"""Create a new branch for this release. Returns the branch name."""
226226

227227
branch = f"{RELEASE_BRANCH_PREFIX}{version}"
228228
check_call(["git", "checkout", "-b", branch])
229229
return branch
230230

231231

232-
def create_commit(version: Text) -> None:
232+
def create_commit(version: Version) -> None:
233233
"""Creates a git commit with all stashed changes."""
234234
check_call(["git", "commit", "-m", f"prepared release of version {version}"])
235235

@@ -305,35 +305,37 @@ def next_prerelease(version: Version, flavor: Text) -> Version:
305305
)
306306

307307

308-
def parse_next_version(version: Text) -> Text:
308+
def parse_next_version(version: Text) -> Version:
309309
"""Find the next version as a proper semantic version string."""
310310
if version == "major":
311-
return str(Version.coerce(get_current_version()).next_major())
311+
return Version.coerce(get_current_version()).next_major()
312312
elif version == "minor":
313-
return str(Version.coerce(get_current_version()).next_minor())
313+
return Version.coerce(get_current_version()).next_minor()
314314
elif version == "patch":
315-
return str(Version.coerce(get_current_version()).next_patch())
315+
return Version.coerce(get_current_version()).next_patch()
316316
elif version == "alpha":
317-
return str(next_prerelease(Version.coerce(get_current_version()), "a"))
317+
return next_prerelease(Version.coerce(get_current_version()), "a")
318318
elif version == "rc":
319-
return str(next_prerelease(Version.coerce(get_current_version()), "rc"))
319+
return next_prerelease(Version.coerce(get_current_version()), "rc")
320320
elif validate_version(version):
321-
return version
321+
return Version.coerce(version)
322322
else:
323323
raise Exception(f"Invalid version number '{cmdline_args.next_version}'.")
324324

325325

326-
def next_version(args: argparse.Namespace) -> Text:
326+
def next_version(args: argparse.Namespace) -> Version:
327327
"""Take cmdline args or ask the user for the next version and return semver."""
328328
return parse_next_version(args.next_version or ask_version())
329329

330330

331-
def generate_changelog(version: Text) -> None:
331+
def generate_changelog(version: Version) -> None:
332332
"""Call tonwcrier and create a changelog from all available changelog entries."""
333-
check_call(["towncrier", "--yes", "--version", version], cwd=str(project_root()))
333+
check_call(
334+
["towncrier", "--yes", "--version", str(version)], cwd=str(project_root())
335+
)
334336

335337

336-
def print_done_message(branch: Text, base: Text, version: Text) -> None:
338+
def print_done_message(branch: Text, base: Text, version: Version) -> None:
337339
"""Print final information for the user on what to do next."""
338340

339341
pull_request_url = f"{REPO_BASE_URL}/compare/{base}...{branch}?expand=1"
@@ -344,7 +346,7 @@ def print_done_message(branch: Text, base: Text, version: Text) -> None:
344346
print(f"Please open a PR on GitHub: {pull_request_url}")
345347

346348

347-
def print_done_message_same_branch(version: Text) -> None:
349+
def print_done_message_same_branch(version: Version) -> None:
348350
"""
349351
Print final information for the user in case changes
350352
are directly committed on this branch.

0 commit comments

Comments
 (0)