+
    <j;4                        ^ RI t ^ RIt^ RIHt ^ RIHt ^ RIHtHtH	t	H
t
Ht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Ht ^ RIHt ^ RIH t  ^ RI!H"t"H#t# ]'       d!   ^ RI$H%t% ^ RI&H't'  ! R R]4      t(]](,          t)^ RIH*t* ]PV                  ! ],4      t- ! R R]4      t.R R lt/R R lt0R# )    N)ParserValues)TYPE_CHECKING	GeneratorListOptionalSequenceTuplecastcanonicalize_name)Version)
cmdoptions)IndexGroupCommand)SUCCESS)CommandError)BaseDistributionget_environment)SelectionPreferences)stdlib_pkgs)tabulatewrite_outputPackageFinder)
PipSessionc                   0   a  ] tR t^t o RtV 3R ltRtV tR# )_DistWithLatestInfozGive the distribution object a couple of extra fields.

These will be populated during ``get_outdated()``. This is dirty but
makes the rest of the code much cleaner.
c                2   < V ^8  d   Qh/ S[ ;R&   S[;R&   # )   latest_versionlatest_filetype)r   str)format__classdict__s   "P/opt/headortail/venv/lib/python3.14/site-packages/pip/_internal/commands/list.py__annotate__ _DistWithLatestInfo.__annotate__   s               N)__name__
__module____qualname____firstlineno____doc____annotate_func____static_attributes____classdictcell__)r%   s   @r&   r   r      s     	  r)   r   )parsec                      a a ] tR t^)t oRtRtRtV3R lR ltV3R lV 3R lltV3R lR	 lt	V3R
 lR lt
V3R lR ltV3R lR ltV3R lR l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V ;t# )ListCommandzh
List installed packages, including editables.

Packages are listed in a case-insensitive sorted order.
Tz
      %prog [options]c                   < V ^8  d   QhRR/# )r    returnNr*   )r$   r%   s   "r&   r'   ListCommand.__annotate__4   s     V: V:T V:r)   c           	        V P                   P                  R RRRRR7       V P                   P                  RRRRRR7       V P                   P                  R	R
RRRR7       V P                   P                  RRRRRR7       V P                   P                  RRRRRR7       V P                   P                  \        P                  ! 4       4       V P                   P                  RRRRR7       V P                   P                  RRRRR(RR7       V P                   P                  RRRRR7       V P                   P                  RR R!R"R7       V P                   P                  R#RR!R$R%R&7       V P                   P                  \        P                  ! 4       4       \        P
                  ! \        P                  V P                  4      pV P                  P                  ^ V4       V P                  P                  ^ V P                   4       R'# ))z-oz
--outdated
store_trueFzList outdated packages)actiondefaulthelpz-uz
--uptodatezList uptodate packagesz-ez
--editablezList editable projects.z-lz--localzSIf in a virtualenv that has global access, do not list globally-installed packages.z--useruserz,Only output packages installed in user-site.)destr;   r<   r=   z--prezYInclude pre-release and development versions. By default, pip only finds stable versions.z--formatstorelist_formatcolumnszSelect the output format among: columns (default), freeze, or json. The 'freeze' format cannot be used with the --outdated option.)r;   r?   r<   choicesr=   z--not-requirednot_requiredz>List packages that are not dependencies of installed packages.)r;   r?   r=   z--exclude-editablestore_falseinclude_editablez%Exclude editable package from output.z--include-editablez#Include editable package in output.T)r;   r?   r=   r<   N)rB   freezejson)	cmd_opts
add_optionr   	list_pathlist_excludemake_option_groupindex_groupparserinsert_option_group)self
index_optss   & r&   add_optionsListCommand.add_options4   s     ) 	! 	
 	  ) 	! 	
 	  * 	! 	
 	  / 	! 		
 	  ? 	! 	
 	  !5!5!78  2 	! 	
 	  1Q 	! 
	
 	  Q	 	! 	
 	    #8	 	! 	
 	   #6 	! 	
 	  !8!8!:;11*2H2H$++V
