관리-도구
편집 파일: prepare.cpython-310.pyc
o ƚRe] � @ 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 eCddfd!d"�ZDG d#d$� d$�ZE d:ded%e"d&e eC d'e e/ deEf d(d)�ZFd*eCd+eCddfd,d-�ZGd.eCd/eCddfd0d1�ZH d:ded&e eC d'e e/ deEfd2d3�ZI d:ded eCd%e"d&e eC d'e e/ de eE fd4d5�ZJded&eCd'e e/ de eC fd6d7�ZKG d8d9� d9�ZLdS );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&