Metadata-Version: 2.1
Name: version_parser
Version: 1.0.1
Summary: This package can parse and compare semantic versioning.
Home-page: https://github.com/eieste/VersionParser
Author: Stefan Eiermann
Author-email: python-org@ultraapp.de
License: UNKNOWN
Description: # Version Parser
        
        
        ## JavaScript Version
        
        [https://www.npmjs.com/package/version-parser](https://www.npmjs.com/package/version-parser)
        
        [![npm version](https://badge.fury.io/js/version-parser.svg)](https://badge.fury.io/js/version-parser)
        
        ## Python Version
        
        [![Build Status](https://travis-ci.org/eieste/VersionParser.svg?branch=master)](https://travis-ci.org/eieste/VersionParser)
        [![PyPI version](https://badge.fury.io/py/version-parser.svg)](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 
        ```
        
        
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Topic :: Software Development
Classifier: Topic :: Utilities
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: JavaScript
Classifier: Development Status :: 5 - Production/Stable
Description-Content-Type: text/markdown
