HEX
Server: Apache
System: Linux host39.registrar-servers.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
User: idolaotomotif (3857)
PHP: 8.2.31
Disabled: NONE
Upload Files
File: //opt/hc_python/lib64/python3.12/site-packages/pip/_internal/models/candidate.py
from dataclasses import dataclass

from pip._vendor.packaging.version import Version
from pip._vendor.packaging.version import parse as parse_version

from pip._internal.models.link import Link


@dataclass(frozen=True, slots=True)
class InstallationCandidate:
    """Represents a potential "candidate" for installation."""

    name: str
    version: Version
    link: Link

    def __init__(self, name: str, version: str, link: Link) -> None:
        object.__setattr__(self, "name", name)
        object.__setattr__(self, "version", parse_version(version))
        object.__setattr__(self, "link", link)

    def __str__(self) -> str:
        return f"{self.name!r} candidate (version {self.version} at {self.link})"