+
     h  c                   sx   ^ RI t ^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RIH	t	 ^ RI
HtHtHtHt ^ RIHt ^ RIHt ^ RIHt ^ RIHtHt ^ R	IHt ^ R
IHt ^ RIHt ^ RIH t  ^ RI!H"t" ^ RI#H$t$ ^ RI%H&t&  ! R R]4      t'] PP                  ! ])4      t* ! R R]]4      t+R R lt,R R lt-R R lt.RR R llt/R R lt0R# )i    N)OrderedDict)Values)DictListOptional	TypedDict)parse)Command)SessionCommandMixin)NO_MATCHES_FOUNDSUCCESS)CommandError)get_default_environment)BaseDistribution)PyPI)PipXmlrpcTransport)
indent_log)write_outputc                   s,   a  ] tR t^t o V 3R ltRtV tR# )TransformedHitc                sN   < V ^8  d   Qh/ S[ ;R&   S[ ;R&   S[S[ ,          ;R&   # )   namesummaryversions)strr   format__classdict__   "B/usr/lib/python3.14/site-packages/pip/_internal/commands/search.py__annotate__ZTransformedHit.__annotate__   s*     
I L  3i      N)__name__
__module____qualname____firstlineno__Z__annotate_func____static_attributes____classdictcell__r      @r   r   r      s      r   r   c                   sb   a  ] tR t^!t o RtRtRtV 3R lR ltV 3R lR ltV 3R lR	 lt	R
t
V tR# )SearchCommandz@Search for PyPI packages whose name or summary contains <query>.z
      %prog [options] <query>Tc                s   < V ^8  d   QhRR/# )r   returnNr   r   r   r   r   SearchCommand.__annotate__(   s     
: 
:T 
:r   c           	     s    V P                   P                  R RRR\        P                  RR7       V P                  P                  ^ V P                   4       R# )z-iz--indexindexZURLz3Base URL of Python Package Index (default %default))ZdestZmetavarZdefaultZhelpN)Zcmd_optsZ
add_optionr   Zpypi_urlZparserZinsert_option_group)self   &r   add_optionsZSearchCommand.add_options(   sI      MMF 	! 	
 	''4==9r   c                s<   < V ^8  d   QhRS[ RS[S[,          RS[/# )r   optionsargsr)   )r   r   r   intr   r   r   r   r*   4   s&        6  c  s  r   c                s(   V'       g   \        R 4      hTpV P                  W14      p\        V4      pRp\        P                  P                  4       '       d   \        P                  ! 4       ^ ,          p\        WVR7       V'       d   \        # \        # )z)Missing required argument (search query).N)terminal_width)r   searchtransform_hitssysZstdoutZisattyshutilZget_terminal_sizeprint_resultsr
   r	   )r,   r/   r0   queryZ	pypi_hitshitsr2   s   &&&    r   runZSearchCommand.run4   so    JKKKK/	i(::#557:Nd:Nr   c          	      sb   < V ^8  d   QhRS[ S[,          RS[RS[ S[S[S[3,          ,          /# )r   r8   r/   r)   )r   r   r   r   r   r   r   r   r*   D   s3      DI  4S#X;O r   c                s   VP                   pV P                  V4      p\        W44      p\        P                  P                  W54      p VP                  R VRV/R4      p\        T\        4      '       g   Q hT#   \        P                  P                   d-   pRTP                   RTP                   2p	\        T	4      hRp?ii ; i)r   r   ZorzXMLRPC request failed [code: z]
N)r+   Zget_default_sessionr   xmlrpcZclientZServerProxyr3   ZFaultZ	faultCodeZfaultStringr   Z
isinstancelist)
r,   r8   r/   Z	index_urlZsessionZ	transportZpypir9   ZfaultZmessages
   &&&       r   r3   ZSearchCommand.searchD   s    MM	**73&y:	}}((>	(;;y%@$GD $%%%% }}"" 	(//@EDUDUCVW  w''		(s   	A9 9C'B??Cr   N)r    r!   r"   r#   Z__doc__ZusageZignore_require_venvr.   r:   r3   r$   r%   r&   r'   r   r(   r(   !   s3     J!E
: 
:     r   r(   c                sv    V ^8  d   QhR\         \        \        \        3,          ,          R\         R,          /# )r   r9   r)   r   )r   r   r   r      "r   r   r   V   s-     # #d38n- #$7G2H #r   c                sb   \        4       pV  F  pVR,          pVR,          pVR,          pW1P                  4       9  d   RVRVRV./W&   K?  W,          R,          P                  V4       V\        W,          R,          4      8X  g   K|  WAV,          R&   K  	  \	        VP                  4       4      # )z
The list from pypi is really a list of versions. We want a list of
packages with the list of versions stored inline. This converts the
list from pypi into one we can use.
r   r   versionr   )r    ZkeysZappendhighest_versionr<   Zvalues)r9   Zpackageshitr   r   r?   s   &     r   r4   r4   V   s     +6-H6{i.i.}}&7WIHN N:&--g6 /(.*DEE,3y)! $ !""r   c                sJ    V ^8  d   QhR\         R\        \        ,          RR/# )r   latestdistr)   Nr   r   r   r=   r>   r   r   r   r   s(     : : :H=M4N :SW :r   c                 sT   Ve   \        4       ;_uu_ 4        VP                  V 8X  d   \        RVP                  4       MJ\        RVP                  4       \        V 4      P                  '       d   \        RV 4       M\        RV 4       R R R 4       R # R #   + '       g   i     R # ; i)NzINSTALLED: %s (latest)zINSTALLED: %sz=LATEST:    %s (pre-release; install with `pip install --pre`)zLATEST:    %s)r   r?   r   parse_versionZpre)rB   rC   s   &&r   print_dist_installation_inforF   r   sy    \\||v%5t||D_dll; (,,, 5 !&9 \ \\s   A3BB'	c                sF    V ^8  d   QhR\         R\        \        ,          /# )r   r   r)   rD   r=   r>   r   r   r      s      & &S &X6F-G &r   c                 s8    \        4       pVP                  V 4      # )N)r   Zget_distribution)r   Zenvs   & r   get_installed_distributionrG      s    
!
#C%%r   c                sz    V ^8  d   QhR\         R,          R\        \        ,          R\        \        ,          RR/# )r   r9   r   name_column_widthr2   r)   N)r   r   r1   r=   r>   r   r   r      s>     $ $

 $}$ SM$ 
	$r   c                 s   V '       g   R # Vf]   \        V  Uu. uF?  p\        VR,          4      \        \        VP                  RR.4      4      4      ,           NKA  	  up4      ^,           pV  F  pVR,          pVR,          ;'       g    Rp\        VP                  RR.4      4      pVeS   W!,
          ^,
          pV^
