????

Your IP : 216.73.216.152


Current Path : /proc/self/root/proc/self/root/lib/python2.7/site-packages/pip/_internal/operations/
Upload File :
Current File : //proc/self/root/proc/self/root/lib/python2.7/site-packages/pip/_internal/operations/prepare.pyc

�
}�\]c@s�dZddlZddlZddlmZddlmZddlmZddl	m
Z
mZmZm
Z
mZddlmZmZmZmZmZddlmZdd	lmZdd
lmZddlmZmZddlmZer]dd
l m!Z!ddlm"Z"ddl	m#Z#ddl$m%Z%ddl&m'Z'ddl(m)Z)nej*e+�Z,de-fd��YZ.dS(s)Prepares a distribution for installation
i����N(trequests(t)make_distribution_for_install_requirement(tInstalledDistribution(t
is_dir_urltis_file_urlt
is_vcs_urlt
unpack_urlturl_to_path(tDirectoryUrlHashUnsupportedtHashUnpinnedtInstallationErrortPreviousBuildDirErrortVcsHashUnsupported(t
expanduser(t
MissingHashes(t
indent_log(tdisplay_pathtnormalize_path(tMYPY_CHECK_RUNNING(tOptional(tAbstractDistribution(t
PipSession(t
PackageFinder(tInstallRequirement(tRequirementTrackertRequirementPreparercBsAeZdZd�Zed��Zd�Zd�Zd�ZRS(sPrepares a Requirement
    cCsktt|�j�||_||_||_||_|rLt|�}n||_||_	||_
dS(N(tsuperRt__init__tsrc_dirt	build_dirtreq_trackertdownload_dirRtwheel_download_dirtprogress_bartbuild_isolation(tselfRRRR R!R"R((s?/tmp/pip-install-ewDPok/pip/pip/_internal/operations/prepare.pyR*s						cCsa|jr]t|j�|_tjj|j�r4tStjd�tdt	|j���nt
S(Ns!Could not find download directorys0Could not find or access download directory '%s'(RR
tostpathtexiststTruetloggertcriticalR
RtFalse(R#((s?/tmp/pip-install-ewDPok/pip/pip/_internal/operations/prepare.pyt_download_should_savePs	
c
Cs�|jrF|jjdkrFt|jj�}tjdt|��ntjd|�t��B|j|j	�t
jjt
jj
|jd��r�td||jf��n|j|||�|js�t�|j}|r@t|�r�t��n$t|�rt|�rt��n|jr@|jr@t��q@n|jd|�}|rl|rlt�}ny�|j}	t}
|jjr�|jr�|j}	n|jjr�|	r�t}
q�t }
nt!|j|j|	|
d|d|d	|j"�WnEt#j$k
r9}tj%d
||�t&d|||jf��nXt'|�}|j(j)|��|j*||j+�WdQX|j,r�|jj-s�|j.|j�q�nWdQX|S(
sCPrepare a requirement that would be obtained from req.link
        tfiles
Processing %ss
Collecting %sssetup.pys�pip can't proceed with requirements '%s' due to a pre-existing build directory (%s). This is likely due to a previous installation that failed. pip is being responsible and not assuming it can delete this. Please delete it and try again.ttrust_internettsessionthashesR!s4Could not install requirement %s because of error %ssDCould not install requirement %s because of HTTP error %s for URL %sN(/tlinktschemeRturlR(tinfoRRtensure_has_source_dirRR$R%R&tjoint
source_dirRt
populate_linktAssertionErrorRRRRRt
original_linkt	is_pinnedR	R/RRR'tis_wheelR R*RR!Rt	HTTPErrorR)R
RRttracktprepare_distribution_metadataR"R+tis_artifacttarchive(
R#treqR.tfindertupgrade_allowedtrequire_hashesR%R0R/Rtautodelete_unpackedtexct
abstract_dist((s?/tmp/pip-install-ewDPok/pip/pip/_internal/operations/prepare.pytprepare_linked_requirement_sj
$		
					cCs�|jstd��tjd|�t���|rHtd|��n|j|j�|j|j	�t
|�}|jj|��|j
||j�WdQX|j	r�|j|j�n|j|�WdQX|S(s(Prepare an editable requirement
        s-cannot prepare a non-editable req as editablesObtaining %ssoThe editable requirement %s cannot be installed when requiring hashes, because there is no single file to hash.N(teditableR8R(R3RR
R4Rtupdate_editableR+RRR=R>R"R@Rtcheck_if_exists(R#RARDt
use_user_siteRBRG((s?/tmp/pip-install-ewDPok/pip/pip/_internal/operations/prepare.pytprepare_editable_requirement�s"


	cCs�|jstd��|dk	s7td|jf��tjd|||jj�t��'|rstjd�nt|�}WdQX|S(s1Prepare an already-installed requirement
        s(req should have been satisfied but isn'tsAdid not get skip reason skipped but req.satisfied_by is set to %rsRequirement %s: %s (%s)s�Since it is already installed, we are trusting this package without checking its hash. To ensure a completely repeatable environment, install into an empty virtualenv.N(	tsatisfied_byR8tNoneR(R3tversionRtdebugR(R#RARDtskip_reasonRG((s?/tmp/pip-install-ewDPok/pip/pip/_internal/operations/prepare.pytprepare_installed_requirements	

(	t__name__t
__module__t__doc__RtpropertyR+RHRMRS(((s?/tmp/pip-install-ewDPok/pip/pip/_internal/operations/prepare.pyR&s	&	�	$(/RVtloggingR$tpip._vendorRtpip._internal.distributionsRt%pip._internal.distributions.installedRtpip._internal.downloadRRRRRtpip._internal.exceptionsRR	R
RRtpip._internal.utils.compatR
tpip._internal.utils.hashesRtpip._internal.utils.loggingRtpip._internal.utils.miscRRtpip._internal.utils.typingRttypingRRRtpip._internal.indexRtpip._internal.req.req_installRtpip._internal.req.req_trackerRt	getLoggerRTR(tobjectR(((s?/tmp/pip-install-ewDPok/pip/pip/_internal/operations/prepare.pyt<module>s*((