GitHub / commitizen-tools / commitizen
Create committing rules for projects :rocket: auto bump versions :arrow_up: and auto changelog generation :open_file_folder:
JSON API: http://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/commitizen-tools%2Fcommitizen
PURL: pkg:github/commitizen-tools/commitizen
Stars: 3,098
Forks: 300
Open issues: 153
License: mit
Language: Python
Size: 18.5 MB
Dependencies parsed at: Pending
Created at: about 8 years ago
Updated at: 8 days ago
Pushed at: about 1 month ago
Last synced at: 7 days ago
Commit Stats
Commits: 1644
Authors: 144
Mean commits per author: 11.42
Development Distribution Score: 0.767
More commit stats: https://commits.ecosyste.ms/hosts/GitHub/repositories/commitizen-tools/commitizen
Topics: bump-version, changelog-generator, commitizen, conventional-commits, git, python, python3, release-automation, semantic-versioning, semver
Funding Links https://opencollective.com/commitizen-tools, https://github.com/sponsors/commitizen-tools
v4.9.0 (yanked)
v4.9.0
v4.9.0 (2025-09-09)
Feat
- check: add check against default branch
Fix
- changelog: mark get_smart_tag_range as deprecated
- init: use pre-push as pre-commit stage
- init: use pre-push as pre-commit stage
- init: make welcome message easier to read
- Init: fix a typo in _ask_version_provider options and remove unnecessary filter, use named tuple for options
- ExitCode: add from_str in ExitCode and replace parse_no_raise with it
- raise NoVersionSpecifiedError if version is None, and adjust call sites of get_version
- Changelog: fix _export_template variable type
- Bump: rewrite –get-next NotAllowed error message for consistency
Refactor
- changelog: add get_next_tag_name_after_version and test, mark unused for get_smart_tag_range
- changelog: simplify logic for get_oldest_and_newest_rev
- changelog: shorten generate_tree_from_commits
- Init: remove the variable values_to_add and the update_config function for readability
- Init: remove unnecessary methods from ProjectInfo and refactor _ask_tag
- Init: fix unbounded variable in _ask_tag_format
- init: remote extra words
- process_commit_message: better type and early return
- Init: extract _get_config_data for readability
- changelog: shorten condition expression and early return
- Changelog: remove unnecessary intermediate variables for better readability
- bump: use a loop to shorten a series of similar NotAllowed exceptions
- Init: use ternary operator
- TagRules: extract tag_formats property and simplify list comprehension
- git: remove redundant if branch
- ScmProvider: replace sorted with max
- ExpectedExit: make the constructor more compact
- ParseArgs: simplify call function body
[master 98bba31f] bump: version 4.8.4 → 4.9.0
4 files changed, 43 insertions(+), 4 deletions(-)
Download
v4.8.3
v4.8.3
v4.8.3 (2025-06-09)
Fix
- cli: update description for deprecate warning
- commit: emit deprecated warning of cz commit -s
- Check: make parameters backward compatiable
- BaseConfig: mypy error
- deprecated: mark deprecate in v5
- defaults: add non-capitalized default constants back and deprecated warning
Refactor
- jira: refactor message
- conventional_commits: use TypedDict for answers
- conventional_commits: make schema_pattern more readable
- do not guess if changelog format is provided
- check: compile once and rename variable
- questions: type questions with TypedDict
- bump: simplify nested if
- git: retype get_commits parameter to make it more friendly to call sites
- git: simplify tag logic
- bump: eliminate similar patterns in code
- bump: use any to replace ‘or’ chain
- remove unnecessary bool() and remove Any type from TypedDict get
- bump: improve readability and still bypass mypy check
- commands: remove unused args, type version command args
- commit: type commit args
- check: type CheckArgs arguments
- check: remove unused argument
- changelog: type untyped arguments
- bump: TypedDict for bump argument
- make methods protected, better type
- conventional_commits: remove unnecessary checks
- fix mypy output and better type
- BaseCommitizen: remove unused process_commit
- remove
TypeErrorhandling sincePython >=3.9is required - add comment clarifying
no_raiseparsing tolist[int] - cli.py: add type hints
- mypy: remove
unused-ignore - changelog: better typing, yield
- cli: early return and improve test coverage
- git: extract _create_commit_cmd_string
- misc cleanup
- bump: clean up
- bump: add type for out, replace function with re escape
- BaseConfig: use setter
- changelog: minor cleanup
- git: refactor get_tag_names
- EOLType: add eol enum back and reorganize methods
- git: code cleanup and better test coverage
- commit: simplify call
- version_scheme: cleanup
- improve readability and fix typos
Perf
- bump: avoid unnecessary list construction and rename variable to avoid confusion
- tags: use set
[master c710c9f5] bump: version 4.8.2 → 4.8.3
4 files changed, 64 insertions(+), 4 deletions(-)
Download