8  d=   \        P
                  ! WW4      pRRV^,           ,          ,           P                  V4      pV RV R	2p	W  R
V 2p
 \        V
4       \        V4      p\        Wk4       K  	  R # u upi   \         d     K  i ; i)Nr   r   Z-r   Z Z
Z z (Z)z - )maxZlenr@   ZgettextwrapZwrapZjoinr   rG   rF   ZUnicodeEncodeError)r9   rH   r2   rA   r   r   rB   Ztarget_widthZsummary_linesZname_latestZlinerC   s   &&&         r   r7   r7      sQ   
    $# F$s?377:PSu;U+V'WWW#  	 6{i.&&B cU!;<%)=ALb  (g D#):Q)>"??EEmTb*12#gY?	-d3D(6! 2 " 		s   AD6!D;;E
	E
c                sF    V ^8  d   QhR\         \        ,          R\        /# )r   r   r)   )r   r   r=   r>   r   r   r      s     , ,d3i ,C ,r   c                 s$    \        V \        R 7      # ))Zkey)rI   rE   )r   r-   r   r@   r@      s    x]++r   )NN)1Zloggingr6   r5   rJ   Zxmlrpc.clientr;   Zcollectionsr    Zoptparser   Ztypingr   r   r   r   Zpip._vendor.packaging.versionr   rE   Zpip._internal.cli.base_commandr   Zpip._internal.cli.req_commandr   Zpip._internal.cli.status_codesr	   r
   Zpip._internal.exceptionsr   Zpip._internal.metadatar   Zpip._internal.metadata.baser   Zpip._internal.models.indexr   Zpip._internal.network.xmlrpcr   Zpip._internal.utils.loggingr   Zpip._internal.utils.miscr   r   Z	getLoggerr    Zloggerr(   r4   rF   rG   r7   r@   r   r   r   <module>rK      s      
   #  2 2 @ 2 = D 1 : 8 + ; 2 1Y  
		8	$2G0 2j#8:"&
$N,r   