관리-도구
편집 파일: prepare.cpython-39.pyc
a ��Re] � @ sR 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@e)e+eeAed�dd�ZBeeCdd�dd�ZDG dd� d�ZEd3ee"e eC e e/ eEd �d!d"�ZFeCeCdd#�d$d%�ZGeCeCdd&�d'd(�ZHd4ee eC e e/ eEd)�d*d+�ZId5eeCe"e eC e e/ e eE d,�d-d.�ZJeeCe e/ e eC d)�d/d0�ZKG d1d2� d2�ZLdS )6z)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 sF t | �}|�| �� |�||� W d � n1 s40 Y |�� S )z(Prepare a distribution for installation.N)r �track�prepare_distribution_metadata�get_metadata_distribution)r&