3
”Reˆƒ ã @ sD d dl mZ d dlZd dlZd dlZd dlZd dlZd dlZd dlm Z m
Z
d dlmZ d dl
mZ d dlmZ d dlmZ d dlmZ d d lmZ d d
lmZ d dlmZ d dlmZ d d
lmZ d d
lmZ d dl!m"Z# d dl$m%Z% d dl$m&Z' d dl(m)Z) d dl*m+Z+m,Z, d dl-m.Z. d dl/m0Z0 d dl1m2Z2 d dl3m4Z4 d dl5m6Z6 d dl7m8Z8m9Z9m:Z:m;Z;mZ>m?Z?m@Z@mAZA d dlBmCZC d dlDmEZEmFZF d dlGmHZH d dlImJZJ d dlKmLZL eH�rd dlMmNZNmOZOmPZPmQZQmRZRmSZSmTZT d dlmUZU d d lVmWZW d d!lXmYZY d d"lZm[Z[ ej\e]ƒZ^d#d$„ Z_G d%d&„ d&e`ƒZad'd(„ ZbdS ))é )Úabsolute_importN)Ú
pkg_resourcesÚsix)ÚRequirement)Úcanonicalize_name)ÚVersion)Úparse)ÚPep517HookCaller)ÚNoOpBuildEnvironment)ÚInstallationError)Ú
get_scheme)ÚLink)Úgenerate_metadata)Úinstall_editable)ÚLegacyInstallFailure)Úinstall)Ú
install_wheel)Úload_pyproject_tomlÚmake_pyproject_path)ÚUninstallPathSet)Ú
deprecated)Údirect_url_from_link)ÚHashes)Ú
indent_log)
Úask_path_existsÚ
backup_dirÚdisplay_pathÚdist_in_install_pathÚdist_in_site_packagesÚdist_in_usersiteÚget_distributionÚget_installed_versionÚhide_urlÚredact_auth_from_url)Úget_metadata)Ú
TempDirectoryÚ
tempdir_kinds)ÚMYPY_CHECK_RUNNING)Úrunning_under_virtualenv)Úvcs)ÚAnyÚDictÚIterableÚListÚOptionalÚSequenceÚUnion)ÚBuildEnvironment)ÚDistribution)ÚSpecifierSet)ÚMarkerc C s† | j tjƒ}tjj|ƒ\}}tj||ƒ}|jdƒrJtj}tjj |ƒd }n.|jdƒsXt
‚tj}tjj |ƒd jdƒd }||||d�S )zQReturn a pkg_resources.Distribution for the provided
metadata directory.
z .egg-infor z
.dist-infoú-)Úproject_nameÚmetadata)ÚrstripÚosÚsepÚpathÚsplitr ÚPathMetadataÚendswithr2 ÚsplitextÚAssertionErrorÚDistInfoDistribution)Úmetadata_directoryÚdist_dirÚbase_dirÚ
dist_dir_namer7 Údist_clsÚ dist_name© rH úŒ/builddir/build/BUILDROOT/alt-python36-pip-20.2.4-5.el8.x86_64/opt/alt/python36/lib/python3.6/site-packages/pip/_internal/req/req_install.pyÚ _get_distE s
rJ c @ s\ e Zd ZdZdddddddddf dfdd„Zdd„ Zdd „ Zd
d„ Zedd
„ ƒZ edd„ ƒZ
edd„ ƒZedd„ ƒZdEdd„Z
edd„ ƒZdFdd„Zdd„ Zdd„ Zdd „ Zd!d"„ Zd#d$„ Zed%d&„ ƒZed'd(„ ƒZed)d*„ ƒZed+d,„ ƒZd-d.„ Zd/d0„ Zd1d2„ Zed3d4„ ƒZd5d6„ Zd7d8„ ZdGd9d:„ZdHd;d<„Z dId=d>„Z!d?d@„ Z"dAdB„ Z#dJdCdD„Z$dS )KÚ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.
FNc C s„ |d kst |tƒst|ƒ‚|| _|| _|| _|| _d | _d | _| jrj|sLt‚|j rjt
jjt
jj
|jƒƒ| _|d kr†|r†|jr†t|jƒ}| | _| _d| _d | _| jr¶| jj r¶| jj| _|rÂ|| _n |rÚdd„ |jD ƒ| _ntƒ | _|d krô|rô|j}|| _d | _d| _d | _d | _|�r|ng | _| �r,| ng | _|
�r<|
ni | _d| _ |
| _!d| _"|| _#t$ƒ | _%d | _&d