Skip to content

Commit 9b88e7b

Browse files
committed
refactor(Changelog): remove unnecessary intermediate variables for better readability
1 parent fb04e28 commit 9b88e7b

File tree

1 file changed

+17
-19
lines changed

1 file changed

+17
-19
lines changed

commitizen/commands/changelog.py

Lines changed: 17 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111
from commitizen import changelog, defaults, factory, git, out
1212
from commitizen.changelog_formats import get_changelog_format
1313
from commitizen.config import BaseConfig
14-
from commitizen.cz.base import ChangelogReleaseHook, MessageBuilderHook
1514
from commitizen.cz.utils import strip_local_version
1615
from commitizen.exceptions import (
1716
DryRunExit,
@@ -184,15 +183,6 @@ def __call__(self) -> None:
184183
commit_parser = self.cz.commit_parser
185184
changelog_pattern = self.cz.changelog_pattern
186185
start_rev = self.start_rev
187-
unreleased_version = self.unreleased_version
188-
changelog_meta = changelog.Metadata()
189-
change_type_map: dict[str, str] | None = self.change_type_map
190-
changelog_message_builder_hook: MessageBuilderHook | None = (
191-
self.cz.changelog_message_builder_hook
192-
)
193-
changelog_release_hook: ChangelogReleaseHook | None = (
194-
self.cz.changelog_release_hook
195-
)
196186

197187
if self.export_template_to:
198188
return self._export_template()
@@ -209,45 +199,53 @@ def __call__(self) -> None:
209199
assert self.file_name
210200

211201
tags = self.tag_rules.get_version_tags(git.get_tags(), warn=True)
212-
end_rev = ""
202+
changelog_meta = changelog.Metadata()
213203
if self.incremental:
214204
changelog_meta = self.changelog_format.get_metadata(self.file_name)
215205
if changelog_meta.latest_version:
216206
start_rev = self._find_incremental_rev(
217207
strip_local_version(changelog_meta.latest_version_tag or ""), tags
218208
)
209+
210+
end_rev = ""
219211
if self.rev_range:
220212
start_rev, end_rev = changelog.get_oldest_and_newest_rev(
221213
tags,
222214
self.rev_range,
223215
self.tag_rules,
224216
)
217+
225218
commits = git.get_commits(start=start_rev, end=end_rev, args="--topo-order")
226219
if not commits and (
227220
self.current_version is None or not self.current_version.is_prerelease
228221
):
229222
raise NoCommitsFoundError("No commits found")
223+
230224
tree = changelog.generate_tree_from_commits(
231225
commits,
232226
tags,
233227
commit_parser,
234228
changelog_pattern,
235-
unreleased_version,
236-
change_type_map=change_type_map,
237-
changelog_message_builder_hook=changelog_message_builder_hook,
238-
changelog_release_hook=changelog_release_hook,
229+
self.unreleased_version,
230+
change_type_map=self.change_type_map,
231+
changelog_message_builder_hook=self.cz.changelog_message_builder_hook,
232+
changelog_release_hook=self.cz.changelog_release_hook,
239233
rules=self.tag_rules,
240234
)
241235
if self.change_type_order:
242236
tree = changelog.generate_ordered_changelog_tree(
243237
tree, self.change_type_order
244238
)
245239

246-
extras = self.cz.template_extras.copy()
247-
extras.update(self.config.settings["extras"])
248-
extras.update(self.extras)
249240
changelog_out = changelog.render_changelog(
250-
tree, loader=self.cz.template_loader, template=self.template, **extras
241+
tree,
242+
self.cz.template_loader,
243+
self.template,
244+
**{
245+
**self.cz.template_extras,
246+
**self.config.settings["extras"],
247+
**self.extras,
248+
},
251249
).lstrip("\n")
252250

253251
# Dry_run is executed here to avoid checking and reading the files

0 commit comments

Comments
 (0)