Viewing file: candidate.py (1.17 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
from pip._vendor.packaging.version import parse as parse_version
from pip._internal.utils.models import KeyBasedCompareMixin from pip._internal.utils.typing import MYPY_CHECK_RUNNING
if MYPY_CHECK_RUNNING: from pip._vendor.packaging.version import _BaseVersion from pip._internal.models.link import Link
class InstallationCandidate(KeyBasedCompareMixin): """Represents a potential "candidate" for installation. """
__slots__ = ["name", "version", "link"]
def __init__(self, name, version, link): # type: (str, str, Link) -> None self.name = name self.version = parse_version(version) # type: _BaseVersion self.link = link
super(InstallationCandidate, self).__init__( key=(self.name, self.version, self.link), defining_class=InstallationCandidate )
def __repr__(self): # type: () -> str return "<InstallationCandidate({!r}, {!r}, {!r})>".format( self.name, self.version, self.link, )
def __str__(self): # type: () -> str return '{!r} candidate (version {} at {})'.format( self.name, self.version, self.link, )
|