관리-도구
편집 파일: package_finder.cpython-312.pyc
� G��e� � �� � d Z ddlZddlZddlZddlZddlZddlmZmZm Z m Z mZmZm Z mZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ dd lmZmZmZmZ dd lmZm Z ddl!m"Z" ddl#m$Z$ dd l%m&Z& ddl'm(Z( ddl)m*Z* ddl+m,Z, ddl-m.Z. ddl/m0Z0 ddl1m2Z2 ddl3m4Z4 ddl5m6Z6 ddl7m8Z8 ddl9m:Z: ddl;m<Z< ddl=m>Z> erddl?m@Z@ g d�ZA e2eB� ZCee d e eDeEf f ZFe eDeDeDeeeD eFf ZG d6de&de eDeDeDf deHd eHfd!�ZI G d"� d#ej� � ZK G d$� d%� ZLd&e e" d'ee6 d(eEd e e" fd)�ZM G d*� d+� ZN G d,� d-� ZO G d.� d/� ZP G d0� d1� ZQd2eEd3eEd eDfd4�ZRd2eEd3eEd eeE fd5�ZSy)7z!Routines related to PyPI, indexes� N)� TYPE_CHECKING� FrozenSet�Iterable�List�Optional�Set�Tuple�Union)� specifiers)�Tag)�canonicalize_name)�_BaseVersion)�parse)�BestVersionAlreadyInstalled�DistributionNotFound�InvalidWheelFilename�UnsupportedWheel)� LinkCollector�parse_links)�InstallationCandidate)� FormatControl)�Link)�SearchScope)�SelectionPreferences)�TargetPython)�Wheel)�InstallRequirement)� getLogger)�WHEEL_EXTENSION)�Hashes)� indent_log)�build_netloc)�check_requires_python)�SUPPORTED_EXTENSIONS)� TypeGuard)r �BestCandidateResult� PackageFinder� �link�version_info�ignore_requires_python�returnc �x � t | j |�� }|sfdj t t |� � }|s#t j d|| j | � yt j d|| j | � y# t j $ r$ t j d| j | � Y yw xY w)aa Return whether the given Python version is compatible with a link's "Requires-Python" value. :param version_info: A 3-tuple of ints representing the Python major-minor-micro version to check. :param ignore_requires_python: Whether to ignore the "Requires-Python" value if the given Python version isn't compatible. )r* �.z4Link requires a different Python (%s not in: %r): %sFzBIgnoring failed Requires-Python check (%s not in: %r) for link: %sz2Ignoring invalid Requires-Python (%r) for link: %sT) r# �requires_python�join�map�str�logger�verbose�debugr �InvalidSpecifier)r) r* r+ � is_compatible�versions ��/builddir/build/BUILDROOT/alt-python312-pip-23.3.1-1.el8.x86_64/opt/alt/python312/lib/python3.12/site-packages/pip/_internal/index/package_finder.py�_check_link_requires_pythonr: 3 s� � ��-�� � �%� � � ��h�h�s�3��5�6�G�)����J���(�(�� � ��L�L�T���$�$�� � ��3 �&�&� ����@�� � �� �0 �3 �s �B �4B9�8B9c � � e Zd Z ej � Z ej � Z ej � Z ej � Z ej � Z ej � Z ej � Zy)�LinkTypeN)�__name__� __module__�__qualname__�enum�auto� candidate�different_project�yanked�format_unsupported�format_invalid�platform_mismatch�requires_python_mismatchr( � r9 r<