File: //usr/lib/python3/dist-packages/pip/_internal/operations/__pycache__/prepare.cpython-310.pyc
o
@%NeQ^ � @ s� d Z ddlZddlZddlZddlZddlmZmZmZm Z ddl
mZ ddlm
Z
ddlmZ ddlmZmZmZmZmZmZmZ ddlmZ dd lmZ dd
lmZ ddlmZ ddl m!Z!m"Z" dd
l#m$Z$m%Z% ddl&m'Z' ddl(m)Z) ddl*m+Z+ ddl,m-Z- ddl.m/Z/m0Z0 ddl1m2Z2 ddl3m4Z4m5Z5m6Z6m7Z7 ddl8m9Z9 ddl:m;Z; ddl<m=Z= e�>e?�Z@de)de+dedeAdef
dd�ZBded eCd!eDddfd"d#�ZEG d$d%� d%�ZF d;ded&e"d'e eC d(e e/ deFf
d)d*�ZGd+eCd,eCddfd-d.�ZHd/eCd0eCddfd1d2�ZI d;ded'e eC d(e e/ deFfd3d4�ZJ d;ded eCd&e"d!eDd'e eC d(e e/ de eF fd5d6�ZKded'eCd(e e/ de eC fd7d8�ZLG d9d:� d:�ZMdS )<z)Prepares a distribution for installation
� N)�Dict�Iterable�List�Optional)�canonicalize_name)�)make_distribution_for_install_requirement)�InstalledDistribution)�DirectoryUrlHashUnsupported�HashMismatch�HashUnpinned�InstallationError�NetworkConnectionError�PreviousBuildDirError�VcsHashUnsupported)�
PackageFinder)�BaseDistribution)�Link)�Wheel)�BatchDownloader�
Downloader)�HTTPRangeRequestUnsupported�dist_from_wheel_url)�
PipSession)�InstallRequirement)�RequirementTracker)�copy2_fixed)�Hashes�
MissingHashes)�
indent_log)�display_path�hide_url�is_installable_dir�rmtree)�
TempDirectory)�unpack_file)�vcs�req�req_tracker�finder�build_isolation�returnc C sL t | �}|�| �� |�||� W d � |�� S 1 sw Y |�� S )z(Prepare a distribution for installation.N)r �track�prepare_distribution_metadata�get_metadata_distribution)r&