Skip to main content

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 on top of PEP440

  1. Three version numbers are mandatory: X.Y.Z.
  2. A leading forth number (epoch) is forbidden.
  3. Pre-release identifier like alpha, beta and release-candidates are only allowed with their abbreviations:
    • alpha -> a
    • beata -> b
    • release-candidate -> rc
  4. Other variante as rc are not supported for release-candidates.
  5. Pre-release identifier must follow the scheme {a|b|rc}N where N is an interger.
  6. Pre-release and post-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 in 1.1.1.post1.
  7. Additional identifiers or separators are forbidden.

Valid 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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

verbum-2.0.0.tar.gz (9.3 kB view hashes)

Uploaded Source

Built Distribution

verbum-2.0.0-py3-none-any.whl (5.0 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page