File "package_index.pyc"

Full Path: /home/attunedd/public_html/byp/izo/con7ext_sym404/rintoar.txt/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyc
File size: 45.49 KB
MIME-type: text/x-bytecode.python
Charset: 8 bit


Rec@sdZddlZddlZddlZddlZddlZddlZddlZddlZddl	m
Z
yddlmZWn!e
k
rddlmZnXddlmZddlmZmZmZmZddlZddlmZmZmZmZmZmZmZmZm Z m!Z!m"Z"m#Z#ddlm$Z$dd	l%m&Z&dd
l'm(Z(ddl)m*Z*ddl+m,Z,dd
l-m.Z.ej/dZ0ej/dej1Z2ej/dZ3ej/dej1j4Z5dj6Z7ddddgZ8dZ9dZ:e:j;dej<d deZ=dZ>dZ?dZ@eAdZBeAd ZCeAd!ZDeAeeAd"ZEeAd#ZFd$ZGej/d%ej1ZHeGd&ZId'eJfd(YZKd)eKfd*YZLdefd+YZMej/d,jNZOd-ZPd.ZQd/ZRdd0ZSd1ZTd2eJfd3YZUd4ejVfd5YZWejXjYd6ZZeSe9eZZZd7Z[d8Z\dS(9s#PyPI and direct package downloadingiN(twraps(t	splituser(tsix(turllibthttp_clienttconfigparsertmap(t
CHECKOUT_DISTtDistributiontBINARY_DISTtnormalize_pathtSOURCE_DISTtEnvironmenttfind_distributionst	safe_nametsafe_versiontto_filenametRequirementtDEVELOP_DIST(tssl_support(tlog(tDistutilsError(t	translate(tstrip_fragment(tget_all_headerss^egg=([-A-Za-z0-9_.+!]+)$shref\s*=\s*['"]?([^'"> ]+)s<a href="([^"#]+)">([^<]+)</a>
\s+\(<a (?:title="MD5 hash"
\s+)href="[^?]+\?:action=show_md5&amp;digest=([0-9a-f]{32})">md5</a>\)s([-+.a-z0-9]{2,}):s.tar.gz .tar.bz2 .tar .zip .tgztPackageIndextdistros_for_urltparse_bdist_wininsttinterpret_distro_nameis<setuptools/{setuptools.__version__} Python-urllib/{py_major}tpy_majorit
setuptoolscCs<ytj|SWn$tk
r7td|fnXdS(Ns1Not a URL, existing file, or requirement spec: %r(Rtparset
ValueErrorR(tspec((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pytparse_requirement_arg6s

cCs|j}d\}}}|jdr|jdrL|d }d}q|jddr~|dd!}|d }d}q|jd	r|d
 }d}q|jdd
r|dd!}|d
 }d}qn|||fS(s=Return (base,pyversion) or (None,None) for possible .exe names.exes
.win32.exeitwin32s	.win32-pyiiis.win-amd64.exeis	win-amd64s
.win-amd64-pyiN(NNN(tlowertNonetendswitht
startswith(tnameR$tbasetpy_vertplat((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyR?s$
	

	
	

c	Cstjj|}|\}}}}}}tjj|jdd}|dkr|dkrtjj|jdd}nd|kr|jdd\}}n||fS(Nt/issourceforge.nettdownloadit#i(RRturlparsetunquotetsplit(	turltpartstschemetservertpatht
parameterstquerytfragmentR)((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pytegg_info_for_urlWs"ccst|\}}xt|||D]}|Vq%W|rtj|}|rx1t||jd|dtD]}|VqqWqndS(sEYield egg or source distribution objects that might be found at a URLit
precedenceN(R:tdistros_for_locationtEGG_FRAGMENTtmatchRtgroupR(R2tmetadataR)R9tdistR>((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyRbs	"cCs|jdr|d }n|jdrMd|krMtj|||gS|jdrt|\}}}|dk	rt||||t|Snx>tD]6}|j|r|t| }t|||SqWgS(s:Yield egg or source distribution objects based on basenames.egg.zipis.eggt-s.exeN(	R&Rt
from_locationRR%RR	t
EXTENSIONStlen(tlocationtbasenameR@twin_baseR*tplatformtext((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyR<ps

cCs"tt|tjj||S(sEYield possible egg or source distribution objects based on a filename(R<R
tosR6RG(tfilenameR@((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pytdistros_for_filenamesccs|jd}|r4td|dDr4dSxatdt|dD]F}t||dj|| dj||d|d|d|VqNWdS(	sGenerate alternative interpretations of a source distro name

    Note: if `location` is a filesystem filename, you should call
    ``pkg_resources.normalize_path()`` on it before passing it to this
    routine!
    RBcss!|]}tjd|VqdS(s	py\d\.\d$N(treR>(t.0tp((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pys	<genexpr>siNit
py_versionR;RI(R1tanytrangeRERtjoin(RFRGR@RQR;RIR3RP((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyRs! )ccst}|j}|dkrSxmtjj|j|D]}|||Vq7Wn;x8|D]0}||}||krZ|||VqZqZWdS(sHList unique elements, preserving order. Remember all elements ever seen.N(tsettaddR%Rtmovestfilterfalset__contains__(titerabletkeytseentseen_addtelementtk((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pytunique_everseens		


cstfd}|S(ss
    Wrap a function returning an iterable such that the resulting iterable
    only ever yields unique items.
    cst||S(N(R`(targstkwargs(tfunc(s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pytwrappers(R(RcRd((Rcs/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyt
unique_valuesss(<([^>]*\srel\s*=\s*['"]?([^'">]+)[^>]*)>ccsxtj|D]}|j\}}tttj|jjd}d|ksgd|krx=t	j|D])}t
jj|t
|jdVqwWqqWxjd	D]b}|j|}|dkrt	j||}|rt
jj|t
|jdVqqqWdS(
sEFind rel="homepage" and rel="download" links in `page`, yielding URLst,thomepageR-is
<th>Home Pages<th>Download URLiN(s
<th>Home Pages<th>Download URL(tRELtfinditertgroupsRURtstrtstripR$R1tHREFRRturljoint
htmldecodeR?tfindtsearch(R2tpageR>ttagtreltrelstpos((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pytfind_external_linkss'.
tContentCheckercBs)eZdZdZdZdZRS(sP
    A null content checker that defines the interface for checking content
    cCsdS(s3
        Feed a block of data to the hash.
        N((tselftblock((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pytfeedscCstS(sC
        Check the hash. Return False if validation fails.
        (tTrue(Ry((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pytis_validscCsdS(su
        Call reporter with information about the checker (hash name)
        substituted into the template.
        N((Rytreporterttemplate((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pytreports(t__name__t
__module__t__doc__R{R}R(((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyRxs		tHashCheckercBsJeZejdZdZedZdZdZ	dZ
RS(sK(?P<hash_name>sha1|sha224|sha384|sha256|sha512|md5)=(?P<expected>[a-f0-9]+)cCs(||_tj||_||_dS(N(t	hash_namethashlibtnewthashtexpected(RyRR((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyt__init__s	cCsRtjj|d}|s#tS|jj|}|sBtS||jS(s5Construct a (possibly null) ContentChecker from a URLi(RRR/RxtpatternRqt	groupdict(tclsR2R9R>((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pytfrom_urlscCs|jj|dS(N(Rtupdate(RyRz((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyR{scCs|jj|jkS(N(Rt	hexdigestR(Ry((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyR}scCs||j}||S(N(R(RyR~Rtmsg((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyRs
(RRRNtcompileRRtclassmethodRR{R}R(((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyRs				cBsveZdZdd%d&edZedZedZedZ	dZ
dZd	Zd
Z
d&dZdZd&d
ZdZdZdZdZdZeeed&dZeedZdZdZdZdZd&dZdZdZdZdZ dZ!e"edZ#d Z$d!Z%d"Z&d#Z'd$Z(RS('s;A distribution index that scans web pages for download URLsshttps://pypi.python.org/simplet*cOstj||||d|jd |_i|_i|_i|_tjdj	t
t|j|_
g|_|otjo|ptj}|rtj||_ntjj|_dS(NR,t|(RRR&t	index_urltscanned_urlstfetched_urlst
package_pagesRNRRTRRR>tallowstto_scanRtis_availabletfind_ca_bundlet
opener_fortopenerRtrequestturlopen(RyRthostst	ca_bundlet
verify_sslRatkwtuse_ssl((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyR$s			'		cCsg||jkr|rdSt|j|<t|sD|j|dStt|}|r|j|sodS|jd|n|s|s||jkrtt	|j
|dS|j|st|j|<dS|jd|t|j|<d}|j|||}|dkr!dSt|j|j<d|jjddjkr`|jdS|j}|j}t|tst|tjjrd}n|jjd	pd}|j|d
}n|jxHtj|D]7}	tjj|t|	j d}
|j!|
qW|j"|j#rct$|ddd
krc|j%||}ndS(s<Evaluate a URL as a possible download, and maybe retrieve itNsFound link: %ss
Reading %ss<Download error on %s: %%s -- Some packages may not be found!thtmlscontent-typetslatin-1tcharsettignoreitcodei(&RR|t
URL_SCHEMEtprocess_filenametlistRturl_oktdebugRRRVtinfotopen_urlR%R2theaderstgetR$tclosetreadt
isinstanceRkRterrort	HTTPErrort	get_paramtdecodeRmRiRRnRoR?tprocess_urlR'Rtgetattrt
process_index(RyR2tretrievetdiststtmpltfR)RrRR>tlink((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyR9sP



!
		
$*cCstjj|s&|jd|dStjj|r|rtjj|}x9tj|D]%}|jtjj||t	qaWnt
|}|r|jd|tt
|j|ndS(Ns
Not found: %ss	Found: %s(RKR6texiststwarntisdirtrealpathtlistdirRRTR|RMRRRRV(RytfntnestedR6titemR((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyRks&cCst|}|o*|jdjdk}|sR|jtjj|drVtSd}|rut||n|j	||dS(NitfilesN
Note: Bypassing %s (disallowed host; see http://bit.ly/1dg9ijs for details).
(
RR?R$RRRR/R|RR(RyR2tfataltstis_fileR((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyR{s!%cCsBttjj|}d|D}ttj|j|dS(Ncss@|]6}tj|D] }|jdr||fVqqdS(s	.egg-linkN(RKRR&(ROR6tentry((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pys	<genexpr>s(tfilterRKR6RRt	itertoolststarmapt
scan_egg_link(Rytsearch_pathtdirst	egg_links((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pytscan_egg_linkss
c
Csttjj||(}ttdttj	|}WdQXt
|dkr[dS|\}}xQttjj||D]4}tjj|||_t
|_|j|qWdS(Ni(topenRKR6RTRRR%RRkRlRER
RFRR;RV(RyR6Rt	raw_linestlinestegg_patht
setup_pathRA((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyRs'"	c
sfd}xWtj|D]F}y,|tjj|t|jdWqtk
rdqXqW||\}}|rxyt||D]h}t	|\}}	|j
dr|	r|r|d||f7}qj|nj|qWt
jd|SdSdS(s#Process the contents of a PyPI pagecs|jjrtttjj|tjjd}t|dkrd|dkrt	|d}t
|d}tjj
|ji|<t|t|fSndS(NR,iR.ii(NN(R'RRRRRR0RER1RRR|Rt
setdefaultR$RR%(RR3tpkgtver(Ry(s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pytscans+"is.pys
#egg=%s-%scSsd|jdddS(Ns<a href="%s#md5=%s">%s</a>iii(R?(tm((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyt<lambda>RRN(RmRiRRRnRoR?R RwR:R&tneed_version_infotscan_urltPYPI_MD5tsub(
RyR2RrRR>RRtnew_urlR)tfrag((Rys/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyRs$,

cCs|jd|dS(NsPPage at %s links to .py file(s) without version info; an index scan is required.(tscan_all(RyR2((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyRscGsO|j|jkr;|r+|j||n|jdn|j|jdS(Ns6Scanning index of all packages (this may take a while)(RRRRR(RyRRa((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyRs
cCs|j|j|jd|jj|jsN|j|j|jdn|jj|jss|j|nx3t|jj|jdD]}|j|qWdS(NR,((	RRtunsafe_nameRRR[tproject_nametnot_found_in_indexR(RytrequirementR2((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyt
find_packagess%cCsk|j|j|x8||jD])}||kr;|S|jd||q%Wtt|j||S(Ns%s does not match %s(tprescanRR[RtsuperRtobtain(RyRt	installerRA((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyRs

cCsi|j|jd||jse|jtj|td|jjtj	j
|fndS(s-
        checker is a ContentChecker
        sValidating %%s checksum for %ss7%s validation failed for %s; possible download problem?N(RRR}RRKtunlinkRRR(R6RG(RytcheckerRLttfp((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyt
check_hashs

cCsrxk|D]c}|jdksJt|sJ|jdsJtt|rZ|j|q|jj|qWdS(s;Add `urls` to the list that will be prescanned for searchessfile:N(RR%RR'RRRtappend(RyturlsR2((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pytadd_find_linkss

cCs2|jr%tt|j|jnd|_dS(s7Scan urls scheduled for prescanning (e.g. --find-links)N(RRRRR%(Ry((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyRs	cCsN||jr |jd}}n|jd}}|||j|jdS(Ns#Couldn't retrieve index page for %rs3Couldn't find index page for %r (maybe misspelled?)(R[RRRR(RyRtmethR((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyRs

cCst|tst|}|r||j|jd||}t|\}}|jdrx|j|||}n|Stj	j
|r|St|}nt|j
||ddS(sLocate and/or download `spec` to `tmpdir`, returning a local path

        `spec` may be a ``Requirement`` object, or a string containing a URL,
        an existing local filename, or a project/version requirement spec
        (i.e. the string form of a ``Requirement`` object).  If it is the URL
        of a .py file with an unambiguous ``#egg=name-version`` tag (i.e., one
        that escapes ``-`` as ``_`` throughout), a trivial ``setup.py`` is
        automatically created alongside the downloaded file.

        If `spec` is a ``Requirement`` object or a string containing a
        project/version requirement spec, this method returns the location of
        a matching distribution (possibly after downloading it to `tmpdir`).
        If `spec` is a locally existing file or directory name, it is simply
        returned unchanged.  If `spec` is a URL, it is downloaded to a subpath
        of `tmpdir`, and the local filename is returned.  Various errors may be
        raised if a problem occurs during downloading.
        is.pyRFN(RRRt
_download_urlR?R:R&t	gen_setupRKR6RR"Rtfetch_distributionR%(RyR!ttmpdirR4tfoundR)R9((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyR- sc	sFjd|id}dfd}|rfjj|||}n|r|dk	r|||}n|dkrjdk	rjn||}n|dkr|rj|||}n|dkrjdrdpd|n#jd||jd|jSdS(	s|Obtain a distribution suitable for fulfilling `requirement`

        `requirement` must be a ``pkg_resources.Requirement`` instance.
        If necessary, or if the `force_scan` flag is set, the requirement is
        searched for in the (online) package index as well as the locally
        installed packages.  If a distribution matching `requirement` is found,
        the returned distribution's ``location`` is the value you would have
        gotten from calling the ``download()`` method with the matching
        distribution's URL or filename.  If no matching distribution is found,
        ``None`` is returned.

        If the `source` flag is set, only source distributions and source
        checkout links will be considered.  Unless the `develop_ok` flag is
        set, development and system eggs (i.e., those using the ``.egg-info``
        format) will be ignored.
        sSearching for %scs|dkr}nx||jD]}|jtkrnrn|kr#jd|d|<q#q#n||kr#|jtksr#j|j|_t	j
j|jr|Sq#q#WdS(Ns&Skipping development or system egg: %si(R%R[R;RRRR-RFtdownload_locationRKR6R(treqtenvRA(t
develop_okRytskippedtsourceR(s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyRp[s	
"s:No local packages or working download links found for %s%ssa source distribution of RsBest match: %sRFN(RR%RRRRtcloneR(	RyRRt
force_scanRRtlocal_indexRARp((RRyRRRs/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyRBs0




cCs/|j||||}|dk	r+|jSdS(s3Obtain a file suitable for fulfilling `requirement`

        DEPRECATED; use the ``fetch_distribution()`` method now instead.  For
        backward compatibility, this routine is identical but returns the
        ``location`` of the downloaded distribution instead of a distribution
        object.
        N(RR%RF(RyRRRRRA((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pytfetchsc
Csptj|}|rLgt||jddD]}|jr1|^q1pOg}t|dkrAtjj	|}tjj
||krtjj||}ddlm
}	|	||stj|||}qnttjj|dd?}
|
jd|dj|djtjj|dfWdQX|S|r`td||fntd	dS(
Nii(tsamefilessetup.pytwsIfrom setuptools import setup
setup(name=%r, version=%r, py_modules=[%r])
isCan't unambiguously interpret project/version identifier %r; any dashes in the name or version should be escaped using underscores. %rspCan't process plain .py files without an '#egg=name-version' suffix to enable automatic setup script generation.(R=R>RR?R%tversionRERKR6RGtdirnameRTtsetuptools.command.easy_installRtshutiltcopy2RtwriteRtsplitextR(RyRLR9RR>tdRRGtdstRR((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyRs24!!i c

Cs|jd|d	\}}z^tj|}|jt|}t|tjj	rzt
d||j|jfn|j}d}|j
}d}	d|krt|d}
ttt|
}	|j|||||	nt|d}}x`tr[|j|}|rW|j||j||d7}|j|||||	qPqW|j|||WdQX|SWd|r|jnXdS(
NsDownloading %ssCan't download %s: %s %siiscontent-lengthsContent-Lengthtwbi(NN(RR%RRRRRRRRRRRtdl_blocksizeRtmaxRtintt
reporthookRR|RR{RRR(
RyR2RLtfpRRRtblocknumtbstsizetsizesRRz((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyt_download_tos:		


cCsdS(N((RyR2RLRtblksizeR((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyRscCs|jdrt|Syt||jSWnsttjfk
r}djg|jD]}t	|^qX}|r|j
||qtd||fntj
jk
r}|Stj
jk
r}|r|j
||jqtd||jfntjk
rU}|r9|j
||jqtd||jfnNtjtj
fk
r}|r|j
||qtd||fnXdS(Nsfile:t s%s %ssDownload error for %s: %ss;%s returned a bad status line. The server might be down, %s(R't
local_opentopen_with_authRR Rt
InvalidURLRTRaRkRRRRRtURLErrortreasont
BadStatusLinetlinet
HTTPExceptiontsocket(RyR2twarningtvtargR((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyRs6
+cCsHt|\}}|rLx7d|krH|jddjdd}qWnd}|jdrn|d }ntjj||}|dks|jd	r|j||S|d
ks|jdr|j||S|jdr|j	||S|d
kr$t
jjt
j
j|dS|j|t|j||SdS(Ns..t.s\t_t__downloaded__s.egg.zipitsvnssvn+tgitsgit+shg+Ri(R:treplaceR&RKR6RTR't
_download_svnt
_download_gitt_download_hgRRturl2pathnameRR/RR|t_attempt_download(RyR4R2RR(R9RL((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyR
s$%
 cCs|j|tdS(N(RR|(RyR2((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyR'scCsK|j||}d|jddjkrC|j|||S|SdS(NRscontent-typeR(R RR$t_download_html(RyR2RLR((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyR9*scCst|}xW|D]O}|jrtjd|r^|jtj||j||SPqqW|jtj|td|dS(Ns <title>([^- ]+ - )?Revision \d+:sUnexpected HTML page found at (	RRlRNRqRRKRR5R(RyR2RRLRR)((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyR:1s




cCsf|jddd}d}|jjdr5d|kr5tjj|\}}}}}}	|r5|jdr5d|d	kr5|d	jdd\}}t|\}
}|
r2d
|
kr|
jd
d\}}
d||
f}n
d|
}|}||||||	f}tjj|}q2q5n|jd
||t	j
d|||f|S(NR.iiRssvn:t@s//R,it:s --username=%s --password=%ss --username=s'Doing subversion checkout from %s to %sssvn checkout%s -q %s %s(R1R$R'RRR/Rt
urlunparseRRKtsystem(RyR2RLtcredsR4tnetlocR6RPtqRtauththosttusertpwR3((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyR5@s$!$&
cCstjj|\}}}}}|jddd}|jddd}d}d|krz|jdd\}}ntjj||||df}||fS(Nt+iiR.iR;R(RRturlsplitR1R%trsplitt
urlunsplit(R2t
pop_prefixR4R@R6R8Rtrev((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyt_vcs_split_rev_from_urlUs!!cCs|jddd}|j|dt\}}|jd||tjd||f|dk	r|jd|tjd||fn|S(	NR.iiRJsDoing git clone from %s to %ssgit clone --quiet %s %ssChecking out %ss"(cd %s && git checkout --quiet %s)(R1RLR|RRKR>R%(RyR2RLRK((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyR6gs	cCs|jddd}|j|dt\}}|jd||tjd||f|dk	r|jd|tjd||fn|S(	NR.iiRJsDoing hg clone from %s to %sshg clone --quiet %s %ssUpdating to %ss(cd %s && hg up -C -r %s >&-)(R1RLR|RRKR>R%(RyR2RLRK((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyR7ws	cGstj||dS(N(RR(RyRRa((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyRscGstj||dS(N(RR(RyRRa((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyRscGstj||dS(N(RR(RyRRa((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyRs(RN()RRRR%R|RtFalseRRRRRRRRRRRRRRR-RR
RRR RRRRR9R:R5tstaticmethodRLR6R7RRR(((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyR!sL2	
		+										#D
	)	$	#									s!&(#(\d+|x[\da-fA-F]+)|[\w.:-]+);?cCs6t|ts|S|dkr,tj|St|S(Ni(RRRtunichrtchr(tc((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pytuchrs

cCs|jd}|jdr4t|dd}nF|jdrVt|d}n$tjjjj||jd}t|S(Nis#xiiR.i(	R?R'RRRWt
html_entitiestname2codepointRRR(R>twhat((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyt
decode_entitys$cCs
tt|S(s'Decode HTML entities in the given text.(t
entity_subRV(ttext((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyRoscsfd}|S(Ncsfd}|S(Ncs?tj}tjz||SWdtj|XdS(N(R+tgetdefaulttimeouttsetdefaulttimeout(RaRbtold_timeout(Rcttimeout(s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyt_socket_timeouts

((RcR](R\(Rcs/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyR]s((R\R]((R\s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pytsocket_timeoutscCsItjj|}|j}tj|}|j}|jddS(sq
    A function compatible with Python 2.3-3.3 that will encode
    auth from a URL suitable for an HTTP header.
    >>> str(_encode_auth('username%3Apassword'))
    'dXNlcm5hbWU6cGFzc3dvcmQ='

    Long auth strings should not cause a newline to be inserted.
    >>> long_auth = 'username:' + 'password'*10
    >>> chr(10) in str(_encode_auth(long_auth))
    False
    s
R(RRR0tencodetbase64tencodestringRR4(RBtauth_st
auth_bytest
encoded_bytestencoded((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyt_encode_auths
t
CredentialcBs)eZdZdZdZdZRS(s:
    A username/password pair. Use like a namedtuple.
    cCs||_||_dS(N(tusernametpassword(RyRhRi((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyRs	ccs|jV|jVdS(N(RhRi(Ry((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyt__iter__scCsdt|S(Ns%(username)s:%(password)s(tvars(Ry((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyt__str__s(RRRRRjRl(((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyRgs		t
PyPIConfigcBs2eZdZedZdZdZRS(cCsutjdddgd}tjj||tjjtjjdd}tjj	|rq|j
|ndS(s%
        Load from ~/.pypirc
        RhRit
repositoryRt~s.pypircN(tdicttfromkeysRtRawConfigParserRRKR6RTt
expanduserRR(Rytdefaultstrc((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyRs
!cCsMg|jD]$}|j|djr
|^q
}tt|j|S(NRn(tsectionsRRlRpRt_get_repo_cred(Rytsectiontsections_with_repositories((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pytcreds_by_repositorys$cCsO|j|dj}|t|j|dj|j|djfS(NRnRhRi(RRlRg(RyRxtrepo((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyRwscCs7x0|jjD]\}}|j|r|SqWdS(s
        If the URL indicated appears to be a repository defined in this
        config, return the credential for that repository.
        N(RztitemsR'(RyR2Rntcred((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pytfind_credentials(RRRtpropertyRzRwR~(((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyRms			cCstjj|\}}}}}}|jdrEtjdn|d	krft|\}}	nd
}|stj	|}
|
rt
|
}|
j|f}tj
d|qn|r dt|}||	||||f}tjj|}
tjj|
}|jd|ntjj|}|jdt||}|rtjj|j\}}}}}}||kr||	kr||||||f}tjj||_qn|S(s4Open a urllib2 request, handling HTTP authenticationR<snonnumeric port: ''thttpthttpss*Authenticating as %s for %s (from .pypirc)sBasic t
Authorizations
User-Agent(RRN(RRR/R&RR%RR%RmR~RkRhRRRfR=RtRequestt
add_headert
user_agentR2(R2RR4R@R6tparamsR8RRBRCR}RR3RRRts2th2tpath2tparam2tquery2tfrag2((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyR$s6$'cCs|S(N((R2((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyt
fix_sf_url<scCstjj|\}}}}}}tjj|}tjj|rXtjj|S|j	drPtjj
|rPg}xtj|D]}	tjj||	}
|	dkrt
|
d}|j}WdQXPntjj
|
r|	d7}	n|jdjd|	qWd}
|
jd|d	d
j|}d\}}nd\}}}idd6}tj|}tjj|||||S(s7Read a local path, with special support for directoriesR,s
index.htmltrNs<a href="{name}">{name}</a>R(sB<html><head><title>{url}</title></head><body>{files}</body></html>R2tfiless
itOKisPath not founds	Not founds	text/htmlscontent-type(iR(isPath not founds	Not found(RRR/RR8RKR6tisfileRR&RRRTRRRtformatRtStringIORR(R2R4R5R6tparamR8RRLRRtfilepathRtbodyRtstatustmessageRtbody_stream((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyR#@s,$!
!
(]RtsysRKRNRR+R`RRt	functoolsRturllib.parseRtImportErrorturllib2tsetuptools.externRtsetuptools.extern.six.movesRRRRRt
pkg_resourcesRRR	R
RRR
RRRRRRt	distutilsRtdistutils.errorsRtfnmatchRtsetuptools.py26compatRtsetuptools.py27compatRRR=tIRmRR>RR1RDt__all__t_SOCKET_TIMEOUTt_tmplRR
RR"RR:R%RR<RMRR`ReRhRwtobjectRxRRRRWRRRVRoR^RfRgRrRmRRR$RR#(((s/builddir/build/BUILDROOT/alt-python27-setuptools-36.3.0-4.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/setuptools/package_index.pyt<module>s~
"R							"	
!t				&.