Skip to content

Commit e97f572

Browse files
committed
refactor(bump): version_provider rename to version_type; pep option rename to pep440
Signed-off-by: apkawa <apkawa@gmail.com>
1 parent 9912cde commit e97f572

File tree

9 files changed

+42
-46
lines changed

9 files changed

+42
-46
lines changed

commitizen/bump.py

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ def generate_version(
120120
prerelease_offset: int = 0,
121121
devrelease: Optional[int] = None,
122122
is_local_version: bool = False,
123-
version_provider_cls: Optional[Type[Version]] = None,
123+
version_type_cls: Optional[Type[Version]] = None,
124124
) -> Version:
125125
"""Based on the given increment a proper semver will be generated.
126126
@@ -133,18 +133,16 @@ def generate_version(
133133
MINOR 1.0.0 -> 1.1.0
134134
MAJOR 1.0.0 -> 2.0.0
135135
"""
136-
version_provider_cls = version_provider_cls or Version
136+
version_type_cls = version_type_cls or Version
137137
if is_local_version:
138-
version = version_provider_cls(current_version)
138+
version = version_type_cls(current_version)
139139
dev_version = devrelease_generator(devrelease=devrelease)
140140
pre_version = prerelease_generator(
141141
str(version.local), prerelease=prerelease, offset=prerelease_offset
142142
)
143143
semver = semver_generator(str(version.local), increment=increment)
144144

