Rec@sdZddlZddlZddlZddlZddlZddlZddlZddlZddl m Z yddl m Z Wn!e k rddlm Z nXddlmZddlmZmZmZmZddlZddlmZmZmZmZmZmZmZmZm Z m!Z!m"Z"m#Z#ddlm$Z$dd l%m&Z&dd l'm(Z(dd l)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(turllibt http_clientt configparsertmap( t CHECKOUT_DISTt Distributiont BINARY_DISTtnormalize_patht SOURCE_DISTt Environmenttfind_distributionst safe_namet safe_versiont to_filenamet Requirementt DEVELOP_DIST(t ssl_support(tlog(tDistutilsError(t translate(tstrip_fragment(tget_all_headerss^egg=([-A-Za-z0-9_.+!]+)$shref\s*=\s*['"]?([^'"> ]+)s([^<]+) \s+\(md5\)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 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%Rtmovest filterfalset __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 j j |t |jdVqwWqqWxjd D]b}|j|}|dkrt j||}|rt j j |t |jdVqqqWdS( sEFind rel="homepage" and rel="download" links in `page`, yielding URLst,thomepageR-is Home PagesDownload URLiN(s Home PagesDownload 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  t HashCheckercBsJeZejdZdZedZdZdZ dZ RS(sK(?Psha1|sha224|sha384|sha256|sha512|md5)=(?P[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_url scCs|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 ( RRRNtcompileRRt classmethodRR{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 dZ d Z d Z d&d Zd 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   '  c Csg||jkr| rdSt|j|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|j d|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 s(tfilterRKR6RRt itertoolststarmapt scan_egg_link(Ryt search_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|\}}xQt tjj||D]4}tjj|||_ t |_|j|qWdS(Ni(topenRKR6RTRRR%RRkRlRER RFR R;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}t j j |ji|%siii(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.pytRRN(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,(( RRt unsafe_nameRRR[t project_nametnot_found_in_indexR(Ryt requirementR2((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|RR?R%tversionRERKR6RGtdirnameRTtsetuptools.command.easy_installR tshutiltcopy2RtwriteRtsplitextR( RyRLR9RR>tdRRGtdstR 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.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 ||qt d||fnt j jk r}|St j jk r }|r|j ||jqt d||jfntjk rU}|r9|j ||jqt d||jfnNtjtj fk r}|r|j ||qt d||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|jd r|j||S|jd r|j ||S|d kr$t j j 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 ([^- ]+ - )?Revision \d+:s���Unexpected HTML page found at ( ���R���Rl���RN���Rq���R���RK���R���R5��R���(���Ry���R2���R���RL���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.pyR:��1��s����       c���������C���sf��|�j��d�d��d�}�d�}�|�j���j�d��r5d�|�k�r5t�j�j�|��\�}�}�}�}�}�} �|� r5|�j�d��r5d�|�d �k�r5|�d �j��d�d��\�}�}�t�|��\�} �} �| �r2d �| �k�r�| �j��d �d��\�} �} �d �| �| �f�}�n �d �| �}�| �}�|�|�|�|�|�| �f�}�t�j�j�|��}�q2q5n��|��j�d �|�|��t �j �d�|�|�|�f��|�S(���NR.���i���i����R���s���svn:t���@s���//R,���i���t���:s��� --username=%s --password=%ss ��� --username=s'���Doing subversion checkout from %s to %ss���svn checkout%s -q %s %s( ���R1���R$���R'���R���R���R/���R���t ���urlunparseR���RK���t���system(���Ry���R2���RL���t���credsR4���t���netlocR6���RP���t���qR���t���autht���hostt���usert���pwR3���(����(����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$����!$&  c���������C���s���t��j�j�|���\�}�}�}�}�}�|�j�d�d��d�}�|�j�d�d��d�}�d��}�d�|�k�rz�|�j�d�d��\�}�}�n��t��j�j�|�|�|�|�d�f��}��|��|�f�S(���Nt���+i���iR.���i����R;��R���(���R���R���t���urlsplitR1���R%���t���rsplitt ���urlunsplit(���R2���t ���pop_prefixR4���R@��R6���R8���R���t���rev(����(����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_urlU��s����! !c���������C���s���|�j��d�d��d�}�|��j�|�d�t�\�}�}�|��j�d�|�|��t�j�d�|�|�f��|�d��k �r�|��j�d�|��t�j�d�|�|�f��n��|�S( ���NR.���i���i����RJ��s���Doing git clone from %s to %ss���git clone --quiet %s %ss���Checking out %ss"���(cd %s && git checkout --quiet %s)(���R1���RL��R|���R���RK���R>��R%���(���Ry���R2���RL���RK��(����(����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.pyR6��g��s����  c���������C���s���|�j��d�d��d�}�|��j�|�d�t�\�}�}�|��j�d�|�|��t�j�d�|�|�f��|�d��k �r�|��j�d�|��t�j�d�|�|�f��n��|�S( ���NR.���i���i����RJ��s���Doing hg clone from %s to %ss���hg clone --quiet %s %ss���Updating to %ss���(cd %s && hg up -C -r %s >&-)(���R1���RL��R|���R���RK���R>��R%���(���Ry���R2���RL���RK��(����(����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.pyR7��w��s����  c���������G���s���t��j�|�|��d��S(���N(���R���R���(���Ry���R���Ra���(����(����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���������G���s���t��j�|�|��d��S(���N(���R���R���(���Ry���R���Ra���(����(����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���������G���s���t��j�|�|��d��S(���N(���R���R���(���Ry���R���Ra���(����(����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����(���R���N()���R���R���R���R%���R|���R���t���FalseR���R���R���R���R���R���R���R���R���R���R���R���R���R���R-���R���R ��R���R��R ��R��R���R���R���R9��R:��R5��t ���staticmethodRL��R6��R7��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.pyR���!��sL��� 2   +      #D ) $  #         s!���&(#(\d+|x[\da-fA-F]+)|[\w.:-]+);?c���������C���s6���t��|��t��s�|��S|��d�k�r,�t�j�|���St�|���S(���Ni���(���R���R��R���t���unichrt���chr(���t���c(����(����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���uchr��s ����  c���������C���s���|��j��d��}�|�j�d��r4�t�|�d�d��}�nF�|�j�d��rV�t�|�d��}�n$�t�j�j�j�j�|�|��j��d���}�t�|��S(���Ni���s���#xi���i���R.���i����( ���R?���R'���R��R���RW���t ���html_entitiest���name2codepointR���RR��(���R>���t���what(����(����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_entity��s����$c���������C���s ���t��t�|���S(���s'���Decode HTML entities in the given text.(���t ���entity_subRV��(���t���text(����(����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.pyRo�����s����c������������s�����f�d���}�|�S(���Nc������������s������f�d���}�|�S(���Nc�������������s?���t��j���}�t��j���z���|��|���SWd��t��j�|��Xd��S(���N(���R+��t���getdefaulttimeoutt���setdefaulttimeout(���Ra���Rb���t ���old_timeout(���Rc���t���timeout(����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_timeout��s ����  (����(���Rc���R]��(���R\��(���Rc���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����(����(���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.pyt���socket_timeout��s���� c���������C���sI���t��j�j�|���}�|�j���}�t�j�|��}�|�j���}�|�j�d�d��S(���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���(���R���R���R0���t���encodet���base64t ���encodestringR���R4��(���RB��t���auth_st ���auth_bytest ���encoded_bytest���encoded(����(����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_auth��s ����   t ���Credentialc�����������B���s)���e��Z�d��Z�d���Z�d���Z�d���Z�RS(���s:��� A username/password pair. Use like a namedtuple. c���������C���s���|�|��_��|�|��_�d��S(���N(���t���usernamet���password(���Ry���Rh��Ri��(����(����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���������c���s���|��j��V|��j�Vd��S(���N(���Rh��Ri��(���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__��s����c���������C���s���d�t��|���S(���Ns���%(username)s:%(password)s(���t���vars(���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����(���R���R���R���R���Rj��Rl��(����(����(����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.pyRg����s���  t ���PyPIConfigc�����������B���s2���e��Z�d����Z�e�d����Z�d���Z�d���Z�RS(���c���������C���su���t��j�d�d�d�g�d��}�t�j�j�|��|��t�j�j�t�j�j�d��d��}�t�j�j �|��rq�|��j �|��n��d�S(���s%��� Load from ~/.pypirc Rh��Ri��t ���repositoryR���t���~s���.pypircN( ���t���dictt���fromkeysR���t���RawConfigParserR���RK���R6���RT���t ���expanduserR���R���(���Ry���t���defaultst���rc(����(����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���������C���sM���g��|��j����D]$�}�|��j�|�d��j���r �|�^�q �}�t�t�|��j�|���S(���NRn��(���t���sectionsR���Rl���Rp��R���t���_get_repo_cred(���Ry���t���sectiont���sections_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.pyt���creds_by_repository��s����$c���������C���sO���|��j��|�d��j���}�|�t�|��j��|�d��j���|��j��|�d��j����f�S(���NRn��Rh��Ri��(���R���Rl���Rg��(���Ry���Rx��t���repo(����(����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.pyRw����s����c���������C���s7���x0�|��j��j���D]�\�}�}�|�j�|��r�|�Sq�Wd�S(���s��� If the URL indicated appears to be a repository defined in this config, return the credential for that repository. N(���Rz��t���itemsR'���(���Ry���R2���Rn��t���cred(����(����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_credential��s����(���R���R���R���t���propertyRz��Rw��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.pyRm����s���  c���������C���s��t��j�j�|���\�}�}�}�}�}�}�|�j�d��rE�t�j�d���n��|�d �k�rf�t�|��\�}�} �n�d �}�|�s�t���j �|���} �| �r�t �| ��}�| �j �|��f�} �t �j �d�| ��q�n��|�r d�t�|��}�|�| �|�|�|�|�f�} �t��j�j�| ��} �t��j�j�| ��}�|�j�d�|��n�t��j�j�|���}�|�j�d�t��|�|��}�|�rt��j�j�|�j��\�}�}�}�}�}�}�|�|�k�r|�| �k�r|�|�|�|�|�|�f�} �t��j�j�| ��|�_�qn��|�S( ���s4���Open a urllib2 request, handling HTTP authenticationR<��s���nonnumeric port: ''t���httpt���httpss*���Authenticating as %s for %s (from .pypirc)s���Basic t ���Authorizations ���User-Agent(���R��R��N(���R���R���R/���R&���R���R%��R���R%���Rm��R~��Rk���Rh��R���R���Rf��R=��R���t���Requestt ���add_headert ���user_agentR2���(���R2���R���R4���R@��R6���t���paramsR8���R���RB��RC��R}��R���R3���R���R���R��t���s2t���h2t���path2t���param2t���query2t���frag2(����(����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����$   'c���������C���s���|��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<��s����c���������C���s��t��j�j�|���\�}�}�}�}�}�}�t��j�j�|��}�t�j�j�|��rX�t��j�j�|���S|�j �d��rPt�j�j �|��rPg��}�x�t�j �|��D]�} �t�j�j �|�| ��} �| �d�k�r�t �| �d���} �| �j���} �Wd�QXPn�t�j�j �| ��r�| �d�7} �n��|�j�d�j�d�| ���q�Wd�} �| �j�d�|��d �d �j �|���} �d�\�}�}�n�d�\�}�}�} �i�d�d�6}�t�j�| ��}�t��j�j�|��|�|�|�|��S(���s7���Read a local path, with special support for directoriesR,���s ���index.htmlt���rNs���<a href="{name}">{name}</a>R(���sB���<html><head><title>{url}{files}R2tfiless itOKisPath not founds Not founds text/htmls content-type(iR(isPath not founds Not found(RRR/RR8RKR6tisfileRR&RRRTRRRtformatRtStringIORR(R2R4R5R6tparamR8RRLRRtfilepathRtbodyRtstatustmessageRt body_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.parseRt ImportErrorturllib2tsetuptools.externRtsetuptools.extern.six.movesRRRRRt pkg_resourcesRRR R R R 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.pyts~         " R         "  !t    &.