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 679de47

Browse files
fix(CommitizenProvider): assert return value is not None
1 parent fb04e28 commit 679de47

File tree

2 files changed

+21
-16
lines changed

2 files changed

+21
-16
lines changed

‎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(("Project 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 によって変換されたページ (->オリジナル) /