XylotrechusZ
3
�ReJR � @ s� d dl Z d dlZd dlZd dlZd dlZd dlZyd dlmZ W n ek
r` d dl mZ Y nX ddl
mZ ddlm
Z
mZmZmZmZmZ ddlmZmZmZ eje�ZdZdZG d d
� d
e�ZdS )� N)�Thread� )�DistlibException)�HTTPBasicAuthHandler�Request�HTTPPasswordMgr�urlparse�build_opener�string_types)�cached_property�zip_dir�ServerProxyzhttps://pypi.org/pypi�pypic @ s� e Zd ZdZdZd*dd�Zdd� Zdd � Zd
d� Zdd
� Z dd� Z
dd� Zd+dd�Zd,dd�Z
d-dd�Zd.dd�Zdd� Zd/dd�Zd0d d!�Zd1d"d#�Zd$d%� Zd&d'� Zd2d(d)�ZdS )3�PackageIndexzc
This class represents a package index compatible with PyPI, the Python
Package Index.
s. ----------ThIs_Is_tHe_distlib_index_bouNdaRY_$Nc C s� |pt | _| j� t| j�\}}}}}}|s<|s<|s<|dkrJtd| j ��d| _d| _d| _d| _t t
jd��R}xJdD ]B} y(tj
| dg||d �}
|
d
kr�| | _P W qv tk
r� Y qvX qvW W dQ R X dS )
z�
Initialise an instance.
:param url: The URL of the index. If not specified, the URL for PyPI is
used.
�http�httpszinvalid repository: %sN�w�gpg�gpg2z --version)�stdout�stderrr )r r )r r )�
DEFAULT_INDEX�url�read_configurationr r �password_handler�ssl_verifierr �gpg_home�open�os�devnull�
subprocess�
check_call�OSError)�selfr �scheme�netloc�path�params�query�fragZsink�s�rc� r, ��/builddir/build/BUILDROOT/alt-python36-pip-20.2.4-5.el8.x86_64/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/distlib/index.py�__init__$ s&