| Server IP : 209.209.40.120 / Your IP : 216.73.217.112 Web Server : Microsoft-IIS/10.0 System : Windows NT NEWWWW 10.0 build 17763 (Windows Server 2019) i586 User : NEWWWW$ ( 0) PHP Version : 8.3.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : C:/Python312/Lib/site-packages/pip/_internal/resolution/legacy/__pycache__/ |
Upload File : |
�
�k�f^ � �� � d Z ddlZddlZddlmZ ddlmZ ddlmZm Z m
Z
mZmZm
Z
ddlmZ ddlmZ ddlmZ dd lmZmZmZmZmZmZmZ dd
lmZ ddlmZ ddl m!Z! dd
l"m#Z# ddl$m%Z% ddl&m'Z'm(Z( ddl)m*Z* ddl+m,Z,m-Z- ddl.m/Z/ ddl0m1Z1 ddl2m3Z3 ddl4m5Z5 ddl6m7Z7 ddl8m9Z9 ejt e;� Z<eee= e
e' f Z> ddede
e?e?e?f de@ddfd�ZA G d� de,� ZBy) ay Dependency Resolution
The dependency resolution in pip is performed as follows:
for top-level requirements:
a. only one spec allowed per project, regardless of conflicts or not.
otherwise a "double requirement" exception is raised
b. they override sub-dependency requirements.
for sub-dependencies
a. "first found, wins" (where the order is breadth first)
� N)�defaultdict)�chain)�DefaultDict�Iterable�List�Optional�Set�Tuple)�
specifiers)�Requirement)�
WheelCache)�BestVersionAlreadyInstalled�DistributionNotFound� HashError�
HashErrors�InstallationError�NoneMetadataError�UnsupportedPythonVersion)�
PackageFinder)�BaseDistribution)�Link)�Wheel)�RequirementPreparer)�InstallRequirement�check_invalid_constraint_type)�RequirementSet)�BaseResolver�InstallRequirementProvider)�compatibility_tags)�
get_supported)�direct_url_from_link)�
indent_log)�normalize_version_info)�check_requires_python�dist�version_info�ignore_requires_python�returnc �� � t | j � } t ||�� }|rydj t t |� � }|r#t j d| j ||� yt d| j �d|� d|��� �# t $ r}t | t |� � �d}~ww xY w# t
j $ r+}t j d| j |� Y d}~yd}~ww xY w) a�
Check whether the given Python version is compatible with a distribution'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.
:raises UnsupportedPythonVersion: When the given Python version isn't
compatible.
N)r&