'':6''4==9r)   c                $   < V ^8  d   QhRS[ RR/# )r    optionsr7   Nr   )r$   r%   s   "r&   r'   r8      s     6 6 64 6r)   c                r   < VP                   '       g   VP                  '       d   \        SV `  V4       R # R # N)outdateduptodatesuperhandle_pip_version_check)rQ   rV   	__class__s   &&r&   r\   $ListCommand.handle_pip_version_check   s,    w///G,W5  0r)   c                (   < V ^8  d   QhRS[ RRRR/# )r    rV   sessionr   r7   r   r   )r$   r%   s   "r&   r'   r8      s%     
 

(4
	
r)   c                    ^ RI Hp ^ RIHp VP	                  W!R7      p\        RVP                  R7      pVP                  ! VVR7      # )z;
Create a package finder appropriate to this list command.
)LinkCollectorr   )rV   F)allow_yankedallow_all_prereleases)link_collectorselection_prefs)pip._internal.index.collectorrb   "pip._internal.index.package_finderr   creater   pre)rQ   rV   r`   rb   r   re   rf   s   &&&    r&   _build_package_finder!ListCommand._build_package_finder   sO     	@D&--g-G /")++

 ##)+
 	
r)   c                <   < V ^8  d   QhRS[ RS[S[,          RS[/# )r    rV   argsr7   )r   r   r#   int)r$   r%   s   "r&   r'   r8      s&     ' '6 'c 's 'r)   c                N   VP                   '       d   VP                  '       d   \        R 4      hVP                   '       d   VP                  R8X  d   \        R4      h\        P
                  ! V4       \        \        4      pVP                  '       d#   VP                  R VP                   4       4       \        VP                  4      P                  VP                  VP                  VP                  VP                   VR7       Uu. uF  p\#        RV4      NK  	  ppVP$                  '       d   V P'                  WQ4      pVP                   '       d   V P)                  WQ4      pM#VP                  '       d   V P+                  WQ4      pV P-                  WQ4       \.        # u upi )z5Options --outdated and --uptodate cannot be combined.rG   z?List format 'freeze' cannot be used with the --outdated option.c              3   8   "   T F  p\        V4      x  K  	  R # 5irX   r   ).0ns   & r&   	<genexpr>"ListCommand.run.<locals>.<genexpr>   s     G6F)!,,6F   )
local_only	user_onlyeditables_onlyinclude_editablesskipr   )rY   rZ   r   rA   r   check_list_path_optionsetr   excludesupdater   pathiter_installed_distributionslocalr>   editablerF   r   rD   get_not_requiredget_outdatedget_uptodateoutput_package_listingr   )rQ   rV   rn   r{   dpackagess   &&&   r&   runListCommand.run   se    0 0 0VWW 3 3x ?Q  	))'2;KKGg6F6FGG %W\\2OO"==!,,&//")":": P 	%
 &* 	 	%
 ,,X?H((;H((;H##H61	%
s   
F"c                (   < V ^8  d   QhRRRS[ RR/# r    r   _ProcessedDistsrV   r7   r   )r$   r%   s   "r&   r'   r8      %     
 
)
4:
	
r)   c           	         V P                  W4       Uu. uFF  p\        \        VP                  4      4      \        \        VP                  4      4      8  g   KD  VNKH  	  up# u upi rX   iter_packages_latest_infosr3   r#   r!   versionrQ   r   rV   dists   &&& r&   r   ListCommand.get_outdated   s\    
 77J
JS,,-.s4<<7H1II DJ
 	
 
   AA#A#c                (   < V ^8  d   QhRRRS[ RR/# r   r   )r$   r%   s   "r&   r'   r8      r   r)   c           	         V P                  W4       Uu. uFF  p\        \        VP                  4      4      \        \        VP                  4      4      8X  g   KD  VNKH  	  up# u upi rX   r   r   s   &&& r&   r   ListCommand.get_uptodate   s\    
 77J
JS,,-.%DLL8I2JJ DJ
 	
 
r   c                (   < V ^8  d   QhRRRS[ RR/# r   r   )r$   r%   s   "r&   r'   r8      s*     U U)U4:U	Ur)   c                    V UUu0 uF9  pVP                  4       ;'       g    R F  p\        VP                  4      kK  	  K;  	  ppp\        V Uu0 uF  qfP                  V9  g   K  VkK  	  up4      # u uppi u upi )Nr*   )iter_dependenciesr   namelistcanonical_name)rQ   r   rV   r   depdep_keyspkgs   &&&    r&   r   ListCommand.get_not_required   s    
 !
 ..066B6 chh'6 (  	 
 HSHS0B0B(0RSSHSTT
 Ts   A5#A5A;(A;c                8   < V ^8  d   QhRRRS[ RS[R,          /# )r    r   r   rV   r7   )r   NN)r   r   )r$   r%   s   "r&   r'   r8      s+     $ $)$4:$	4	5$r)   c              #     aa"   V P                  S4      ;_uu_ 4       pV P                  SV4      oR  VV3R llp\        WA4       F  pVf   K	  Vx  K  	  RRR4       R#   + '       g   i     R# ; i5i)c                6    V ^8  d   QhRRR\         R,          /# )r    r   r   r7   )r	   )r$   s   "r&   r'   <ListCommand.iter_packages_latest_infos.<locals>.__annotate__   s"      +/0r)   c                   < SP                  V P                  4      pSP                  '       g0   V Uu. uF#  pVP                  P                  '       d   K!  VNK%  	  ppSP                  V P                  R 7      pVP                  V4      pVf   R# VP                  pVP                  P                  '       d   RpMRpWPn	        W`n
        V # u upi ))project_nameNwheelsdist)find_all_candidatesr   rj   r   is_prereleasemake_candidate_evaluatorsort_best_candidatelinkis_wheelr!   r"   )	r   all_candidates	candidate	evaluatorbest_candidateremote_versiontypfinderrV   s	   &      r&   latest_info;ListCommand.iter_packages_latest_infos.<locals>.latest_info   s     "(!;!;D<O<O!P{{{ *8&)7I(00>> "	)7 # & #;;!%!4!4 < 	 "+!>!>~!N!)!/!7!7!&&///!C!C&4#'*$)&s   CCN)_build_sessionrk   map)rQ   r   rV   r`   r   r   r   s   &&f   @r&   r   &ListCommand.iter_packages_latest_infos   sa        ))W//AF 8 K2#J 3? *)))s"   A5,A!A!
A5!A2	,	A5c                (   < V ^8  d   QhRRRS[ RR/# )r    r   r   rV   r7   Nr   )r$   r%   s   "r&   r'   r8     s%     = =)=4:=	=r)   c                   \        VR  R7      pVP                  R8X  d)   V'       d!   \        W4      w  r4V P                  W44       R# VP                  R8X  dl   V Fc  pVP                  ^8  d/   \        RVP                  VP                  VP                  4       KB  \        RVP                  VP                  4       Ke  	  R# VP                  R8X  d   \        \        W4      4       R# R# )c                     V P                   # rX   )r   )r   s   &r&   <lambda>4ListCommand.output_package_listing.<locals>.<lambda>  s
    T00r)   )keyrB   rG   z%s==%s (%s)z%s==%srH   N)
sortedrA   format_for_columnsoutput_package_listing_columnsverboser   raw_namer   locationformat_for_json)rQ   r   rV   dataheaderr   s   &&&   r&   r   "ListCommand.output_package_listing  s     0
 )+-h@LD//=  H, ??a' %t}}dllDMM !4==$,,G !   F*;< +r)   c                Z   < V ^8  d   QhRS[ S[ S[,          ,          RS[ S[,          RR/# )r    r   r   r7   N)r   r#   )r$   r%   s   "r&   r'   r8   +  s1      cO-1#Y	r)   c                    \        V4      ^ 8  d   VP                  ^ V4       \        V4      w  r4\        V4      ^ 8  d)   VP                  ^RP                  R V 4       4      4       V F  p\	        V4       K  	  R# )r    c              3   4   "   T F  pR V,          x  K  	  R# 5i)-Nr*   rr   xs   & r&   rt   =ListCommand.output_package_listing_columns.<locals>.<genexpr>6  s     *BEq377Es   N)leninsertr   joinr   )rQ   r   r   pkg_stringssizesvals   &&&   r&   r   *ListCommand.output_package_listing_columns+  sg     t9q=KK6"%d^ t9q=q#((*BE*B"BCC r)   r*   )r+   r,   r-   r.   r/   ignore_require_venvusagerS   r\   rk   r   r   r   r   r   r   r   r1   r2   __classcell__)r]   r%   s   @@r&   r5   r5   )   s      EV: V:p6 6
 
.' 'R
 

 
U U$ $L= =*  r)   r5   c          	          V ^8  d   QhRRR\         R\        \        \        \        ,          ,          \        \        ,          3,          /# )r    pkgsr   rV   r7   )r   r   r   r#   )r$   s   "r&   r'   r'   <  s:     9 9
9&,9
4S	?DI%&9r)   c                   RR.pVP                   pV'       d   VP                  RR.4       R R lpV  Uu. uF
  qT! V4      NK  	  pp\        V4      pV'       d   VP                  R4       VP                  ^8  d   VP                  R4       VP                  ^8  d   VP                  R	4       \        ;QJ d    R
 V  4       F  '       g   K   RM	  RM! R
 V  4       4      pV'       d   VP                  R4       . p	\        V 4       EF.  w  rVP                  VP                  .pV'       d@   VP                  \        VP                  4      4       VP                  VP                  4       V'       d"   TP                  Wj,          ;'       g    R4       V'       d&   TP                  VP                  ;'       g    R4       VP                  ^8  d&   TP                  VP                  ;'       g    R4       VP                  ^8  d   VP                  VP                  4       V	P                  V4       EK1  	  W3# u upi )zS
