lib.packaging.version.*

exception lib.packaging.version.InvalidVersion[source]

Bases: ValueError

An invalid version was found, users should refer to PEP 440.

class lib.packaging.version.LegacyVersion(version)[source]

Bases: _BaseVersion

property base_version: str
property dev: None
property epoch: int
property is_devrelease: bool
property is_postrelease: bool
property is_prerelease: bool
property local: None
property post: None
property pre: None
property public: str
property release: None
class lib.packaging.version.Version(version)[source]

Bases: _BaseVersion

_regex = re.compile('^\\s*\n    v?\n    (?:\n        (?:(?P<epoch>[0-9]+)!)?                           # epoch\n        (?P<release>[0-9]+(?:\\.[0-9]+)*)                  # release segment\n        (?P<pre>              , re.IGNORECASE|re.VERBOSE)
property base_version: str
property dev: Tuple[str, int] | None
property epoch: int
property is_devrelease: bool
property is_postrelease: bool
property is_prerelease: bool
property local: str | None
property major: int
property micro: int
property minor: int
property post: Tuple[str, int] | None
property pre: Tuple[str, int] | None
property public: str
property release: Tuple[int, ...]
lib.packaging.version.parse(version)[source]

Parse the given version string and return either a Version object or a LegacyVersion object depending on if the given version is a valid PEP 440 version or a legacy version.

Return type:

Union[LegacyVersion, Version]