+
    <j                     x   ^ 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# )    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                   ,   a  ] tR t^t o V 3R ltRtV tR# )TransformedHitc                N   < V ^8  d   Qh/ S[ ;R&   S[ ;R&   S[S[ ,          ;R&   # )   namesummaryversions)strr   )format__classdict__s   "R/opt/headortail/venv/lib/python3.14/site-packages/pip/_internal/commands/search.py__annotate__TransformedHit.__annotate__   s*     
I L  3i      N)__name__
__module____qualname____firstlineno____annotate_func____static_attributes____classdictcell__r   s   @r   r   r      s      r"   r   c                   b   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                   < V ^8  d   QhRR/# )r   returnNr#   )r   r   s   "r   r    SearchCommand.__annotate__(   s     
: 
:T 
:r"   c           	         V P                   P                  R RRR\        P                  RR7       V P                  P                  ^ V P                   4       R# )z-iz--indexindexURLz3Base URL of Python Package Index (default %default))destmetavardefaulthelpN)cmd_opts
add_optionr   pypi_urlparserinsert_option_group)selfs   &r   add_optionsSearchCommand.add_options(   sI      MMF 	! 	
 	''4==9r"   c                <   < V ^8  d   QhRS[ RS[S[,          RS[/# )r   optionsargsr/   )r   r   r   int)r   r   s   "r   r    r0   4   s&        6  c  s  r"   c                (   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sysstdoutisattyshutilget_terminal_sizeprint_resultsr   r   )r=   rA   rB   query	pypi_hitshitsrE   s   &&&    r   runSearchCommand.run4   so    JKKKK/	i(::#557:Nd:Nr"   c          	      b   < V ^8  d   QhRS[ S[,          RS[RS[ S[S[S[3,          ,          /# )r   rN   rA   r/   )r   r   r   r   )r   r   s   "r   r    r0   D   s3      DI  4S#X;O r"   c                   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   orzXMLRPC request failed [code: z]
N)r2   get_default_sessionr   xmlrpcclientServerProxyrF   Fault	faultCodefaultStringr   
isinstancelist)
r=   rN   rA   	index_urlsession	transportpypirP   faultmessages
   &&&       r   rF   SearchCommand.searchD   s    MM	**73&y:	}}((>	(;;y%@$GD $%%%% }}"" 	(//@EDUDUCVW  w''		(s   	A9 9C'B??Cr#   N)r$   r%   r&   r'   __doc__usageignore_require_venvr>   rQ   rF   r)   r*   r+   s   @r   r-   r-   !   s3     J!E
: 
:     r"   r-   c                v    V ^8  d   QhR\         \        \        \        3,          ,          R\         R,          /# )r   rP   r/   r   )r   r   r   )r   s   "r   r    r    V   s-     # #d38n- #$7G2H #r"   c                b   \        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   keysappendhighest_versionr^   values)rP   packageshitr   r   rk   s   &     r   rG   rG   V   s     +6-H6{i.i.}}&7WIHN N:&--g6 /(.*DEE,3y)! $ !""r"   c                J    V ^8  d   QhR\         R\        \        ,          RR/# )r   latestdistr/   Nr   r   r   )r   s   "r   r    r    r   s(     : : :H=M4N :SW :r"   c                 T   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   rk   r   parse_versionpre)rs   rt   s   &&r   print_dist_installation_infory   r   sy    \\||v%5t||D_dll; (,,, 5 !&9 \ \\s   A3BB'	c                F    V ^8  d   QhR\         R\        \        ,          /# )r   r   r/   ru   )r   s   "r   r    r       s      & &S &X6F-G &r"   c                 8    \        4       pVP                  V 4      # )N)r   get_distribution)r   envs   & r   get_installed_distributionr~      s    
!
#C%%r"   c                z    V ^8  d   QhR\         R,          R\        \        ,          R\        \        ,          RR/# )r   rP   r   name_column_widthrE   r/   N)r   r   rC   )r   s   "r   r    r       s>     $ $

 $}$ SM$ 
	$r"   c                    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   -r    
 z ()z - )maxlenrn   gettextwrapwrapjoinr   r~   ry   UnicodeEncodeError)rP   r   rE   rq   r   r   rs   target_widthsummary_linesname_latestlinert   s   &&&         r   rM   rM      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                F    V ^8  d   QhR\         \        ,          R\        /# )r   r   r/   )r   r   )r   s   "r   r    r       s     , ,d3i ,C ,r"   c                 $    \        V \        R 7      # ))key)r   rw   )r   s   &r   rn   rn      s    x]++r"   )NN)1loggingrK   rH   r   xmlrpc.clientrW   collectionsr   optparser   typingr   r   r   r   pip._vendor.packaging.versionr	   rw   pip._internal.cli.base_commandr
   pip._internal.cli.req_commandr   pip._internal.cli.status_codesr   r   pip._internal.exceptionsr   pip._internal.metadatar   pip._internal.metadata.baser   pip._internal.models.indexr   pip._internal.network.xmlrpcr   pip._internal.utils.loggingr   pip._internal.utils.miscr   r   	getLoggerr$   loggerr-   rG   ry   r~   rM   rn   r#   r"   r   <module>r      s      
   #  2 2 @ 2 = D 1 : 8 + ; 2 1Y  
		8	$2G0 2j#8:"&
$N,r"   