145-
return version_provider_cls(
146-
f"{version.public}+{semver}{pre_version}{dev_version}"
147-
)
145+
return version_type_cls(f"{version.public}+{semver}{pre_version}{dev_version}")
148146
else:
149147
dev_version = devrelease_generator(devrelease=devrelease)
150148
pre_version = prerelease_generator(
@@ -153,7 +151,7 @@ def generate_version(
153151
semver = semver_generator(current_version, increment=increment)
154152

155153
# TODO: post version
156-
return version_provider_cls(f"{semver}{pre_version}{dev_version}")
154+
return version_type_cls(f"{semver}{pre_version}{dev_version}")
157155

158156

159157
def update_version_in_files(
@@ -214,7 +212,7 @@ def _version_to_regex(version: str) -> str:
214212
def normalize_tag(
215213
version: Union[Version, str],
216214
tag_format: Optional[str] = None,
217-
version_provider_cls: Optional[Type[Version]] = None,
215+
version_type_cls: Optional[Type[Version]] = None,
218216
) -> str:
219217
"""The tag and the software version might be different.
220218
@@ -227,9 +225,9 @@ def normalize_tag(
227225
| ver1.0.0 | 1.0.0 |
228226
| ver1.0.0.a0 | 1.0.0a0 |
229227
"""
230-
version_provider_cls = version_provider_cls or Version
228+
version_type_cls = version_type_cls or Version
231229
if isinstance(version, str):
232-
version = version_provider_cls(version)
230+
version = version_type_cls(version)
233231

234232
if not tag_format:
235233
return str(version)

commitizen/cli.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
import argcomplete
88
from decli import cli
99

10-
from commitizen import commands, config, out, version_providers
10+
from commitizen import commands, config, out, version_types
1111
from commitizen.exceptions import (
1212
CommitizenException,
1313
ExitCode,
@@ -203,10 +203,10 @@
203203
"metavar": "MANUAL_VERSION",
204204
},
205205
{
206-
"name": ["--version-provider"],
207-
"help": "choose version provider",
206+
"name": ["--version-type"],
207+
"help": "choose version type",
208208
"default": None,
209-
"choices": version_providers.providers,
209+
"choices": version_types.types,
210210
},
211211
],
212212
},

commitizen/commands/bump.py

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
import questionary
66
from packaging.version import InvalidVersion, Version
77

8-
from commitizen import bump, cmd, defaults, factory, git, hooks, out, version_providers
8+
from commitizen import bump, cmd, defaults, factory, git, hooks, out, version_types
99
from commitizen.commands.changelog import Changelog
1010
from commitizen.config import BaseConfig
1111
from commitizen.exceptions import (
@@ -61,12 +61,10 @@ def __init__(self, config: BaseConfig, arguments: dict):
6161
self.retry = arguments["retry"]
6262
self.pre_bump_hooks = self.config.settings["pre_bump_hooks"]
6363
self.post_bump_hooks = self.config.settings["post_bump_hooks"]
64-
version_provider = arguments["version_provider"] or self.config.settings.get(
65-
"version_provider"
66-
)
67-
self.version_provider = (
68-
version_provider and version_providers.providers[version_provider]
64+
version_type = arguments["version_type"] or self.config.settings.get(
65+
"version_type"
6966
)
67+
self.version_type = version_type and version_types.types[version_type]
7068

7169
def is_initial_tag(self, current_tag_version: str, is_yes: bool = False) -> bool:
7270
"""Check if reading the whole git tree up to HEAD is needed."""
@@ -160,7 +158,7 @@ def __call__(self): # noqa: C901
160158
current_tag_version: str = bump.normalize_tag(
161159
current_version,
162160
tag_format=tag_format,
163-
version_provider_cls=self.version_provider,
161+
version_type_cls=self.version_type,
164162
)
165163

166164
is_initial = self.is_initial_tag(current_tag_version, is_yes)
@@ -216,13 +214,13 @@ def __call__(self): # noqa: C901
216214
prerelease_offset=prerelease_offset,
217215
devrelease=devrelease,
218216
is_local_version=is_local_version,
219-
version_provider_cls=self.version_provider,
217+
version_type_cls=self.version_type,
220218
)
221219

222220
new_tag_version = bump.normalize_tag(
223221
new_version,
224222
tag_format=tag_format,
225-
version_provider_cls=self.version_provider,
223+
version_type_cls=self.version_type,
226224
)
227225
message = bump.create_commit_message(
228226
current_version, new_version, bump_commit_message

commitizen/defaults.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ class Settings(TypedDict, total=False):
4343
pre_bump_hooks: Optional[List[str]]
4444
post_bump_hooks: Optional[List[str]]
4545
prerelease_offset: int
46-
version_provider: Optional[str]
46+
version_type: Optional[str]
4747

4848

4949
name: str = "cz_conventional_commits"
@@ -72,7 +72,7 @@ class Settings(TypedDict, total=False):
7272
"pre_bump_hooks": [],
7373
"post_bump_hooks": [],
7474
"prerelease_offset": 0,
75-
"version_provider": None,
75+
"version_type": None,
7676
}
7777

7878
MAJOR = "MAJOR"

commitizen/version_providers.py renamed to commitizen/version_types.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ def __str__(self) -> str:
3232
return "".join(parts)
3333

3434

35-
providers = {
36-
"pep": Version,
35+
types = {
36+
"pep440": Version,
3737
"semver": SemVerVersion,
3838
}

docs/bump.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -96,8 +96,8 @@ options:
9696
--retry retry commit if it fails the 1st time
9797
--major-version-zero keep major version at zero, even for breaking changes
9898
--prerelease-offset start pre-releases with this offset
99-
--version-provider {pep,semver}
100-
choose version provider
99+
--version-type {pep440,semver}
100+
choose version type
101101

102102
```
103103
@@ -479,24 +479,24 @@ Defaults to: `0`
479479
prerelease_offset = 1
480480
```
481481
482-
### `version_provider`
482+
### `version_type`
483483
484-
Choose version provider
484+
Choose version type
485485
486-
* `pep` - default version provider.
486+
* `pep440` - default version type.
487487
- prerelease - `1.0.1a0`
488488
- devrelease - `1.0.1dev0`
489489
- dev and pre - `1.0.1a0.dev0`
490-
* `semver` - semver compatibly provider. Added "-" delimiter
490+
* `semver` - semver compatibly type. Added "-" delimiter
491491
- prerelease - `1.0.1-a0`
492492
- devrelease - `1.0.1-dev0`
493493
- dev and pre - `1.0.1-a0-dev0`
494494
495-
Defaults to: `pep`
495+
Defaults to: `pep440`
496496
497497
```toml
498498
[tool.commitizen]
499-
version_provider = "semver"
499+
version_type = "semver"
500500
```
501501
502502
## Custom bump

tests/commands/test_bump_command.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -833,7 +833,7 @@ def test_bump_manual_version_disallows_prerelease_offset(mocker):
833833
assert expected_error_message in str(excinfo.value)
834834

835835

836-
def test_bump_command_prelease_version_provider_via_cli(
836+
def test_bump_command_prelease_version_type_via_cli(
837837
tmp_commitizen_project, mocker: MockFixture
838838
):
839839
# PRERELEASE
@@ -854,7 +854,7 @@ def test_bump_command_prelease_version_provider_via_cli(
854854
"--prerelease",
855855
"alpha",
856856
"--yes",
857-
"--version-provider",
857+
"--version-type",
858858
"semver",
859859
]
860860
mocker.patch.object(sys, "argv", testargs)
@@ -884,7 +884,7 @@ def test_bump_command_prelease_version_provider_via_cli(
884884
assert "0.2.0" in f.read()
885885

886886

887-
def test_bump_command_prelease_version_provider_via_config(
887+
def test_bump_command_prelease_version_type_via_config(
888888
tmp_commitizen_project, mocker: MockFixture
889889
):
890890
# PRERELEASE
@@ -895,7 +895,7 @@ def test_bump_command_prelease_version_provider_via_config(
895895
tmp_commitizen_cfg_file.write(
896896
f"{tmp_commitizen_cfg_file.read()}\n"
897897
f'version_files = ["{tmp_version_file_string}"]\n'
898-
f'version_provider = "semver"'
898+
f'version_type = "semver"'
899899
)
900900

901901
create_file_and_commit("feat: new user interface")
@@ -941,7 +941,7 @@ def test_bump_command_prelease_version_provider_via_config(
941941
assert "0.2.0" in f.read()
942942

943943

944-
def test_bump_command_prelease_version_provider_check_old_tags(
944+
def test_bump_command_prelease_version_type_check_old_tags(
945945
tmp_commitizen_project, mocker: MockFixture
946946
):
947947
# PRERELEASE
@@ -953,7 +953,7 @@ def test_bump_command_prelease_version_provider_check_old_tags(
953953
f"{tmp_commitizen_cfg_file.read()}\n"
954954
f'version_files = ["{tmp_version_file_string}"]\n'
955955
f'tag_format = "v$version"\n'
956-
f'version_provider = "semver"\n'
956+
f'version_type = "semver"\n'
957957
)
958958
create_file_and_commit("feat: new user interface")
959959

tests/test_bump_find_version_provider.py renamed to tests/test_bump_find_version_type_semver.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import pytest
44

55
from commitizen.bump import generate_version
6-
from commitizen.version_providers import SemVerVersion
6+
from commitizen.version_types import SemVerVersion
77

88
simple_flow = [
99
(("0.1.0", "PATCH", None, 0, None), "0.1.1"),
@@ -81,7 +81,7 @@
8181
"test_input,expected",
8282
itertools.chain(tdd_cases, weird_cases, simple_flow, unexpected_cases),
8383
)
84-
def test_generate_version_provider(test_input, expected):
84+
def test_generate_version_type(test_input, expected):
8585
current_version = test_input[0]
8686
increment = test_input[1]
8787
prerelease = test_input[2]
@@ -95,7 +95,7 @@ def test_generate_version_provider(test_input, expected):
9595
prerelease=prerelease,
9696
prerelease_offset=prerelease_offset,
9797
devrelease=devrelease,
98-
version_provider_cls=SemVerVersion,
98+
version_type_cls=SemVerVersion,
9999
)
100100
)
101101
== expected

tests/test_conf.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@
5858
"pre_bump_hooks": ["scripts/generate_documentation.sh"],
5959
"post_bump_hooks": ["scripts/slack_notification.sh"],
6060
"prerelease_offset": 0,
61-
"version_provider": None,
61+
"version_type": None,
6262
}
6363

6464
_new_settings = {
@@ -78,7 +78,7 @@
7878
"pre_bump_hooks": ["scripts/generate_documentation.sh"],
7979
"post_bump_hooks": ["scripts/slack_notification.sh"],
8080
"prerelease_offset": 0,
81-
"version_provider": None,
81+
"version_type": None,
8282
}
8383

8484
_read_settings = {

0 commit comments

Comments
 (0)