관리-도구
편집 파일: req_install.cpython-311.pyc
� �Dg̋ � � � d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlmZ d dl m Z d dlmZm Z mZmZmZmZmZmZ d dlmZ d dlmZ d dlmZ d dlmZ d d lmZ d d lmZ d dl m!Z! d dl"m#Z#m$Z$ d d l%m&Z&m'Z' d dl(m)Z) d dl*m+Z+m,Z,m-Z-m.Z. d dl/m0Z0 d dl1m2Z2 d dl3m4Z4 d dl5m6Z6 d dl7m8Z8 d dl9m6Z: d dl;m<Z= d dl>m?Z? d dl@mAZAmBZB d dlCmDZD d dlEmFZF d dlGmHZH d dlImJZJmKZKmLZLmMZMmNZNmOZOmPZPmQZQ d dlRmSZS d dlTmUZU d dlVmWZWmXZX d dlYmZZZ d d l[m\Z\ d d!l]m^Z^ ej_ e`� � Za G d"� d#� � Zbd$ebd%ecfd&�Zdd'ed(eeb d)ecd%eefd*�Zfd'ed(eeb d%dfd+�ZgdS ),� N)�Values)�Path)�Any� Collection�Dict�Iterable�List�Optional�Sequence�Union)�Marker)�Requirement)�SpecifierSet)�canonicalize_name)�Version)�parse)�BuildBackendHookCaller)�BuildEnvironment�NoOpBuildEnvironment)�InstallationError�PreviousBuildDirError)� get_scheme)�BaseDistribution�get_default_environment�get_directory_distribution�get_wheel_distribution)�FilesystemWheel)� DirectUrl)�Link)�generate_metadata)�generate_editable_metadata)�install_editable)� install_wheel)�load_pyproject_toml�make_pyproject_path)�UninstallPathSet)� deprecated)�Hashes)� ConfiguredBuildBackendHookCaller�ask_path_exists� backup_dir�display_path�hide_url�is_installable_dir�redact_auth_from_requirement�redact_auth_from_url)�get_requirement)�runner_with_spinner_message)� TempDirectory� tempdir_kinds)�unpack_file)�running_under_virtualenv)�vcsc � � e Zd ZdZ dMdddddddd�dee deeed f ded ee d ee dee ded eee deeeee f deeeeeee f f dede e dededdfd�Zdefd�Zdefd�Zdefd�Zedee fd�� � Zej defd�� � Zedefd�� � Zedefd�� � Zedefd�� � ZdNdeee defd�Zedefd �� � ZdOd"edefd#�Zdee fd$�Z d%ed&ed'edefd(�Z!dPd)�Z"dPd*�Z#d+eddfd,�Z$edefd-�� � Z%edefd.�� � Z&edefd/�� � Z'edefd0�� � Z(edefd1�� � Z)edefd2�� � Z*dPd3�Z+dPd4�Z,dPd5�Z-ede.fd6�� � Z/de0fd7�Z1dPd8�Z2 dQd9ed&ed'eddfd:�Z3d;e4ddfd<�Z5dPd=�Z6dPd>�Z7 dQd?ed@edee8 fdA�Z9dBedCedDedefdE�Z:d%ee ddfdF�Z; dRd ee<e dGee dHee dIee dJed+edKeddfdL�Z=dS )S�InstallRequirementz� Represents something that may be installed later on, may have information about where to fetch the relevant requirement and also contains logic for installing the said requirement. FN� )�global_options�hash_options�config_settings� constraint�extras� user_supplied�permit_editable_wheels�req� comes_from�editable�link�markers� use_pep517�isolatedr; r<