diff options
| -rw-r--r-- | .gitignore | 1 | ||||
| -rw-r--r-- | python-version-parser.spec | 579 | ||||
| -rw-r--r-- | sources | 1 |
3 files changed, 581 insertions, 0 deletions
@@ -0,0 +1 @@ +/version_parser-1.0.1.tar.gz diff --git a/python-version-parser.spec b/python-version-parser.spec new file mode 100644 index 0000000..c9103e1 --- /dev/null +++ b/python-version-parser.spec @@ -0,0 +1,579 @@ +%global _empty_manifest_terminate_build 0 +Name: python-version-parser +Version: 1.0.1 +Release: 1 +Summary: This package can parse and compare semantic versioning. +License: MIT License +URL: https://github.com/eieste/VersionParser +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/b9/18/61a661be6225176a05ce1cad4f1bcfc9cba57744a9faacf550c5a9e68070/version_parser-1.0.1.tar.gz +BuildArch: noarch + + +%description +# Version Parser + + +## JavaScript Version + +[https://www.npmjs.com/package/version-parser](https://www.npmjs.com/package/version-parser) + +[](https://badge.fury.io/js/version-parser) + +## Python Version + +[](https://travis-ci.org/eieste/VersionParser) +[](https://badge.fury.io/py/version-parser) + +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 +```python +pip install version-parser +``` + +## Usage + +Create object with the version as a String as initial parameter. + +```python +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. +```python +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. +```python +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: + +````python +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: + +````python +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. + +````python +from version_parser import Version +v = Version("v2.3.4") +print(v.get_number()) +>> 2003004 +```` + + +## VersionTypes + +### VersionType.FILENAME +```python +"v_<MAJOR>_<MINOR>_<BUILD/PATCH>" +``` + +### VersionType.CLASSNAME +```python +"VM<MAJOR>m<MINOR>b<BUILD/PATCH>" +``` + +### VersionType.VERSION +```python +"v<MAJOR>.<MINOR>.<BUILD/PATCH>" +``` + +### VersionType.STRIPPED_VERSION +```python +"<MAJOR>.<MINOR>.<BUILD/PATCH>" +``` + +### VersionType.NUMBER +> each section is filled zeros up to three digets +```python +"<MAJOR><MINOR><BUILD/PATCH>" +``` + +### VersionType.CLASSNAME_BUILD +> same like CLASSNAME_BUILD + + +### VersionType.CLASSNAME_PATCH +```python +"VM<MAJOR>m<MINOR>p<BUILD/PATCH>" + ^ + PATCH +``` + +%package -n python3-version-parser +Summary: This package can parse and compare semantic versioning. +Provides: python-version-parser +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-version-parser +# Version Parser + + +## JavaScript Version + +[https://www.npmjs.com/package/version-parser](https://www.npmjs.com/package/version-parser) + +[](https://badge.fury.io/js/version-parser) + +## Python Version + +[](https://travis-ci.org/eieste/VersionParser) +[](https://badge.fury.io/py/version-parser) + +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 +```python +pip install version-parser +``` + +## Usage + +Create object with the version as a String as initial parameter. + +```python +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. +```python +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. +```python +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: + +````python +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: + +````python +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. + +````python +from version_parser import Version +v = Version("v2.3.4") +print(v.get_number()) +>> 2003004 +```` + + +## VersionTypes + +### VersionType.FILENAME +```python +"v_<MAJOR>_<MINOR>_<BUILD/PATCH>" +``` + +### VersionType.CLASSNAME +```python +"VM<MAJOR>m<MINOR>b<BUILD/PATCH>" +``` + +### VersionType.VERSION +```python +"v<MAJOR>.<MINOR>.<BUILD/PATCH>" +``` + +### VersionType.STRIPPED_VERSION +```python +"<MAJOR>.<MINOR>.<BUILD/PATCH>" +``` + +### VersionType.NUMBER +> each section is filled zeros up to three digets +```python +"<MAJOR><MINOR><BUILD/PATCH>" +``` + +### VersionType.CLASSNAME_BUILD +> same like CLASSNAME_BUILD + + +### VersionType.CLASSNAME_PATCH +```python +"VM<MAJOR>m<MINOR>p<BUILD/PATCH>" + ^ + PATCH +``` + +%package help +Summary: Development documents and examples for version-parser +Provides: python3-version-parser-doc +%description help +# Version Parser + + +## JavaScript Version + +[https://www.npmjs.com/package/version-parser](https://www.npmjs.com/package/version-parser) + +[](https://badge.fury.io/js/version-parser) + +## Python Version + +[](https://travis-ci.org/eieste/VersionParser) +[](https://badge.fury.io/py/version-parser) + +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 +```python +pip install version-parser +``` + +## Usage + +Create object with the version as a String as initial parameter. + +```python +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. +```python +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. +```python +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: + +````python +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: + +````python +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. + +````python +from version_parser import Version +v = Version("v2.3.4") +print(v.get_number()) +>> 2003004 +```` + + +## VersionTypes + +### VersionType.FILENAME +```python +"v_<MAJOR>_<MINOR>_<BUILD/PATCH>" +``` + +### VersionType.CLASSNAME +```python +"VM<MAJOR>m<MINOR>b<BUILD/PATCH>" +``` + +### VersionType.VERSION +```python +"v<MAJOR>.<MINOR>.<BUILD/PATCH>" +``` + +### VersionType.STRIPPED_VERSION +```python +"<MAJOR>.<MINOR>.<BUILD/PATCH>" +``` + +### VersionType.NUMBER +> each section is filled zeros up to three digets +```python +"<MAJOR><MINOR><BUILD/PATCH>" +``` + +### VersionType.CLASSNAME_BUILD +> same like CLASSNAME_BUILD + + +### VersionType.CLASSNAME_PATCH +```python +"VM<MAJOR>m<MINOR>p<BUILD/PATCH>" + ^ + PATCH +``` + +%prep +%autosetup -n version-parser-1.0.1 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-version-parser -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Fri May 05 2023 Python_Bot <Python_Bot@openeuler.org> - 1.0.1-1 +- Package Spec generated @@ -0,0 +1 @@ +0e8aa09a0e3834ae1c82d9f1f18500d6 version_parser-1.0.1.tar.gz |
