A Python module to simplify semantic versioning.
The module follows the MAJOR.MINOR.PATCH
style:
MAJOR
version when you make incompatible API changes,MINOR
version when you add functionality in a backwards compatible manner, andPATCH
version when you make backwards compatible bug fixes.Additional labels for pre-release and build metadata are supported.
To import this library, use:
Working with the library is quite straightforward. To turn a version string into the different parts, use the semver.Version.parse
function:
>>> ver = semver.Version.parse('1.2.3-pre.2+build.4') >>> ver.major 1 >>> ver.minor 2 >>> ver.patch 3 >>> ver.prerelease 'pre.2' >>> ver.build 'build.4'
To raise parts of a version, there are a couple of functions available for you. The function semver.Version.bump_major
leaves the original object untouched, but returns a new semver.Version
instance with the raised major part:
>>> ver = semver.Version.parse("3.4.5") >>> ver.bump_major() Version(major=4, minor=0, patch=0, prerelease=None, build=None)
It is allowed to concatenate different "bump functions":
>>> ver.bump_major().bump_minor() Version(major=4, minor=1, patch=0, prerelease=None, build=None)
To compare two versions, semver provides the semver.compare
function. The return value indicates the relationship between the first and second version:
>>> semver.compare("1.0.0", "2.0.0") -1 >>> semver.compare("2.0.0", "1.0.0") 1 >>> semver.compare("2.0.0", "2.0.0") 0
There are other functions to discover. Read on!
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4