Convert the package data into something usable
by output_package_listing_columns.
Packager   LatestTypec                F    V ^8  d   QhR\         R\        \        ,          /# )r    r   r7   )r   r	   r#   )r$   s   "r&   r'   (format_for_columns.<locals>.__annotate__I  s     : :. :8C= :r)   c                      V P                  R 4      p\        4       P                  T4      P	                  R4      #   \         d     R# i ; i)WHEELNBuild)	read_textFileNotFoundErrorr   parsestrget)r   
wheel_files   & r&   wheel_build_tag+format_for_columns.<locals>.wheel_build_tagI  sI    	0J x  ,0099 ! 		s   ; A
	A
r   Location	Installerc              3   8   "   T F  qP                   x  K  	  R # 5irX   )r   r   s   & r&   rt   %format_for_columns.<locals>.<genexpr>Z  s     1Dq

Drv   TFzEditable project location )rY   extendanyappendr   	enumerater   raw_versionr#   r!   r"   editable_project_locationr   	installer)r   rV   r   running_outdatedr   p
build_tagshas_build_tagshas_editablesr   iprojrows   &&           r&   r   r   <  s    #F''x(): /33d/!$dJ3_Ng!j!!k"C1D1CCC1D11M12DT? }}d../JJs4../0JJt++,JJz}**+JJt55;;<??aJJt}}**+??aJJt~~&C) #, <K 4s   I c                4    V ^8  d   QhRRR\         R\        /# r   )r   r#   )r$   s   "r&   r'   r'   x  s"      / & S r)   c                    . pV  F  pR VP                   R\        VP                  4      /pVP                  ^8  d)   VP                  ;'       g    RVR&   VP
                  VR&   VP                  '       d(   \        VP                  4      VR&   VP                  VR&   VP                  pV'       d   WTR&   VP                  V4       K  	  \        P                  ! V4      # )r   r   r   r   r   r!   r"   r   )r   r#   r   r   r   r   rY   r!   r"   r   r   rH   dumps)r   rV   r   r   infor   s   &&    r&   r   r   x  s    DDMMs4<<(
 ??a#}}22D $D%()<)<%=D!"&*&:&:D"#$($B$B!$0I,-D  ::dr)   )1rH   loggingemail.parserr   optparser   typingr   r   r   r	   r
   r   r   pip._vendor.packaging.utilsr   pip._vendor.packaging.versionr   pip._internal.clir   pip._internal.cli.index_commandr   pip._internal.cli.status_codesr   pip._internal.exceptionsr   pip._internal.metadatar   r   $pip._internal.models.selection_prefsr   pip._internal.utils.compatr   pip._internal.utils.miscr   r   rh   r   pip._internal.network.sessionr   r   r   r3   	getLoggerr+   loggerr5   r   r   r*   r)   r&   <module>r     s        R R R 9 1 ( = 2 1 D E 2 ;@8.  23O 0			8	$P# Pf9xr)   