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 06c83d5

Browse files
fix: raise NoVersionSpecifiedError if version is None, and adjust call sites of get_version
1 parent 6a90185 commit 06c83d5

File tree

3 files changed

+22
-22
lines changed

3 files changed

+22
-22
lines changed

‎commitizen/commands/bump.py

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@
2323
NoPatternMapError,
2424
NotAGitProjectError,
2525
NotAllowed,
26-
NoVersionSpecifiedError,
2726
)
2827
from commitizen.providers import get_provider
2928
from commitizen.tags import TagRules
@@ -163,11 +162,7 @@ def _find_increment(self, commits: list[git.GitCommit]) -> Increment | None:
163162
def __call__(self) -> None:
164163
"""Steps executed to bump."""
165164
provider = get_provider(self.config)
166-
167-
try:
168-
current_version = self.scheme(provider.get_version())
169-
except TypeError:
170-
raise NoVersionSpecifiedError()
165+
current_version = self.scheme(provider.get_version())
171166

172167
increment = self.arguments["increment"]
173168
prerelease = self.arguments["prerelease"]

‎commitizen/commands/version.py

Lines changed: 17 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
from commitizen import out
66
from commitizen.__version__ import __version__
77
from commitizen.config import BaseConfig
8+
from commitizen.exceptions import NoVersionSpecifiedError
89
from commitizen.providers import get_provider
910

1011

@@ -28,19 +29,20 @@ def __call__(self) -> None:
2829
out.write(f"Commitizen Version: {__version__}")
2930
out.write(f"Python Version: {self.python_version}")
3031
out.write(f"Operating System: {self.operating_system}")
31-
elif self.parameter.get("project"):
32-
version = get_provider(self.config).get_version()
33-
if version:
34-
out.write(f"{version}")
35-
else:
36-
out.error("No project information in this project.")
37-
elif self.parameter.get("verbose"):
38-
out.write(f"Installed Commitizen Version: {__version__}")
39-
version = get_provider(self.config).get_version()
40-
if version:
41-
out.write(f"Project Version: {version}")
42-
else:
32+
return
33+
34+
if (verbose := self.parameter.get("verbose")) or self.parameter.get("project"):
35+
if verbose:
36+
out.write(f"Installed Commitizen Version: {__version__}")
37+
38+
try:
39+
version = get_provider(self.config).get_version()
40+
except NoVersionSpecifiedError:
4341
out.error("No project information in this project.")
44-
else:
45-
# if no argument is given, show installed commitizen version
46-
out.write(f"{__version__}")
42+
return
43+
44+
out.write(f"Project Version: {version}" if verbose else version)
45+
return
46+
47+
# if no argument is given, show installed commitizen version
48+
out.write(f"{__version__}")

‎commitizen/providers/commitizen_provider.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
from __future__ import annotations
22

3+
from commitizen.exceptions import NoVersionSpecifiedError
34
from commitizen.providers.base_provider import VersionProvider
45

56

@@ -9,7 +10,9 @@ class CommitizenProvider(VersionProvider):
910
"""
1011

1112
def get_version(self) -> str:
12-
return self.config.settings["version"] # type: ignore[return-value] # TODO: check if we can fix this by tweaking the `Settings` type
13+
if ret := self.config.settings["version"]:
14+
return ret
15+
raise NoVersionSpecifiedError()
1316

1417
def set_version(self, version: str) -> None:
1518
self.config.set_key("version", version)

0 commit comments

Comments
(0)

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