Your IP : 18.223.239.65
3
9��fŜ � @ s� d Z ddlZddlZddlZddlZddlZddlZddlZddlZddl Z ddl
mZ ddlm
Z
ddlmZmZmZmZ ddlZddlmZmZmZmZmZmZmZmZmZmZmZm Z m!Z! ddlm"Z" ddl#m$Z$ dd l%m&Z& dd
l'm(Z( ddl)m*Z* ddl+m,Z, dd
l-m.Z. ej/d�Z0ej/dej1�Z2ej/d�Z3ej/dej1�j4Z5dj6� Z7ddddgZ8dZ9dZ:e:j;ej<dd� ed�Z=dd� Z>dd� Z?dd� Z@dEd d�ZAdFd!d"�ZBdGd#d$�ZCdedfd%d�ZDdHd&d'�ZEd(d)� ZFej/d*ej1�ZGeFd+d,� �ZHG d-d.� d.eI�ZJG d/d0� d0eJ�ZKG d1d� de�ZLej/d2�jMZNd3d4� ZOd5d6� ZPdId7d8�ZQd9d:� ZRG d;d<� d<eI�ZSG d=d>� d>ejT�ZUejVjWfd?d@�ZXeQe9�eX�ZXdAdB� ZYdCdD� ZZdS )Jz#PyPI and direct package downloading� N)�wraps)�six)�urllib�http_client�configparser�map)
�
CHECKOUT_DIST�Distribution�BINARY_DIST�normalize_path�SOURCE_DIST�Environment�find_distributions� safe_name�safe_version�to_filename�Requirement�DEVELOP_DIST�EGG_DIST)�ssl_support)�log)�DistutilsError)� translate)�get_all_headers)�unescape)�Wheelz^egg=([-A-Za-z0-9_.+!]+)$zhref\s*=\s*['"]?([^'"> ]+)z�<a href="([^"#]+)">([^<]+)</a>
\s+\(<a (?:title="MD5 hash"
\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}� )Zpy_major�
setuptoolsc C s2 y
t j| �S tk
r, td| f ��Y nX d S )Nz1Not a URL, existing file, or requirement spec: %r)r �parse�
ValueErrorr )�spec� r&