commitizen 4.16.5__tar.gz → 4.17.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {commitizen-4.16.5 → commitizen-4.17.0}/PKG-INFO +1 -1
- commitizen-4.17.0/commitizen/__version__.py +1 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/cli.py +0 -1
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/commands/changelog.py +1 -1
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/commands/version.py +57 -5
- commitizen-4.17.0/pyproject.toml +363 -0
- commitizen-4.16.5/pyproject.toml → commitizen-4.17.0/pyproject.toml.orig +2 -2
- commitizen-4.16.5/commitizen/__version__.py +0 -1
- {commitizen-4.16.5 → commitizen-4.17.0}/LICENSE +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/__init__.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/__main__.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/bump.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/changelog.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/changelog_formats/__init__.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/changelog_formats/asciidoc.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/changelog_formats/base.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/changelog_formats/markdown.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/changelog_formats/restructuredtext.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/changelog_formats/textile.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/cmd.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/commands/__init__.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/commands/bump.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/commands/check.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/commands/commit.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/commands/example.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/commands/info.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/commands/init.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/commands/list_cz.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/commands/schema.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/config/__init__.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/config/base_config.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/config/factory.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/config/json_config.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/config/toml_config.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/config/yaml_config.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/cz/__init__.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/cz/base.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/cz/conventional_commits/__init__.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/cz/conventional_commits/conventional_commits.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/cz/conventional_commits/conventional_commits_info.txt +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/cz/customize/__init__.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/cz/customize/customize.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/cz/customize/customize_info.txt +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/cz/exceptions.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/cz/jira/__init__.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/cz/jira/jira.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/cz/jira/jira_info.txt +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/cz/utils.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/defaults.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/exceptions.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/factory.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/git.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/hooks.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/out.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/project_info.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/providers/__init__.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/providers/base_provider.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/providers/cargo_provider.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/providers/commitizen_provider.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/providers/composer_provider.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/providers/npm_provider.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/providers/pep621_provider.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/providers/poetry_provider.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/providers/scm_provider.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/providers/uv_provider.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/py.typed +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/question.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/tags.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/templates/CHANGELOG.adoc.j2 +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/templates/CHANGELOG.md.j2 +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/templates/CHANGELOG.rst.j2 +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/templates/CHANGELOG.textile.j2 +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/version_increment.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/commitizen/version_schemes.py +0 -0
- {commitizen-4.16.5 → commitizen-4.17.0}/docs/README.md +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "4.17.0"
|
|
@@ -4,14 +4,20 @@ from typing import TypedDict
|
|
|
4
4
|
|
|
5
5
|
from packaging.version import InvalidVersion
|
|
6
6
|
|
|
7
|
-
from commitizen import out
|
|
7
|
+
from commitizen import bump, factory, git, out
|
|
8
8
|
from commitizen.__version__ import __version__
|
|
9
9
|
from commitizen.config import BaseConfig
|
|
10
|
-
from commitizen.exceptions import
|
|
10
|
+
from commitizen.exceptions import (
|
|
11
|
+
NoCommitsFoundError,
|
|
12
|
+
NoPatternMapError,
|
|
13
|
+
NotAGitProjectError,
|
|
14
|
+
NoVersionSpecifiedError,
|
|
15
|
+
VersionSchemeUnknown,
|
|
16
|
+
)
|
|
11
17
|
from commitizen.providers import get_provider
|
|
12
18
|
from commitizen.tags import TagRules
|
|
13
19
|
from commitizen.version_increment import VersionIncrement
|
|
14
|
-
from commitizen.version_schemes import Increment, get_version_scheme
|
|
20
|
+
from commitizen.version_schemes import Increment, VersionProtocol, get_version_scheme
|
|
15
21
|
|
|
16
22
|
|
|
17
23
|
class VersionArgs(TypedDict, total=False):
|
|
@@ -63,6 +69,9 @@ class Version:
|
|
|
63
69
|
or self.arguments.get("next")
|
|
64
70
|
or self.arguments.get("manual_version")
|
|
65
71
|
):
|
|
72
|
+
# TODO: once `cz --version` is implemented, move `self.cz` back to __init__
|
|
73
|
+
self.cz = factory.committer_factory(self.config)
|
|
74
|
+
|
|
66
75
|
version_str = self.arguments.get("manual_version")
|
|
67
76
|
if version_str is None:
|
|
68
77
|
try:
|
|
@@ -84,11 +93,15 @@ class Version:
|
|
|
84
93
|
|
|
85
94
|
if next_increment_str := self.arguments.get("next"):
|
|
86
95
|
if next_increment_str == "USE_GIT_COMMITS":
|
|
96
|
+
# Only check under `git` to allow the user to do stuff like
|
|
97
|
+
# `cz version 1.2.3 --major`
|
|
98
|
+
if not git.is_git_project():
|
|
99
|
+
raise NotAGitProjectError()
|
|
100
|
+
|
|
87
101
|
# TODO: implement USE_GIT_COMMITS by deriving the increment from
|
|
88
102
|
# git history. This requires refactoring the bump logic out of
|
|
89
103
|
# `commitizen/commands/bump.py` so it can be reused here. See #1678.
|
|
90
|
-
|
|
91
|
-
return
|
|
104
|
+
version = self._get_next_git_version(version)
|
|
92
105
|
|
|
93
106
|
next_increment = VersionIncrement.from_value(next_increment_str)
|
|
94
107
|
increment: Increment | None
|
|
@@ -100,6 +113,9 @@ class Version:
|
|
|
100
113
|
increment = "MINOR"
|
|
101
114
|
else:
|
|
102
115
|
increment = "MAJOR"
|
|
116
|
+
|
|
117
|
+
# TODO: Consider adding all the parameters `.bump` supports:
|
|
118
|
+
# prerelease, prerelease_offset,exact_increment, etc...
|
|
103
119
|
version = version.bump(increment=increment)
|
|
104
120
|
|
|
105
121
|
if self.arguments.get("major"):
|
|
@@ -139,3 +155,39 @@ class Version:
|
|
|
139
155
|
|
|
140
156
|
# If no arguments are provided, just show the installed commitizen version
|
|
141
157
|
out.write(__version__)
|
|
158
|
+
|
|
159
|
+
def _get_next_git_version(
|
|
160
|
+
self, current_version: VersionProtocol
|
|
161
|
+
) -> VersionProtocol:
|
|
162
|
+
"""Calculate the next version based on commits."""
|
|
163
|
+
rules = TagRules.from_settings(self.config.settings)
|
|
164
|
+
current_tag = rules.find_tag_for(git.get_tags(), current_version)
|
|
165
|
+
commits = git.get_commits(current_tag.name if current_tag else None)
|
|
166
|
+
|
|
167
|
+
# No commits, there is no need to create an empty tag.
|
|
168
|
+
# Unless we previously had a prerelease.
|
|
169
|
+
if not commits and not current_version.is_prerelease:
|
|
170
|
+
raise NoCommitsFoundError("[NO_COMMITS_FOUND]\nNo new commits found.")
|
|
171
|
+
|
|
172
|
+
bump_map = (
|
|
173
|
+
self.cz.bump_map_major_version_zero
|
|
174
|
+
if self.config.settings["major_version_zero"]
|
|
175
|
+
else self.cz.bump_map
|
|
176
|
+
)
|
|
177
|
+
bump_pattern = self.cz.bump_pattern
|
|
178
|
+
|
|
179
|
+
if not bump_map or not bump_pattern:
|
|
180
|
+
raise NoPatternMapError(
|
|
181
|
+
f"'{self.config.settings['name']}' rule does not support bump"
|
|
182
|
+
)
|
|
183
|
+
increment = bump.find_increment(
|
|
184
|
+
commits, regex=bump_pattern, increments_map=bump_map
|
|
185
|
+
)
|
|
186
|
+
|
|
187
|
+
# TODO: Consider adding all the parameters `.bump` supports:
|
|
188
|
+
# prerelease, prerelease_offset,exact_increment, etc..
|
|
189
|
+
new_version = current_version.bump(
|
|
190
|
+
increment,
|
|
191
|
+
)
|
|
192
|
+
|
|
193
|
+
return new_version
|
|
@@ -0,0 +1,363 @@
|
|
|
1
|
+
[project]
|
|
2
|
+
name = "commitizen"
|
|
3
|
+
version = "4.17.0"
|
|
4
|
+
description = "Python commitizen client tool"
|
|
5
|
+
license = "MIT"
|
|
6
|
+
license-files = ["LICENSE"]
|
|
7
|
+
readme = "docs/README.md"
|
|
8
|
+
requires-python = ">=3.10,<4.0"
|
|
9
|
+
dependencies = [
|
|
10
|
+
"questionary (>=2.0,<3.0)",
|
|
11
|
+
"prompt_toolkit!=3.0.52",
|
|
12
|
+
"decli (>=0.6.0,<1.0)",
|
|
13
|
+
"colorama (>=0.4.1,<1.0)",
|
|
14
|
+
"termcolor (>=1.1.0,<4.0.0)",
|
|
15
|
+
"packaging>=26",
|
|
16
|
+
"tomlkit (>=0.8.0,<1.0.0)",
|
|
17
|
+
"jinja2>=2.10.3",
|
|
18
|
+
"pyyaml>=3.08",
|
|
19
|
+
"argcomplete >=1.12.1,<3.8",
|
|
20
|
+
"typing-extensions (>=4.0.1,<5.0.0) ; python_version < '3.11'",
|
|
21
|
+
"charset-normalizer (>=2.1.0,<4)",
|
|
22
|
+
"deprecated (>=1.2.13, <2)",
|
|
23
|
+
"importlib-metadata >=8.0.0,<8.7.0 ; python_version < '3.10'",
|
|
24
|
+
]
|
|
25
|
+
keywords = [
|
|
26
|
+
"commitizen",
|
|
27
|
+
"conventional",
|
|
28
|
+
"commits",
|
|
29
|
+
"git",
|
|
30
|
+
]
|
|
31
|
+
classifiers = [
|
|
32
|
+
"Development Status :: 5 - Production/Stable",
|
|
33
|
+
"Environment :: Console",
|
|
34
|
+
"Intended Audience :: Developers",
|
|
35
|
+
"Natural Language :: English",
|
|
36
|
+
"Operating System :: OS Independent",
|
|
37
|
+
"Programming Language :: Python",
|
|
38
|
+
"Programming Language :: Python :: 3",
|
|
39
|
+
"Programming Language :: Python :: 3.10",
|
|
40
|
+
"Programming Language :: Python :: 3.11",
|
|
41
|
+
"Programming Language :: Python :: 3.12",
|
|
42
|
+
"Programming Language :: Python :: 3.13",
|
|
43
|
+
"Programming Language :: Python :: 3.14",
|
|
44
|
+
"Programming Language :: Python :: Implementation :: CPython",
|
|
45
|
+
]
|
|
46
|
+
|
|
47
|
+
[[project.authors]]
|
|
48
|
+
name = "Santiago Fraire"
|
|
49
|
+
email = "santiwilly@gmail.com"
|
|
50
|
+
|
|
51
|
+
[[project.maintainers]]
|
|
52
|
+
name = "Wei Lee"
|
|
53
|
+
email = "weilee.rx@gmail.com"
|
|
54
|
+
|
|
55
|
+
[[project.maintainers]]
|
|
56
|
+
name = "Axel H."
|
|
57
|
+
email = "noirbizarre@gmail.com"
|
|
58
|
+
|
|
59
|
+
[[project.maintainers]]
|
|
60
|
+
name = "Tim Hsiung"
|
|
61
|
+
email = "bear890707@gmail.com"
|
|
62
|
+
|
|
63
|
+
[project.urls]
|
|
64
|
+
Homepage = "https://github.com/commitizen-tools/commitizen"
|
|
65
|
+
Documentation = "https://commitizen-tools.github.io/commitizen/"
|
|
66
|
+
Repository = "https://github.com/commitizen-tools/commitizen"
|
|
67
|
+
Issues = "https://github.com/commitizen-tools/commitizen/issues"
|
|
68
|
+
Changelog = "https://github.com/commitizen-tools/commitizen/blob/master/CHANGELOG.md"
|
|
69
|
+
|
|
70
|
+
[project.scripts]
|
|
71
|
+
cz = "commitizen.cli:main"
|
|
72
|
+
git-cz = "commitizen.cli:main"
|
|
73
|
+
|
|
74
|
+
[project.entry-points."commitizen.plugin"]
|
|
75
|
+
cz_conventional_commits = "commitizen.cz.conventional_commits:ConventionalCommitsCz"
|
|
76
|
+
cz_jira = "commitizen.cz.jira:JiraSmartCz"
|
|
77
|
+
cz_customize = "commitizen.cz.customize:CustomizeCommitsCz"
|
|
78
|
+
|
|
79
|
+
[project.entry-points."commitizen.changelog_format"]
|
|
80
|
+
markdown = "commitizen.changelog_formats.markdown:Markdown"
|
|
81
|
+
asciidoc = "commitizen.changelog_formats.asciidoc:AsciiDoc"
|
|
82
|
+
textile = "commitizen.changelog_formats.textile:Textile"
|
|
83
|
+
restructuredtext = "commitizen.changelog_formats.restructuredtext:RestructuredText"
|
|
84
|
+
|
|
85
|
+
[project.entry-points."commitizen.provider"]
|
|
86
|
+
cargo = "commitizen.providers:CargoProvider"
|
|
87
|
+
commitizen = "commitizen.providers:CommitizenProvider"
|
|
88
|
+
composer = "commitizen.providers:ComposerProvider"
|
|
89
|
+
npm = "commitizen.providers:NpmProvider"
|
|
90
|
+
pep621 = "commitizen.providers:Pep621Provider"
|
|
91
|
+
poetry = "commitizen.providers:PoetryProvider"
|
|
92
|
+
scm = "commitizen.providers:ScmProvider"
|
|
93
|
+
uv = "commitizen.providers:UvProvider"
|
|
94
|
+
|
|
95
|
+
[project.entry-points."commitizen.scheme"]
|
|
96
|
+
pep440 = "commitizen.version_schemes:Pep440"
|
|
97
|
+
semver = "commitizen.version_schemes:SemVer"
|
|
98
|
+
semver2 = "commitizen.version_schemes:SemVer2"
|
|
99
|
+
|
|
100
|
+
[dependency-groups]
|
|
101
|
+
dev = [
|
|
102
|
+
{ include-group = "base" },
|
|
103
|
+
{ include-group = "test" },
|
|
104
|
+
{ include-group = "linters" },
|
|
105
|
+
{ include-group = "documentation" },
|
|
106
|
+
{ include-group = "script" },
|
|
107
|
+
"ipython>=8.0",
|
|
108
|
+
"tox>4",
|
|
109
|
+
"tox-uv",
|
|
110
|
+
]
|
|
111
|
+
base = [
|
|
112
|
+
"mkdocs-llmstxt>=0.5.0",
|
|
113
|
+
"poethepoet>=0.34.0",
|
|
114
|
+
]
|
|
115
|
+
test = [
|
|
116
|
+
"pytest>=9",
|
|
117
|
+
"pytest-cov>=4",
|
|
118
|
+
"pytest-mock>=3.10",
|
|
119
|
+
"pytest-regressions>=2.4.0",
|
|
120
|
+
"pytest-freezer>=0.4.6",
|
|
121
|
+
"pytest-xdist>=3.1.0",
|
|
122
|
+
"pytest-gitconfig>=0.9.0",
|
|
123
|
+
"pre-commit>=4.5.1",
|
|
124
|
+
]
|
|
125
|
+
linters = [
|
|
126
|
+
"ruff>=0.11.5",
|
|
127
|
+
"mypy>=1.16.0",
|
|
128
|
+
"types-deprecated>=1.2.9.2",
|
|
129
|
+
"types-python-dateutil>=2.8.19.13",
|
|
130
|
+
"types-PyYAML>=5.4.3",
|
|
131
|
+
"types-termcolor>=0.1.1",
|
|
132
|
+
"types-colorama>=0.4.15.20240311",
|
|
133
|
+
"prek>=0.2.28",
|
|
134
|
+
]
|
|
135
|
+
documentation = [
|
|
136
|
+
"mkdocs>=1.4.2,<2",
|
|
137
|
+
"mkdocs-git-revision-date-localized-plugin>=1.5.0",
|
|
138
|
+
"mkdocs-material>=9.1.6",
|
|
139
|
+
]
|
|
140
|
+
script = ["rich>=13.7.1"]
|
|
141
|
+
|
|
142
|
+
[build-system]
|
|
143
|
+
requires = ["uv_build >= 0.9.17, < 0.13"]
|
|
144
|
+
build-backend = "uv_build"
|
|
145
|
+
|
|
146
|
+
[tool.commitizen]
|
|
147
|
+
tag_format = "v$version"
|
|
148
|
+
version_files = [
|
|
149
|
+
"commitizen/__version__.py",
|
|
150
|
+
".pre-commit-config.yaml:rev:.+Commitizen",
|
|
151
|
+
]
|
|
152
|
+
version_provider = "uv"
|
|
153
|
+
version_scheme = "pep440"
|
|
154
|
+
annotated_tag = true
|
|
155
|
+
|
|
156
|
+
[tool.uv.build-backend]
|
|
157
|
+
module-name = "commitizen"
|
|
158
|
+
module-root = ""
|
|
159
|
+
include = ["commitizen/py.typed"]
|
|
160
|
+
|
|
161
|
+
[tool.coverage.report]
|
|
162
|
+
show_missing = true
|
|
163
|
+
exclude_lines = [
|
|
164
|
+
"pragma: no cover",
|
|
165
|
+
"def __repr__",
|
|
166
|
+
'if self\.debug',
|
|
167
|
+
"raise AssertionError",
|
|
168
|
+
"raise NotImplementedError",
|
|
169
|
+
"if 0:",
|
|
170
|
+
"if __name__ == .__main__.:",
|
|
171
|
+
"if TYPE_CHECKING:",
|
|
172
|
+
]
|
|
173
|
+
omit = [
|
|
174
|
+
"env/*",
|
|
175
|
+
"venv/*",
|
|
176
|
+
".venv/*",
|
|
177
|
+
"*/virtualenv/*",
|
|
178
|
+
"*/virtualenvs/*",
|
|
179
|
+
"*/tests/*",
|
|
180
|
+
]
|
|
181
|
+
|
|
182
|
+
[tool.pytest]
|
|
183
|
+
addopts = ["--strict-markers"]
|
|
184
|
+
testpaths = ["tests/"]
|
|
185
|
+
filterwarnings = ['ignore:Call to deprecated function \(or staticmethod\) get_smart_tag_range:DeprecationWarning']
|
|
186
|
+
|
|
187
|
+
[tool.tox]
|
|
188
|
+
requires = ["tox>=4.22"]
|
|
189
|
+
env_list = [
|
|
190
|
+
"3.10",
|
|
191
|
+
"3.11",
|
|
192
|
+
"3.12",
|
|
193
|
+
"3.13",
|
|
194
|
+
"3.14",
|
|
195
|
+
]
|
|
196
|
+
|
|
197
|
+
[tool.tox.env_run_base]
|
|
198
|
+
description = "Run tests suite against Python {base_python}"
|
|
199
|
+
dependency_groups = ["test"]
|
|
200
|
+
commands = [[
|
|
201
|
+
"pytest",
|
|
202
|
+
{ replace = "posargs", extend = true },
|
|
203
|
+
]]
|
|
204
|
+
|
|
205
|
+
[tool.ruff]
|
|
206
|
+
required-version = ">=0.11.5"
|
|
207
|
+
line-length = 88
|
|
208
|
+
|
|
209
|
+
[tool.ruff.lint]
|
|
210
|
+
select = [
|
|
211
|
+
"ANN001",
|
|
212
|
+
"ANN2",
|
|
213
|
+
"E",
|
|
214
|
+
"F",
|
|
215
|
+
"UP",
|
|
216
|
+
"I",
|
|
217
|
+
"PGH003",
|
|
218
|
+
"PGH004",
|
|
219
|
+
"RUF022",
|
|
220
|
+
"RUF100",
|
|
221
|
+
"PT",
|
|
222
|
+
"S101",
|
|
223
|
+
"TC001",
|
|
224
|
+
"TC002",
|
|
225
|
+
"TC003",
|
|
226
|
+
"TC004",
|
|
227
|
+
"TC005",
|
|
228
|
+
"TC006",
|
|
229
|
+
]
|
|
230
|
+
ignore = [
|
|
231
|
+
"E501",
|
|
232
|
+
"D1",
|
|
233
|
+
"D415",
|
|
234
|
+
]
|
|
235
|
+
extend-safe-fixes = [
|
|
236
|
+
"TC",
|
|
237
|
+
"UP",
|
|
238
|
+
"PT006",
|
|
239
|
+
]
|
|
240
|
+
|
|
241
|
+
[tool.ruff.lint.per-file-ignores]
|
|
242
|
+
"tests/*" = [
|
|
243
|
+
"ANN",
|
|
244
|
+
"S101",
|
|
245
|
+
]
|
|
246
|
+
|
|
247
|
+
[tool.ruff.lint.isort]
|
|
248
|
+
known-first-party = [
|
|
249
|
+
"commitizen",
|
|
250
|
+
"tests",
|
|
251
|
+
]
|
|
252
|
+
|
|
253
|
+
[tool.ruff.lint.pydocstyle]
|
|
254
|
+
convention = "google"
|
|
255
|
+
|
|
256
|
+
[tool.mypy]
|
|
257
|
+
files = [
|
|
258
|
+
"commitizen",
|
|
259
|
+
"tests",
|
|
260
|
+
"scripts",
|
|
261
|
+
]
|
|
262
|
+
disallow_untyped_decorators = true
|
|
263
|
+
disallow_subclassing_any = true
|
|
264
|
+
warn_return_any = true
|
|
265
|
+
warn_redundant_casts = true
|
|
266
|
+
warn_unused_ignores = true
|
|
267
|
+
warn_unused_configs = true
|
|
268
|
+
|
|
269
|
+
[[tool.mypy.overrides]]
|
|
270
|
+
module = "py.*"
|
|
271
|
+
ignore_missing_imports = true
|
|
272
|
+
|
|
273
|
+
[tool.codespell]
|
|
274
|
+
skip = ".git*,*.svg,*.lock"
|
|
275
|
+
check-hidden = true
|
|
276
|
+
ignore-words-list = "asend"
|
|
277
|
+
|
|
278
|
+
[tool.poe.executor]
|
|
279
|
+
type = "uv"
|
|
280
|
+
|
|
281
|
+
[tool.poe.tasks.format]
|
|
282
|
+
help = "Format the code"
|
|
283
|
+
|
|
284
|
+
[[tool.poe.tasks.format.sequence]]
|
|
285
|
+
cmd = "ruff check --fix"
|
|
286
|
+
|
|
287
|
+
[[tool.poe.tasks.format.sequence]]
|
|
288
|
+
cmd = "ruff format"
|
|
289
|
+
|
|
290
|
+
[tool.poe.tasks.lint]
|
|
291
|
+
help = "Lint the code"
|
|
292
|
+
|
|
293
|
+
[[tool.poe.tasks.lint.sequence]]
|
|
294
|
+
cmd = "ruff check"
|
|
295
|
+
|
|
296
|
+
[[tool.poe.tasks.lint.sequence]]
|
|
297
|
+
cmd = "mypy"
|
|
298
|
+
|
|
299
|
+
[tool.poe.tasks.check-commit]
|
|
300
|
+
help = "Check the commit messages"
|
|
301
|
+
cmd = "cz --no-raise 3 check --rev-range origin/master.."
|
|
302
|
+
|
|
303
|
+
[tool.poe.tasks.test]
|
|
304
|
+
help = "Run the test suite"
|
|
305
|
+
cmd = "pytest -n auto --dist=loadfile"
|
|
306
|
+
|
|
307
|
+
[tool.poe.tasks."test:all"]
|
|
308
|
+
help = "Run the test suite on all supported Python versions"
|
|
309
|
+
cmd = "tox --parallel"
|
|
310
|
+
|
|
311
|
+
[tool.poe.tasks."test:regen"]
|
|
312
|
+
help = "Regenerate the test fixtures"
|
|
313
|
+
|
|
314
|
+
[[tool.poe.tasks."test:regen".parallel]]
|
|
315
|
+
ref = "test -k 'not py_' --regen-all"
|
|
316
|
+
|
|
317
|
+
[[tool.poe.tasks."test:regen".parallel]]
|
|
318
|
+
ref = "test:all -- -k py_ --regen-all"
|
|
319
|
+
|
|
320
|
+
[tool.poe.tasks.cover]
|
|
321
|
+
help = "Run the test suite with coverage"
|
|
322
|
+
ref = "test --cov-report term-missing --cov-report=xml:coverage.xml --cov=commitizen --junitxml=junit.xml -o junit_family=legacy"
|
|
323
|
+
|
|
324
|
+
[tool.poe.tasks.all]
|
|
325
|
+
help = "Run all tasks"
|
|
326
|
+
sequence = [
|
|
327
|
+
"format",
|
|
328
|
+
"lint",
|
|
329
|
+
"check-commit",
|
|
330
|
+
"cover",
|
|
331
|
+
]
|
|
332
|
+
|
|
333
|
+
[tool.poe.tasks."doc:screenshots"]
|
|
334
|
+
help = "Render documentation screenshots"
|
|
335
|
+
|
|
336
|
+
[[tool.poe.tasks."doc:screenshots".parallel]]
|
|
337
|
+
script = "scripts.gen_cli_help_screenshots:gen_cli_help_screenshots"
|
|
338
|
+
|
|
339
|
+
[[tool.poe.tasks."doc:screenshots".parallel]]
|
|
340
|
+
script = "scripts.gen_cli_interactive_gifs:gen_cli_interactive_gifs"
|
|
341
|
+
|
|
342
|
+
[tool.poe.tasks."doc:build"]
|
|
343
|
+
help = "Build the documentation"
|
|
344
|
+
cmd = "mkdocs build"
|
|
345
|
+
|
|
346
|
+
[tool.poe.tasks.doc]
|
|
347
|
+
help = "Live documentation server"
|
|
348
|
+
cmd = "mkdocs serve --livereload"
|
|
349
|
+
|
|
350
|
+
[tool.poe.tasks.ci]
|
|
351
|
+
help = "Run all tasks in CI"
|
|
352
|
+
sequence = [
|
|
353
|
+
"check-commit",
|
|
354
|
+
{ cmd = "prek run --all-files" },
|
|
355
|
+
"cover",
|
|
356
|
+
]
|
|
357
|
+
|
|
358
|
+
[tool.poe.tasks.ci.env]
|
|
359
|
+
SKIP = "no-commit-to-branch"
|
|
360
|
+
|
|
361
|
+
[tool.poe.tasks.setup-pre-commit]
|
|
362
|
+
help = "Install pre-commit hooks"
|
|
363
|
+
cmd = "prek install"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "commitizen"
|
|
3
|
-
version = "4.
|
|
3
|
+
version = "4.17.0"
|
|
4
4
|
description = "Python commitizen client tool"
|
|
5
5
|
authors = [{ name = "Santiago Fraire", email = "santiwilly@gmail.com" }]
|
|
6
6
|
maintainers = [
|
|
@@ -133,7 +133,7 @@ script = [
|
|
|
133
133
|
]
|
|
134
134
|
|
|
135
135
|
[build-system]
|
|
136
|
-
requires = ["uv_build >= 0.9.17, <0.
|
|
136
|
+
requires = ["uv_build >= 0.9.17, < 0.13"]
|
|
137
137
|
build-backend = "uv_build"
|
|
138
138
|
|
|
139
139
|
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "4.16.5"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{commitizen-4.16.5 → commitizen-4.17.0}/commitizen/cz/conventional_commits/conventional_commits.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|