ó †2{Yc@sddlZddlZddlZddlmZmZddlmZddl m Z ddl m Z m Z mZddlmZddlmZddlmZdd lmZmZd efd „ƒYZd „Zd dd„Zd„Zd„ZdS(iĸĸĸĸN(tCommandtSUCCESS(tget_terminal_size(tlogger(t xmlrpclibtreducetcmp(t CommandError(tNO_MATCHES_FOUND(t pkg_resources(t StrictVersiont LooseVersiont SearchCommandcBs;eZdZdZdZdZd„Zd„Zd„ZRS(s@Search for PyPI packages whose name or summary contains .tsearchs %prog [options] sSearch PyPI for packages.c Os[tt|ƒj||Ž|jjddddddddd ƒ|jjd |jƒdS( Ns--indextdesttindextmetavartURLtdefaultshttps://pypi.python.org/pypithelps3Base URL of Python Package Index (default %default)i(tsuperR t__init__tcmd_optst add_optiontparsertinsert_option_group(tselftargstkw((sD/opt/alt/python33/lib/python3.3/site-packages/pip/commands/search.pyRs cCs…|stdƒ‚n|}|j}|j||ƒ}t|ƒ}d}tjjƒrgtƒd}nt |d|ƒ|rt St S(Ns)Missing required argument (search query).itterminal_width( RRR ttransform_hitstNonetsyststdouttisattyRt print_resultsRR(RtoptionsRtqueryt index_urlt pypi_hitsthitsR((sD/opt/alt/python33/lib/python3.3/site-packages/pip/commands/search.pytrun"s  cCs3tj|ƒ}|ji|d6|d6dƒ}|S(Ntnametsummarytor(Rt ServerProxyR (RR%R&tpypiR(((sD/opt/alt/python33/lib/python3.3/site-packages/pip/commands/search.pyR 4s ( t__name__t __module__t__doc__R*tusageR+RR)R (((sD/opt/alt/python33/lib/python3.3/site-packages/pip/commands/search.pyR s cCsi}xŨ|D]Ï}|d}|d}|d}|d}|d krPd}n||jƒkrŽi|d6|d6|gd6|d6||TstreverseN(Rtkeystappendthighest_versiontsortedtvaluestTrue(R(tpackagesthitR*R+R3R6t package_list((sD/opt/alt/python33/lib/python3.3/site-packages/pip/commands/search.pyR:s        ,!ic CsogtjD]}|j^q }xI|D]A}|d}|dpCd}|dk rŠtj|||dƒ}dd|dj|ƒ}nd|j|ƒ|f}y°tj |ƒ||krRtj |ƒ} tj d 7_ z_t |d ƒ} | j | krtj d | j ƒn%tj d | j ƒtj d | ƒWdtj d 8_ XnWq&tk rfq&Xq&WdS(NR*R+tis t is%s - %siR5sINSTALLED: %s (latest)s INSTALLED: %ss LATEST: %s(R t working_sett project_nameRttextwraptwraptjointljustRtnotifytget_distributiontindentR=R3tUnicodeEncodeError( R(tname_column_widthRtptinstalled_packagesRBR*R+tlinetdisttlatest((sD/opt/alt/python33/lib/python3.3/site-packages/pip/commands/search.pyR#Xs,      cCsīytt|ƒt|ƒƒSWntk r0nXytt|ƒt|ƒƒSWn_tk rŊtgt|ƒjD]}t|ƒ^qqgt|ƒjD]}t|ƒ^q–ƒSXdS(N(RR t ValueErrorR t TypeErrorR3tstr(tversion1tversion2tv((sD/opt/alt/python33/lib/python3.3/site-packages/pip/commands/search.pytcompare_versionsts  (cCstd„|ƒS(NcSst||ƒdkr|p|S(Ni(R\(tv1tv2((sD/opt/alt/python33/lib/python3.3/site-packages/pip/commands/search.pyR9„s(R(R5((sD/opt/alt/python33/lib/python3.3/site-packages/pip/commands/search.pyR=ƒs(R RHt pip.downloadtpiptpip.basecommandRRtpip.utilRtpip.logRtpip.backwardcompatRRRtpip.exceptionsRtpip.status_codesRt pip._vendorR tdistutils.versionR R R RRR#R\R=(((sD/opt/alt/python33/lib/python3.3/site-packages/pip/commands/search.pyts   *