/usr/local/lib/python3.6/site-packages/pip/_internal/models
NameSizeModeActions
__pycache__/-0755rm
candidate.py9900644editdlrm
direct_url.py63500644editdlrm
format_control.py25200644editdlrm
index.py10300644editdlrm
link.py98170644editdlrm
scheme.py7380644editdlrm
search_scope.py45200644editdlrm
selection_prefs.py19070644editdlrm
target_python.py38580644editdlrm
wheel.py35000644editdlrm
__init__.py630644editdlrm
Edit: /usr/local/lib/python3.6/site-packages/pip/_internal/models/candidate.py (990B)
from pip._vendor.packaging.version import parse as parse_version from pip._internal.models.link import Link from pip._internal.utils.models import KeyBasedCompareMixin class InstallationCandidate(KeyBasedCompareMixin): """Represents a potential "candidate" for installation.""" __slots__ = ["name", "version", "link"] def __init__(self, name: str, version: str, link: Link) -> None: self.name = name self.version = parse_version(version) self.link = link super().__init__( key=(self.name, self.version, self.link), defining_class=InstallationCandidate, ) def __repr__(self) -> str: return "".format( self.name, self.version, self.link, ) def __str__(self) -> str: return "{!r} candidate (version {} at {})".format( self.name, self.version, self.link, )