Version Parser
JavaScript Version
https://www.npmjs.com/package/version-parser
Python Version
The version parser is able to parse versions and figure out which of them are build in one of the following three formats: Major-Version, Minor-Version and Build-Version.
Possible input types are:
| Version | Typ |
|---|---|
| v1.2.3 | Version |
| V1.2.3 | Version |
| v_1_2_3 | FILENAME |
| v1_2_3 | FILENAME |
| V_1_2_3 | FILENAME |
| V1_2_3 | FILENAME |
| 1_2_3 | FILENAME |
| VM1m2b3 | CLASSNAME_BUILD |
| VM1m2p3 | CLASSNAME_PATCH |
| vM1m2b3 | CLASSNAME_BUILD |
| vM1m2p3 | CLASSNAME_PATCH |
| 1.2.3 | STRIPPED_VERSION |
| 2312 | NUMBER |
Install
pip install version-parser
Usage
Create object with the version as a String as initial parameter.
from version_parser import Version
v1 = Version("v2.3.4")
To compare two version objects/numbers, simply put the versions as Strings into seperate objects and compare them using the logical operators.
from version_parser.version import Version
v1 = Version("v2.3.4")
v2 = Version("v2.3.2")
print(v1 < v2)
>> False
print(v1 > v2)
>> True
print(v1 == v2)
>> False
The last digets behind the last dot should be the Patch or Build Version Number. Differences in this area should be compatible to each other.
from version_parser.version import Version
v1 = Version("v2.3.4")
v2 = Version("v2.3.5")
print(v1 == v2)
>> False
print(v1.compatible_version_with(v2))
>> True
You can also get only the Major, Minor or Build Version by using:
from version_parser import Version
v = Version("v2.3.4")
v.get_major_version()
2
v.get_minor_version()
3
v.get_build_version()
4
It's possible to convert the version format, too:
from version_parser import Version, VersionType
v = Version("v2.3.4") # VersionType = Version
print(v.get_type())
>> VersionType.Version
print(v.get_typed_version(VersionType.FILENAME))
>> v_2_3_4
Any version can be represented by an Integer.
The sections of major, minor, build/patched version should have a maximum of three digets.
from version_parser import Version
v = Version("v2.3.4")
print(v.get_number())
>> 2003004
VersionTypes
VersionType.FILENAME
"v_<MAJOR>_<MINOR>_<BUILD/PATCH>"
VersionType.CLASSNAME
"VM<MAJOR>m<MINOR>b<BUILD/PATCH>"
VersionType.VERSION
"v<MAJOR>.<MINOR>.<BUILD/PATCH>"
VersionType.STRIPPED_VERSION
"<MAJOR>.<MINOR>.<BUILD/PATCH>"
VersionType.NUMBER
each section is filled zeros up to three digets
"<MAJOR><MINOR><BUILD/PATCH>"
VersionType.CLASSNAME_BUILD
same like CLASSNAME_BUILD
VersionType.CLASSNAME_PATCH
"VM<MAJOR>m<MINOR>p<BUILD/PATCH>"
^
PATCH
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file version_parser-1.0.1.tar.gz.
File metadata
- Download URL: version_parser-1.0.1.tar.gz
- Upload date:
- Size: 4.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/51.1.1 requests-toolbelt/0.9.1 tqdm/4.55.1 CPython/3.6.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7320b00cab8a04694206818c9129864dd0783cec0c0eff25b1c922e7d838dbc0
|
|
| MD5 |
0e8aa09a0e3834ae1c82d9f1f18500d6
|
|
| BLAKE2b-256 |
b91861a661be6225176a05ce1cad4f1bcfc9cba57744a9faacf550c5a9e68070
|