From 4aab4087dc97906d0b9890035401175cdaab32d4 Mon Sep 17 00:00:00 2001 From: blackhao <13851610112@163.com> Date: Fri, 22 Aug 2025 02:51:50 -0500 Subject: 2.0 --- .../~ip/_internal/models/candidate.py | 30 ++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 .venv/lib/python3.12/site-packages/~ip/_internal/models/candidate.py (limited to '.venv/lib/python3.12/site-packages/~ip/_internal/models/candidate.py') diff --git a/.venv/lib/python3.12/site-packages/~ip/_internal/models/candidate.py b/.venv/lib/python3.12/site-packages/~ip/_internal/models/candidate.py new file mode 100644 index 0000000..9184a90 --- /dev/null +++ b/.venv/lib/python3.12/site-packages/~ip/_internal/models/candidate.py @@ -0,0 +1,30 @@ +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 f"{self.name!r} candidate (version {self.version} at {self.link})" -- cgit v1.2.3