Your IP : 13.59.69.58
B
��ReΛ � @ s� d Z ddlZddlZddlZddlZddlZddlZddlZddlZddl Z ddl
Z
ddlZddlZddl
ZddlZddlZddlZddlmZ ddlZddlmZmZmZmZmZmZmZmZmZm Z m!Z!m"Z"m#Z# ddl$m%Z% ddl&m'Z' ddl(m)Z) ddl*m+Z+ dd l,m-Z- e�.d
�Z/e�.dej0�Z1e�.d�Z2e�.d
ej0�j3Z4d�5� Z6ddddgZ7dZ8dZ9e9j:dj:ej;� ed�Z<dd� Z=dd� Z>dd� Z?dAdd�Z@dBdd�ZAdCdd �ZBdedfd!d�ZCd"d#� ZDe�.d$ej0�ZEeDd%d&� �ZFG d'd(� d(�ZGG d)d*� d*eG�ZHG d+d� de�ZIe�.d,�jJZKd-d.� ZLd/d0� ZMdDd1d2�ZNd3d4� ZOG d5d6� d6�ZPG d7d8� d8ejQ�ZRejSjTfd9d:�ZUd;d<� ZVeNe8�eU�ZUd=d>� ZWd?d@� ZXdS )Ez#PyPI and direct package downloading� N)�wraps)
�
CHECKOUT_DIST�Distribution�BINARY_DIST�normalize_path�SOURCE_DIST�Environment�find_distributions� safe_name�safe_version�to_filename�Requirement�DEVELOP_DIST�EGG_DIST)�log)�DistutilsError)� translate)�Wheel)�unique_everseenz^egg=([-A-Za-z0-9_.+!]+)$zhref\s*=\s*['"]?([^'"> ]+)z�<a href="([^"#]+)">([^<]+)</a>\n\s+\(<a (?:title="MD5 hash"\n\s+)href="[^?]+\?:action=show_md5&digest=([0-9a-f]{32})">md5</a>\)z([-+.a-z0-9]{2,}):z.tar.gz .tar.bz2 .tar .zip .tgz�PackageIndex�distros_for_url�parse_bdist_wininst�interpret_distro_name� z<setuptools/{setuptools.__version__} Python-urllib/{py_major}z{}.{})Zpy_major�
setuptoolsc
C sB y
t �| �S tk
r< } ztd| f �|�W d d }~X Y nX d S )Nz1Not a URL, existing file, or requirement spec: %r)r
�parse�
ValueErrorr )�spec�e� r ��/builddir/build/BUILDROOT/alt-python37-setuptools-58.3.0-4.el8.x86_64/opt/alt/python37/lib/python3.7/site-packages/setuptools/package_index.py�parse_requirement_arg6 s
r! c C s� | � � }d\}}}|�d�r�|�d�r8| dd� }d}nn|�dd�rb| d d
� }| dd� }d}nD|�d�r~| dd� }d
}n(|�dd�r�| d d
� }| dd� }d
}|||fS )z=Return (base,pyversion) or (None,None) for possible .exe name)NNNz.exez
.win32.exeNi�����win32z .win32-pyi�i�������z.win-amd64.exei�z win-amd64z
.win-amd64-pyi��)�lower�endswith�
startswith)�namer$ �base�py_ver�platr r r r ? s$
c C sx t j�| �}|\}}}}}}t j�|�d�d �}|dkrX|dkrXt j�|�d�d �}d|krp|�dd�\}}||fS )N�/���zsourceforge.net�download����#� )�urllibr �urlparse�unquote�split) �url�parts�scheme�server�path�
parameters�query�fragmentr( r r r �egg_info_for_urlW s r= c c sd t | �\}}xt| ||�D ]
}|V qW |r`t�|�}|r`x$t| |�d�|td�D ]
}|V qRW dS )zEYield egg or source distribution objects that might be found at a URLr0 )�
precedenceN)r= �distros_for_location�EGG_FRAGMENT�matchr �groupr )r5 �metadatar( r<