Skip to main content

semvermamager implements a restricted subset of the SEMVER standard

Project description


semvermamager exports a single class Version which implements a restricted subset of the SEMVER standard.

Version defines a Semantic version using the following field structure:


    int MAJOR  # 0->N
    int MINOR  # 0->N
    int PATCH  # 0-N
    str TAG    # one of "alpha", "beta". 
    int TAG_VERSION # a version number appended to alpha or beta. 

Versions may be bumped by a single increment using any of the bump functions. Bumping a PATCH value simply increments it. Bumping a MINOR value zeros the PATCH value and bumping a MAJOR zeros the MINOR and the PATCH value.

semvermanager only supports Python 3.6 and greater.

semvermgr script

The package includes a command line script for generating versions.

$ semvermgr -h
usage: [-h] [--version VERSION] [--make]
                    [--bump {major,minor,patch,tag,tag_version}]
                    [--getversion] [--bareversion] [--overwrite] [--update]
                    [--label LABEL] [--separator SEPARATOR]
                    [filenames [filenames ...]]

positional arguments:
  filenames             Files to use as version file

optional arguments:
  -h, --help            show this help message and exit
  --version VERSION     Specify a version in the form major.minor.patch-tag
  --make                Make a new version file
  --bump {major,minor,patch,tag,tag_version}
                        Bump a version field
  --getversion          Report the current version in the specified file
  --bareversion         Return the unquoted version strin with VERSION=
  --overwrite           overwrite files without checking [default: False]
  --update              Update multiple version strings in file
  --label LABEL         field used to determine which line is the version line
                        [default: VERSION]
  --separator SEPARATOR
                        Character used to separate the version label from the
                        version [default: =]


    $  pip3 install semvermanager


Full docs are on

Source code

Can be found on

Author: jdrumgoole on GitHub

Project details

Download files

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

Files for semvermanager, version 1.0.9
Filename, size File type Python version Upload date Hashes
Filename, size semvermanager-1.0.9-py2.py3-none-any.whl (15.8 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size semvermanager-1.0.9.tar.gz (9.4 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page