File: D:/Python311/Lib/site-packages/pip/_internal/operations/__pycache__/prepare.cpython-311.pyc
�
�mi�p � �T � d Z ddlmZ ddlZddlZddlZddlmZ ddlm Z ddl
mZ ddlm
Z
ddlmZ dd lmZ dd
lmZ ddlmZ ddlmZmZmZmZmZmZmZ dd
lmZ ddl m!Z!m"Z" ddl#m$Z$ ddl%m&Z& ddl'm(Z( ddl)m*Z* ddl+m,Z,m-Z- ddl.m/Z/ ddl0m1Z1 ddl2m3Z3 ddl4m5Z5 ddl6m7Z7m8Z8 ddl9m:Z:m;Z; ddl<m=Z= ddl>m?Z?m@Z@mAZAmBZB ddlCmDZD ddlEmFZF ddlGmHZH e
rddlImJZJ e5eK� � ZLdEd+�ZMdFd3�ZNe G d4� d5� � � � ZO dGdHd<�ZP dGdId=�ZQ dGdJd?�ZR dKdLdB�ZS G dC� dD� � ZTdS )Mz(Prepares a distribution for installation� )�annotationsN)�Iterable)� dataclass)�Path)�
TYPE_CHECKING)�canonicalize_name)�BuildEnvironmentInstaller)�)make_distribution_for_install_requirement)�InstalledDistribution)�DirectoryUrlHashUnsupported�HashMismatch�HashUnpinned�InstallationError�MetadataInconsistent�NetworkConnectionError�VcsHashUnsupported)�
PackageFinder)�BaseDistribution�get_metadata_distribution)�ArchiveInfo)�Link)�Wheel)�
Downloader)�HTTPRangeRequestUnsupported�dist_from_wheel_url)�
PipSession)�BuildTracker)�InstallRequirement)� getLogger)�direct_url_for_editable�direct_url_from_link)�Hashes�
MissingHashes)�
indent_log)�display_path� hash_file�hide_url�redact_auth_from_requirement)�
TempDirectory)�unpack_file)�vcs)�BarType�reqr �
build_trackerr �build_env_installerr �build_isolation�bool�check_build_deps�returnr c �� � t | � � }|j }|�E|� | |� � 5 |� |||� � ddd� � n# 1 swxY w Y |� � � S )z(Prepare a distribution for installation.N)r
�build_tracker_id�track�prepare_distribution_metadatar )r- r. r/ r0 r2 �
abstract_dist�
tracker_ids �BD:\Python311\Lib\site-packages\pip/_internal/operations/prepare.py�_get_prepared_distributionr; A s� � � >�c�B�B�M��/�J�� �
�
�
��j�
1�
1� � ��7�7�#�_�6F�
�
�
� � � � � � � � � � � ���� � � � � �2�2�4�4�4s �A�A�A�linkr �location�str� verbosity�int�Nonec � � t j | j � � }|�J �|� |t | j � � |�� � d S )N)�urlr? )r+ �get_backend_for_scheme�scheme�unpackr'