Files
PowerToys/PythonHome/Lib/site-packages/pip/download.pyc

110 lines
20 KiB
Plaintext
Raw Normal View History

2014-07-09 18:15:23 +08:00
<03>
<00>Sc
@sddlZddlZddlZddlZddlZddlZddlZddlZddl Z ddl
Z
ddl Z ddl Z ddl mZmZmZddlmZmZddlmZmZmZmZmZmZmZmZmZddlmZddl m!Z!ddl"m#Z#m$Z$ddl%m&Z&dd l'm(Z(m)Z)dd
l*m+Z+dd l,m-Z-m.Z.dd l/m0Z0dd l1m2Z2ddddddddddg
Z3d<00>Z4de(fd<00><00>YZ5de6fd<00><00>YZ7de&fd<00><00>YZ8de#j9fd <00><00>YZ:ddd!<00>Z<ej=d"ej><00>Z?ej=d#ej><00>Z@d$<00>ZAd%<00>ZBej=d&ej><00>ZCej=d'ej><00>ZDd(<00>ZEd)<00>ZFeGd*<00>ZHd+<00>ZId,<00>ZJd-<00>ZKd.<00>ZLd/<00>ZMd0<00>ZNd1<00>ZOddd2<00>ZPdd3<00>ZQdS(4i<><69><EFBFBD><EFBFBD>N(turllibturlparset raw_input(tInstallationErrort HashMismatch( tsplitexttrmtreet format_sizet display_patht
backup_dirtask_path_existst unpack_filetcreate_download_cache_foldertcache_download(tvcs(tlogger(trequeststsix(t BaseAdapter(tAuthBaset HTTPBasicAuth(tIncompleteRead(t
InvalidURLtChunkedEncodingError(tResponse(tCaseInsensitiveDicttget_file_contenttis_urlt url_to_patht path_to_urltis_archive_filetunpack_vcs_linktunpack_file_urlt
is_vcs_urlt is_file_urltunpack_http_urlcCs4tj<00>}|dkr'tj<00>}n<>|dkr<>dtjjtjjtjjf}tjjdkr<>dj |tjjg<00>}q<>n<|dkr<>tj<00>}n!|dkr<>tj<00>}nd}ytj
<00>}tj <00>}Wnt k
rd}d}nXd j d
t jd ||fd ||fg<00>S( s,Return a string representing the user agent.tCPythontPyPys%s.%s.%stfinalttJythont
IronPythontUnknownt spip/%ss%s/%s(tplatformtpython_implementationtpython_versiontsystpypy_version_infotmajortminortmicrot releaseleveltjointsystemtreleasetIOErrortpipt __version__(t_implementationt_implementation_versiontp_systemt p_release((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyt
user_agent$s2         
 tMultiDomainBasicAuthcBs/eZed<00>Zd<00>Zd<00>Zd<00>ZRS(cCs||_i|_dS(N(t promptingt passwords(tselfRA((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyt__init__Hs cCs<>tj|j<00>}|jjdd<00>d}tj|d |f|d<17>|_|jj|d<00>\}}|dkr<>|j|j<00>\}}n|s<>|r<>||f|j|<t |p<>d|p<>d<00>|<00>}n|j
d|j <00>|S(Nt@ii<><69><EFBFBD><EFBFBD>iR'tresponse(NN( Rturltnetloctsplitt
urlunparseRBtgettNonetparse_credentialsRt register_hookt
handle_401(RCtreqtparsedRHtusernametpassword((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyt__call__Ls%  $cKs<>|jdkr|S|js |Stj|j<00>}td|j<16>}tjd<00>}|s`|ry||f|j|j<n|j|j j
<00>t |p<>d|p<>d<00>|j <00>}|j j||<00>}|jj|<00>|S(Ni<4E>s User for %s: s
Password: R'(t status_codeRARRGRRHtgetpassRBtcontenttrawt release_connRtrequestt
connectiontsendthistorytappend(RCtresptkwargsRQRRRSRPtnew_resp((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyROhs   $cCsLd|krH|jdd<00>d}d|kr>|jdd<00>S|dfSdS(NREiit:(NN(trsplitRIRL(RCRHtuserinfo((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyRM<00>s   
(t__name__t
__module__tTrueRDRTRORM(((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyR@Fs   "tLocalFSResponsecBs;eZd<00>Zd<00>Zdded<00>Zed<00><00>ZRS(cCs ||_dS(N(tfileobj(RCRi((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyRD<00>scCst|j|<00>S(N(tgetattrRi(RCtname((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyt __getattr__<5F>scCs|jj|<00>S(N(Ritread(RCtamttdecode_contentt cache_content((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyRm<00>scs9dtfd<00><00>Y<>dtf<00>fd<00><00>Y}|<00>S(Nt FakeMessagecBseZd<00>Zd<00>ZRS(cSsgS(N((RCtheader((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyt
getheaders<72>scSsgS(N((RCRrtdefault((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pytget_all<6C>s(ReRfRsRu(((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyRq<00>s t FakeResponsecseZe<00>fd<00><00>ZRS(cs<00><00>S(N((RC(Rq(sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pytmsg<73>s(ReRftpropertyRw((Rq(sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyRv<00>s(tobject(RCRv((RqsCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyt_original_response<73>sN( ReRfRDRlRLtFalseRmRxRz(((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyRh<00>s  tLocalFSAdaptercBs)eZdddddd<00>Zd<00>ZRS(c Cstj|j<00>}|jj<00>dkr=td|j<16><00>ntj|d d|d<17>}t|<00>} t<00>}
d|
_||
_t j
| <00>} t j j | jdt<00>} titj| <00>dp<>d d
6| jd 6| d 6<>|
_tt| d <00><00>|
_|
jj|
_|
S(Nt localhosts)Invalid URL %r: Only localhost is allowediR'ii<>tusegmtis
text/plains Content-TypesContent-Lengths Last-Modifiedtrb(R'(RRGRHtlowerRRJRRRUtoststattemailtutilst
formatdatetst_mtimeRgRt mimetypest
guess_typetst_sizetheadersRhtopenRXtclose( RCRZtstreamttimeouttverifytcerttproxiest
parsed_urltreal_urltpathnameR_tstatstmodified((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyR\<00>s$    
cCsdS(N((RC((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyR<79><00>sN(ReRfRLR\R<>(((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyR|<00>s  t
PipSessioncBs eZdZd<00>Zd<00>ZRS(cOsLtt|<00>j||<00>t<00>|jd<t<00>|_|jdt<00><00>dS(Ns
User-Agentsfile://( tsuperR<72>RDR?R<>R@tauthtmountR|(RCtargsR`((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyRD<00>s cOsrtj|<00>}|jdkr@tj|d d|d<17>}n|jd|j<00>tt|<00>j||||<00>S(NtfileiR}iR<>(s localhost(RtschemeRJt
setdefaultR<74>R<>R<>RZ(RCtmethodRGR<>R`RQ((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyRZ<00>s
"N(ReRfRLR<>RDRZ(((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyR<79><00>s c
Cs<>|d
krt<00>}ntj|<00>}|rq|jd<00>j<00>}|dkr||r||jd<00>r|td||f<16><00>n|dkr,|jdd<00>d}|j dd<00>}t
j |<00>}|r<>|jd<00>d|jdd<00>d}nt j |<00>}|jd<00>r#d|jd<00>}n|}qq|j|<00>}|j<00>tjr^|j|jfS|j|jfSnyt|<00>}|j<00>}Wn7tk
r<>tj<00>d} td t| <00><16><00>n X|j<00>||fS( s<>Gets the content of a file; it may be a filename, file: URL, or
http: URL. Returns (location, content). Content is unicode.iR<>thttps6Requirements file %s references URL %s, which is localRbs\t/t|s$Could not open requirements file: %sN(RLR<>t
_scheme_retsearchtgroupR<70>t
startswithRRItreplacet_url_slash_drive_retmatchRtunquotetlstripRKtraise_for_statusRtPY3RGttextRWR<>RmR8R/texc_infotstrR<72>(
RGt
comes_fromtsessionR<6E>R<>tpathR_tfRWte((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyR<00>sB   * 
   
s^(http|https|file):s /*([a-z])\|cCsId|krtS|jdd<00>dj<00>}|ddddgtjkS(s)Returns true if the name looks like a URLRbiiR<>thttpsR<73>tftp(R{RIR<>Rt all_schemes(RkR<>((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyR s cCs}|jd<00>std|<16><00>|td<00>jd<00>}tj|<00>}tj|<00>ro|dd|d}n
d|}|S(s(
Convert a file: URL to a path.
sfile:s4You can only turn file: urls into filenames (not %r)R<>iRbi(R<>tAssertionErrortlenR<6E>RR<>t _url_drive_reR<65>(RGR<>((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyR(s 
s ^([a-z]):s ^([a-z])[:|]cCs<>tjjtjj|<00><00>}tjj|<00>\}}|jtjj<00>}djg|D]}tj |<00>^qX<00>}|s<>|j
d<00>}nd||S(sh
Convert a path to a file: URL. The path will be made absolute and have
quoted path parts.
R<>sfile:///( R<>R<>tnormpathtabspatht
splitdriveRItsepR5RtquoteR<65>(R<>tdrivetfilepathtpartRG((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyR;s+cCs0d }t|<00>dj<00>}||kr,tStS(
s9Return True if `name` is a considered as an archive file.s.zips.tar.gzs.tar.bz2s.tgzs.tars .pybundles.whli(s.zips.tar.gzs.tar.bz2s.tgzs.tars .pybundles.whl(RR<>RgR{(Rktarchivestext((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyRIs  cCs3t|<00>}|r"|j|<00>n |j|<00>dS(N(t_get_used_vcs_backendtexporttunpack(tlinktlocationt only_downloadt vcs_backend((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyRSs cCs=x6tjD]+}|j|jkr
||j<00>}|Sq
WdS(N(RtbackendsR<73>tschemesRG(R<>tbackendR<64>((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyR<79>[scCstt|<00><00>S(N(tboolR<6C>(R<>((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyR!bscCs|jj<00>jd<00>S(Nsfile:(RGR<>R<>(R<>((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyR"fscCs<>|jtj|j<00>jkrQtjd|j||jf<16>td|<16><00>n|j<00>|jkr<>tjd||j<00>|jf<16>td|j|f<16><00>ndS(NsPHash digest size of the package %d (%s) doesn't match the expected hash name %s!s!Hash name mismatch for package %ss?Hash of the package %s (%s) doesn't match the expected hash %s!sBad %s hash for package %s( t digest_sizethashlibtnewt hash_nameRtfatalRt hexdigestthash(t download_hashR<68>((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyt _check_hashjs  cCs<>ytj|j<00>}Wn2ttfk
rJtjd|j|f<16>dSXt|d<00>}x0t r<>|j
d<00>}|s|Pn|j |<00>q]W|j <00>|S(Ns'Unsupported hash name %s for package %sRi( R<>R<>R<>t
ValueErrort TypeErrorRtwarnRLR<>RgRmtupdateR<65>(t target_fileR<65>R<>tfptchunk((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyt_get_hash_from_fileus 
c st|d<00>}d}|jrn|jrnytj|j<00>}Wqntk
rjtjd|j|f<16>qnXnyt <00>j
d<19>}Wn tt t fk
r<>d}nXd}|dkp<>| }|j }z|r |r<>tjd|t|<00>f<16>qtjd|<16>ntjd |<16>tjd
|<16><01>fd <00>} x<>| d <00>D]<5D>}
|t|
<00>7}|r<>|s<>tjd t|<00><16>q<>tjdd||t|<00>f<16>n|dk r<>|j|
<00>n|j|
<00>qKW|j<00>Wd|r
tjdt|<00><16>nX|S(Ntwbs'Unsupported hash name %s for package %sscontent-lengthii(i<>sDownloading %s (%s): sDownloading %s (unknown size): sDownloading %ssDownloading from URL %sc3s<>yRy,x%<00>jj|dt<00>D] }|VqWWntk
rP}t|<00><00>nXWn?tk
r<>x/tr<><00>jj|<00>}|s<>Pn|VqeWnXdS(NRo(RXR<>R{RRtAttributeErrorRgRm(t
chunk_sizeR<65>R<>(R_(sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyt resp_read<61>s    is%ss %3i%% %sids %s downloadedi@<40>(R<>RLR<>R<>R<>R<>R<>RR<>tintR<74>tKeyErrorR<72>tshow_urltstart_progressRtnotifytinfoR<6F>t show_progressR<73>twriteR<65>t end_progress( R_R<>t temp_locationR<6E>R<>t total_lengtht
downloadedR<64>R<>R<>R<>((R_sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyt _download_url<72>sF !
  ( cCst}tjj||j<00>}tjj|<00>r<>tdt|<00>d<00>}|dkr^t}q<>|dkr<>t j
dt|<00><16>tj |<00>q<>|dkr<>t |<00>}t j
dt|<00>t|<00>f<16>t j||<00>q<>n|rt j||<00>t jdt|<00><16>ndS( Ns/The file %s exists. (i)gnore, (w)ipe, (b)ackup titwtbs Deleting %ssBacking up %s to %ssSaved %s(R<>R<>R<>(RgR<>R<>R5tfilenametexistsR
RR{RR<>tremoveR tshutiltmovetcopyR<79>(R<>R<>t content_typeR<65>R<>tdownload_locationRFt dest_file((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyt
_copy_file<6C>s&      cCs<>|dkrt<00>}ntjdd<00>}d}|jjdd<00>d}t}d} d}
d} |r<>tjj |t
j |d<00><00>} | d}
tjj | <00>o<>tjj |
<00>}tjj |<00>s<>t|<00>q<>nd} |rtjj ||j<00>} tjj | <00>sd} qn| r<>| }tj| <00>d} tjd| <16>|jr<>t||<00>} yt| |<00>Wq<57>tk
r<>tjd |<16>d}tj| <00>d} q<>Xq<58>n|r<>| r<>t|
<00><00>}|j<00>j<00>} WdQX| }tjd
| <16>|jr<>|jr<>t| |<00>} yt| |<00>Wq<57>tk
r~tjd |<16>d}tj| <00>tj|
<00>t}q<>Xq<58>n|sy#|j|d t<00>}|j <00>Wn6t!j"k
r<>}tj#d |j$j%|f<16><01>nX|j&jdd<00>} |j}|j&jd<00>}|rJt'j(|<00>\}}|jd<00>pD|}nt)|<00>d}|s<>tj*| <00>}|r<>||7}q<>n| r<>|j|jkr<>tjj)|j<00>d}|r<>||7}q<>ntjj ||<00>}t+|||<00>} |jr|jrt| |<00>qn|r<| r<t,||| |<00>nt-||| |<00>| ro| rot.| || <00>n|px| s<>tj|<00>ntj/|<00>dS(Ns-unpackspip-t#iiR's .content-typesFile was already downloaded %ss;Previously-downloaded file %s has bad hash, re-downloading.sUsing download cache from %ss,Cached file %s has bad hash, re-downloading.R<>sHTTP error %s while getting %ss content-typescontent-dispositionR<6E>(0RLR<>ttempfiletmkdtempRGRIR{R<>R<>R5RR<>R<>tisdirR R<>R<>R<>RR<>R<>R<>R<>RR<>tunlinkR<6B>RmtstripR<70>RKRgR<>Rt HTTPErrorR<72>RFRUR<>tcgit parse_headerRtguess_extensionR<6E>R<>R R trmdir(R<>R<>tdownload_cachet download_dirR<72>ttemp_dirR<72>t
target_urltalready_cachedt
cache_filetcache_content_type_fileR<65>talready_downloadedR<64>R<>R_texcR<63>tcontent_dispositionttypetparamsR<73>((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyR#<00>s<>   
             c
Cs<>t|j<00>}t}tjj|<00>r`tjj|<00>rFt|<00>ntj||dt <00>dS|j
r<>t ||<00>}t ||<00>n|rLtjj ||j<00>}tjj|<00>rLtj|<00>d}tjd|<16>|j
r@t ||<00>}yt ||<00>t }WqFtk
r<tjd|<16>tj|<00>qFXqIt }qLn|r[|} n|} tj| <00>d}t| |||<00>|r<>| r<>t| |||<00>ndS(NtsymlinksisFile was already downloaded %ss;Previously-downloaded file %s has bad hash, re-downloading.(Rturl_without_fragmentR{R<>R<>RRR<>tcopytreeRgR<>R<>R<>R5R<>R<>R<>R<>RR<>RR<>RR R<>(
R<>R<>R t link_pathRtlink_path_hasht download_pathR<68>R<>t from_path((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyR RsB    
    (RRt email.utilsR<73>R<>RVR<>R<>R,treR<65>R/RR9tpip.backwardcompatRRRtpip.exceptionsRRtpip.utilRRRRR R
R R R tpip.vcsRtpip.logRt pip._vendorRRtpip._vendor.requests.adaptersRtpip._vendor.requests.authRRtpip._vendor.requests.compatRtpip._vendor.requests.exceptionsRRtpip._vendor.requests.modelsRtpip._vendor.requests.structuresRt__all__R?R@RyRhR|tSessionR<6E>RLRtcompiletIR<49>R<>RRt _drive_reR<65>RRR{RR<>R!R"R<>R<>R<>R<>R#R (((sCc:\Users\lifqian\Desktop\Python27\lib\site-packages\pip\download.pyt<module>sh            @  "M#,   
     <  y