pontos.version.schemes package¶
- pontos.version.schemes.VERSIONING_SCHEMES: dict[str, type[VersioningScheme]] = {'pep440': <class 'pontos.version.schemes._pep440.PEP440VersioningScheme'>, 'semver': <class 'pontos.version.schemes._semantic.SemanticVersioningScheme'>}¶
Dictionary with available versioning schemes
- pontos.version.schemes.versioning_scheme_argument_type(value)¶
Verifies if the passed value is a valid versioning scheme and returns the corresponding versioning scheme.
Intended to be used as in ArgumentParser.add_argument as the type.
- Raises:
ArgumentTypeError – If the passed value is not a valid versioning scheme
- Return type:
Example
from argparse import ArgumentParser from pontos.version.scheme versioning_scheme_argument_type parser = ArgumentParser() parser.add_argument( "--versioning-scheme", type=versioning_scheme_argument_type, )
- class pontos.version.schemes.VersioningScheme¶
An abstract base class for versioning schemes
Example
Example on how to implement a new VersioningScheme
from pontos.version.scheme import VersioningScheme class MyVersioningScheme(VersioningScheme): version_cls = MyVersion version_calculator_cls = MyVersionCalculator
- classmethod parse_version(version)¶
Parse a version from a version string
- Raises:
pontos.version.error.VersionError – If the version string contains an invalid version
- Returns:
A version instance
- Return type:
- classmethod calculator()¶
Return a matching version calculator for the implemented versioning schema.
- Returns:
A version calculator
- Return type: