Python version bumper.
Project description
verbum
A version bumping library.
Examle
from verbum import verbum
current_release = "1.1.1"
new_release = verbum.bump_version(current_release, verbum.BumpType.ALPHA)
print(new_release) # 1.1.1a1
Version strings
Input
verbum is opinionated and version strings accepted by bump_version
are a subset of valid strings
specified in PEP440.
Output
Version strings output by bump_version
are PEP440 compliant.
Ruleset
- Three version numbers are mandatory:
X.Y.Z
. - A leading forth number (epoch) is forbidden.
- Pre-release identifier like alpha, beta and release-candidates are only allowed with their
abbreviations:
alpha
->a
beata
->b
release-candidate
->rc
- Other variante as
rc
are not supported for release-candidates. - Pre-release identifier must follow the scheme
{a|b|rc}N
whereN
is an interger. - Pre-release identifier must come behind the third version number.
- Post-release identifier must follow the scheme
.postN
whereN
is an interger. - Post-release identifier must come behind the third version number or an optional pre-release identifier.
- Dev-release identifier must follow the scheme
.devN
whereN
is an interger. - Dev-release identifier must come last.
- Pre-release, post-release and dev-release counter must start with 1 not 0.
A 0 is interpreted as not set. This means e.g. bumping a post-release on this
1.1.1rc0
would result in1.1.1.post1
. - Addition identifiers or separators are forbidden.
Examples
1.2.3a1
1.2.3b1
1.2.3rc1
1.2.3
1.2.3.post1
1.2.3a1.post1
1.2.3b1.post1
1.2.3rc1.post1
1.2.3.dev1
1.2.3a1.dev1
1.2.3b1.dev1
1.2.3rc1.dev1
1.2.3.post1.dev1
1.2.3rc1.post1.dev1
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
verbum-1.0.0.tar.gz
(8.5 kB
view hashes)
Built Distribution
verbum-1.0.0-py3-none-any.whl
(4.6 kB
view hashes)