§
    
Á³g˜0  ã            	       ó¾  — d dl Z d dlZd dlmZ d dlmZmZmZmZm	Z	m
Z
mZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d d	lmZ d d
lmZ d dlmZmZ d dlmZ d dlm Z  d dl!m"Z" d dl#m$Z$m%Z% erd dl&m'Z'  G d„ de¦  «        Z(e	e(         Z)d dl*m+Z+  ej,        e-¦  «        Z. G d„ de¦  «        Z/dddede
eee0                  ee0         f         fd„Z1dddede0fd„Z2dS )é    N)ÚValues)ÚTYPE_CHECKINGÚ	GeneratorÚListÚOptionalÚSequenceÚTupleÚcast©Úcanonicalize_name)Ú
cmdoptions)ÚIndexGroupCommand)ÚSUCCESS)ÚCommandError)ÚLinkCollector)ÚPackageFinder)ÚBaseDistributionÚget_environment)ÚSelectionPreferences)Ú
PipSession)Ústdlib_pkgs)ÚtabulateÚwrite_output)ÚDistributionVersionc                   ó(   — e Zd ZU dZeed<   eed<   dS )Ú_DistWithLatestInfoz¾Give 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.
        Úlatest_versionÚlatest_filetypeN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   Ú__annotations__Ústr© ó    úY/var/www/html/mpstechhub/venv/lib/python3.11/site-packages/pip/_internal/commands/list.pyr   r      s6   € € € € € € ð	ð 	ð ,Ð+Ð+Ñ+ØÐÐÑÐÐr&   r   )Úparsec                   óþ   — e Zd ZdZdZdZdd„Zdedede	fd	„Z
ded
ee         defd„Zdddeddfd„Zdddeddfd„Zdddeddfd„Zdddeded         fd„Zdddeddfd„Zdeee                  dee         ddfd„ZdS )ÚListCommandzt
    List installed packages, including editables.

    Packages are listed in a case-insensitive sorted order.
    Tz
      %prog [options]ÚreturnNc                 óØ  — | j                              ddddd¬¦  «         | j                              ddddd	¬¦  «         | j                              d
dddd¬¦  «         | j                              ddddd¬¦  «         | j                              ddddd¬¦  «         | j                              t          j        ¦   «         ¦  «         | j                              dddd¬¦  «         | j                              dddddd¬¦  «         | j                              dddd¬ ¦  «         | j                              d!d"d#d$¬ ¦  «         | j                              d%dd#d&d'¬(¦  «         | j                              t          j        ¦   «         ¦  «         t          j        t          j        | j        ¦  «        }| j                             d)|¦  «         | j                             d)| j         ¦  «         d S )*Nz-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/   r0   z--prezYInclude pre-release and development versions. By default, pip only finds stable versions.z--formatÚstoreÚlist_formatÚcolumns)r5   ÚfreezeÚjsonzBSelect the output format among: columns (default), freeze, or json)r.   r2   r/   Úchoicesr0   z--not-requiredÚnot_requiredz>List packages that are not dependencies of installed packages.)r.   r2   r0   z--exclude-editableÚstore_falseÚinclude_editablez%Exclude editable package from output.z--include-editablez%Include editable package from output.T)r.   r2   r0   r/   r   )	Úcmd_optsÚ
add_optionr   Ú	list_pathÚlist_excludeÚmake_option_groupÚindex_groupÚparserÚinsert_option_group)ÚselfÚ
index_optss     r'   Úadd_optionszListCommand.add_options4   sm  € ØŒ× Ò ØØØØØ)ð 	!ñ 	
ô 	
ð 	
ð 	Œ× Ò ØØØØØ)ð 	!ñ 	
ô 	
ð 	
ð 	Œ× Ò ØØØØØ*ð 	!ñ 	
ô 	
ð 	
ð 	Œ× Ò ØØØØð/ð 	!ñ 		
ô 		
ð 		
ð 	Œ× Ò ØØØØØ?ð 	!ñ 	
ô 	
ð 	
ð 	Œ× Ò ¥Ô!5Ñ!7Ô!7Ñ8Ô8Ð8ØŒ× Ò ØØØð2ð 	!ñ 	
ô 	
ð 	
ð 	Œ× Ò ØØØØØ1ØUð 	!ñ 	
ô 	
ð 	
ð 	Œ× Ò ØØØØQð	 	!ñ 	
ô 	
ð 	
ð 	Œ× Ò Ø Ø Ø#Ø8ð	 	!ñ 	
ô 	
ð 	
ð 	Œ× Ò Ø ØØ#Ø8Øð 	!ñ 	
ô 	
ð 	
ð 	Œ× Ò ¥Ô!8Ñ!:Ô!:Ñ;Ô;Ð;ÝÔ1µ*Ô2HÈ$Ì+ÑVÔVˆ
àŒ×'Ò'¨¨:Ñ6Ô6Ð6ØŒ×'Ò'¨¨4¬=Ñ9Ô9Ð9Ð9Ð9r&   ÚoptionsÚsessionc                 ó†   — t          j        ||¬¦  «        }t          d|j        ¬¦  «        }t	          j        ||¬¦  «        S )zK
        Create a package finder appropriate to this list command.
        )rG   F)Úallow_yankedÚallow_all_prereleases)Úlink_collectorÚselection_prefs)r   Úcreater   Úprer   )rD   rG   rH   rL   rM   s        r'   Ú_build_package_finderz!ListCommand._build_package_finder‰   sY   € õ 'Ô-¨g¸wÐGÑGÔGˆõ /ØØ")¤+ð
ñ 
ô 
ˆõ
 Ô#Ø)Ø+ð
ñ 
ô 
ð 	
r&   Úargsc                 ó¢  — |j         r|j        rt          d¦  «        ‚|j         r|j        dk    rt          d¦  «        ‚t	          j        |¦  «         t          t          ¦  «        }|j        r$| 	                    d„ |j        D ¦   «         ¦  «         d„ t          |j        ¦  «                             |j        |j        |j        |j        |¬¦  «        D ¦   «         }|j        r|                      ||¦  «        }|j         r|                      ||¦  «        }n|j        r|                      ||¦  «        }|                      ||¦  «         t,          S )Nz5Options --outdated and --uptodate cannot be combined.r6   z@List format 'freeze' can not be used with the --outdated option.c              3   ó4   K  — | ]}t          |¦  «        V — Œd S ©Nr   )Ú.0Úns     r'   ú	<genexpr>z"ListCommand.run.<locals>.<genexpr>©   s+   è è € ÐGÐG°Õ)¨!Ñ,Ô,ÐGÐGÐGÐGÐGÐGr&   c                 ó.   — g | ]}t          d |¦  «        ‘ŒS )r   )r
   )rU   Úds     r'   ú
<listcomp>z#ListCommand.run.<locals>.<listcomp>«   s3   € ð 	'
ð 	'
ð 	'
àõ Ð&¨Ñ*Ô*ð	'
ð 	'
ð 	'
r&   )Ú
local_onlyÚ	user_onlyÚeditables_onlyÚinclude_editablesÚskip)ÚoutdatedÚuptodater   r4   r   Úcheck_list_path_optionÚsetr   ÚexcludesÚupdater   ÚpathÚiter_installed_distributionsÚlocalr1   Úeditabler;   r9   Úget_not_requiredÚget_outdatedÚget_uptodateÚoutput_package_listingr   )rD   rG   rQ   r_   Úpackagess        r'   ÚrunzListCommand.runœ   s|  € ØÔð 	X Ô 0ð 	XÝÐVÑWÔWÐWàÔð 	 Ô 3°xÒ ?Ð ?ÝØRñô ð õ 	Ô)¨'Ñ2Ô2Ð2å•;ÑÔˆØÔð 	HØ�KŠKÐGÐG°gÔ6FÐGÑGÔGÑGÔGÐGð	'
ð 	'
å$ W¤\Ñ2Ô2×OÒOØ"œ=Ø!œ,Ø&Ô/Ø")Ô":Øð Pñ ô ð	'
ñ 	'
ô 	'
ˆð Ôð 	@Ø×,Ò,¨X°wÑ?Ô?ˆHàÔð 	<Ø×(Ò(¨°7Ñ;Ô;ˆHˆHØÔð 	<Ø×(Ò(¨°7Ñ;Ô;ˆHà×#Ò# H¨gÑ6Ô6Ð6Ýˆr&   rn   Ú_ProcessedDistsc                 óB   — d„ |                       ||¦  «        D ¦   «         S )Nc                 óš   — g | ]H}t          t          |j        ¦  «        ¦  «        t          t          |j        ¦  «        ¦  «        k    ¯F|‘ŒIS r%   ©r(   r$   r   Úversion©rU   Údists     r'   rZ   z,ListCommand.get_outdated.<locals>.<listcomp>È   sR   € ð 
ð 
ð 
àÝ•S˜Ô,Ñ-Ô-Ñ.Ô.µµs¸4¼<Ñ7HÔ7HÑ1IÔ1IÒIÐIð àIÐIÐIr&   ©Úiter_packages_latest_infos©rD   rn   rG   s      r'   rk   zListCommand.get_outdatedÅ   ó3   € ð
ð 
à×7Ò7¸À'ÑJÔJð
ñ 
ô 
ð 	
r&   c                 óB   — d„ |                       ||¦  «        D ¦   «         S )Nc                 óš   — g | ]H}t          t          |j        ¦  «        ¦  «        t          t          |j        ¦  «        ¦  «        k    ¯F|‘ŒIS r%   rs   ru   s     r'   rZ   z,ListCommand.get_uptodate.<locals>.<listcomp>Ñ   sR   € ð 
ð 
ð 
àÝ•S˜Ô,Ñ-Ô-Ñ.Ô.µ%½¸D¼LÑ8IÔ8IÑ2JÔ2JÒJÐJð àJÐJÐJr&   rw   ry   s      r'   rl   zListCommand.get_uptodateÎ   rz   r&   c                 óR   ‡— d„ |D ¦   «         Št          ˆfd„|D ¦   «         ¦  «        S )Nc                 óh   — h | ]/}|                      ¦   «         pd D ]}t          |j        ¦  «        ’ŒŒ0S )r%   )Úiter_dependenciesr   Úname)rU   rv   Údeps      r'   ú	<setcomp>z/ListCommand.get_not_required.<locals>.<setcomp>Ú   sZ   € ð 
ð 
ð 
àØ×.Ò.Ñ0Ô0Ð6°Bð
ð 
ð õ ˜cœhÑ'Ô'ð
ð 
ð 
ð 
r&   c                 ó&   •— h | ]}|j         ‰v¯|’ŒS r%   ©Úcanonical_name)rU   ÚpkgÚdep_keyss     €r'   r‚   z/ListCommand.get_not_required.<locals>.<setcomp>ã   s&   ø€ ÐSÐSÐS˜S°Ô0BÈ(Ð0RÐ0R�SÐ0RÐ0RÐ0Rr&   )Úlist)rD   rn   rG   r‡   s      @r'   rj   zListCommand.get_not_required×   sF   ø€ ð
ð 
à ð
ñ 
ô 
ˆõ ÐSÐSÐSÐS HÐSÑSÔSÑTÔTÐTr&   )r   NNc              #   óö   ‡‡K  — |                       ‰¦  «        5 }|                      ‰|¦  «        Šdddt          d         fˆˆfd„}t          ||¦  «        D ]}|�|V — Œ		 d d d ¦  «         d S # 1 swxY w Y   d S )Nrv   r   r+   c                 ó  •— ‰                      | j        ¦  «        }‰j        sd„ |D ¦   «         }‰                     | j        ¬¦  «        }|                     |¦  «        }|€d S |j        }|j        j        rd}nd}|| _        || _	        | S )Nc                 ó*   — g | ]}|j         j        °|‘ŒS r%   )rt   Úis_prerelease)rU   Ú	candidates     r'   rZ   zOListCommand.iter_packages_latest_infos.<locals>.latest_info.<locals>.<listcomp>ñ   s4   € ð &ð &ð &à%Ø(Ô0Ô>ð&Ø!ð&ð &ð &r&   )Úproject_nameÚwheelÚsdist)
Úfind_all_candidatesr…   rO   Úmake_candidate_evaluatorÚsort_best_candidatert   ÚlinkÚis_wheelr   r   )rv   Úall_candidatesÚ	evaluatorÚbest_candidateÚremote_versionÚtypÚfinderrG   s         €€r'   Úlatest_infoz;ListCommand.iter_packages_latest_infos.<locals>.latest_infoë   s¼   ø€ ð "(×!;Ò!;¸DÔ<OÑ!PÔ!P�Ø”{ð ð&ð &à)7ð&ñ &ô &�Nð #×;Ò;Ø!%Ô!4ð <ñ ô �	ð "+×!>Ò!>¸~Ñ!NÔ!N�Ø!Ð)Ø˜4à!/Ô!7�Ø!Ô&Ô/ð "Ø!�C�Cà!�CØ&4�Ô#Ø'*�Ô$Ø�r&   )Ú_build_sessionrP   r   Úmap)rD   rn   rG   rH   rœ   rv   r›   s     `   @r'   rx   z&ListCommand.iter_packages_latest_infoså   sý   øøè è € ð × Ò  Ñ)Ô)ð !	¨WØ×/Ò/°¸ÑAÔAˆFðØ+ðåÐ/Ô0ðð ð ð ð ð ð õ8 ˜K¨Ñ2Ô2ð ð �ØÐ#Ø�J�J�Jøðð?!	ð !	ð !	ñ !	ô !	ð !	ð !	ð !	ð !	ð !	ð !	ð !	øøøð !	ð !	ð !	ð !	ð !	ð !	s   šAA.Á.A2Á5A2c                 ó¢  — t          |d„ ¬¦  «        }|j        dk    r-|r+t          ||¦  «        \  }}|                      ||¦  «         d S |j        dk    rO|D ]J}|j        dk    r"t          d|j        |j        |j        ¦  «         Œ/t          d|j        |j        ¦  «         ŒKd S |j        dk    rt          t          ||¦  «        ¦  «         d S d S )	Nc                 ó   — | j         S rT   r„   )rv   s    r'   ú<lambda>z4ListCommand.output_package_listing.<locals>.<lambda>  s	   € ˜TÔ0€ r&   )Úkeyr5   r6   é   z%s==%s (%s)z%s==%sr7   )
Úsortedr4   Úformat_for_columnsÚoutput_package_listing_columnsÚverboser   Úraw_namert   ÚlocationÚformat_for_json)rD   rn   rG   ÚdataÚheaderrv   s         r'   rm   z"ListCommand.output_package_listing  s  € õ ØØ0Ð0ð
ñ 
ô 
ˆð Ô )Ò+Ð+°Ð+Ý-¨h¸Ñ@Ô@‰LˆD�&Ø×/Ò/°°fÑ=Ô=Ð=Ð=Ð=ØÔ  HÒ,Ð,Ø ð Hð H�Ø”? aÒ'Ð'Ý Ø% t¤}°d´lÀDÄMñô ð ð õ ! ¨4¬=¸$¼,ÑGÔGÐGÐGðHð Hð Ô  FÒ*Ð*Ý�¨°7Ñ;Ô;Ñ<Ô<Ð<Ð<Ð<ð +Ð*r&   r«   r¬   c           	      ó:  — t          |¦  «        dk    r|                     d|¦  «         t          |¦  «        \  }}t          |¦  «        dk    r8|                     dd                     t	          d„ |¦  «        ¦  «        ¦  «         |D ]}t          |¦  «         Œd S )Nr   r£   ú c                 ó   — d| z  S )Nú-r%   )Úxs    r'   r¡   z<ListCommand.output_package_listing_columns.<locals>.<lambda>+  s
   € ¸¸q¹€ r&   )ÚlenÚinsertr   Újoinrž   r   )rD   r«   r¬   Úpkg_stringsÚsizesÚvals         r'   r¦   z*ListCommand.output_package_listing_columns   s¢   € õ ˆt‰9Œ9�qŠ=ˆ=Ø�KŠK˜˜6Ñ"Ô"Ð"å% d™^œ^Ñˆ�Uõ ˆt‰9Œ9�qŠ=ˆ=Ø×Ò˜q #§(¢(­3Ð/@Ð/@À%Ñ+HÔ+HÑ"IÔ"IÑJÔJÐJàð 	ð 	ˆCÝ˜ÑÔÐÐð	ð 	r&   )r+   N)r   r    r!   r"   Úignore_require_venvÚusagerF   r   r   r   rP   r   r$   Úintro   rk   rl   rj   r   rx   rm   r¦   r%   r&   r'   r*   r*   )   sÂ  € € € € € ðð ð Ðð€EðS:ð S:ð S:ð S:ðj
Øð
Ø(2ð
à	ð
ð 
ð 
ð 
ð&'˜6ð '¨¨c¬ð '°sð 'ð 'ð 'ð 'ðR
Ø)ð
Ø4:ð
à	ð
ð 
ð 
ð 
ð
Ø)ð
Ø4:ð
à	ð
ð 
ð 
ð 
ðUØ)ðUØ4:ðUà	ðUð Uð Uð Uð$Ø)ð$Ø4:ð$à	Ð4Ô	5ð$ð $ð $ð $ðL=Ø)ð=Ø4:ð=à	ð=ð =ð =ð =ð*Ø˜˜cœ”OðØ-1°#¬Yðà	ðð ð ð ð ð r&   r*   Úpkgsrp   rG   r+   c                 óú  — ddg}|j         }|r|                     ddg¦  «         t          d„ | D ¦   «         ¦  «        }|r|                     d¦  «         |j        dk    r|                     d¦  «         |j        dk    r|                     d	¦  «         g }| D ]ß}|j        t          |j        ¦  «        g}|rA|                     t          |j        ¦  «        ¦  «         |                     |j	        ¦  «         |r|                     |j
        pd
¦  «         |j        dk    r|                     |j        pd
¦  «         |j        dk    r|                     |j        ¦  «         |                     |¦  «         Œà||fS )z_
    Convert the package data into something usable
    by output_package_listing_columns.
    ÚPackageÚVersionÚLatestÚTypec              3   ó$   K  — | ]}|j         V — Œd S rT   )ri   )rU   r±   s     r'   rW   z%format_for_columns.<locals>.<genexpr>>  s$   è è € Ð1Ð1 q˜œ
Ð1Ð1Ð1Ð1Ð1Ð1r&   zEditable project locationr£   ÚLocationÚ	InstallerÚ )r`   ÚextendÚanyÚappendr§   r¨   r$   rt   r   r   Úeditable_project_locationr©   Ú	installer)r»   rG   r¬   Úrunning_outdatedÚhas_editablesr«   ÚprojÚrows           r'   r¥   r¥   1  s™  € ð ˜Ð#€FàÔ'ÐØð *Ø�Š�x Ð(Ñ)Ô)Ð)åÐ1Ð1¨DÐ1Ñ1Ô1Ñ1Ô1€MØð 3Ø�ŠÐ1Ñ2Ô2Ð2à„˜!ÒÐØ�Š�jÑ!Ô!Ð!Ø„˜!ÒÐØ�Š�kÑ"Ô"Ð"à€DØð ð ˆð Œ}�c $¤,Ñ/Ô/Ð0ˆàð 	-Ø�JŠJ•s˜4Ô.Ñ/Ô/Ñ0Ô0Ð0Ø�JŠJ�tÔ+Ñ,Ô,Ð,àð 	=Ø�JŠJ�tÔ5Ð;¸Ñ<Ô<Ð<àŒ?˜aÒÐØ�JŠJ�t”}Ð*¨Ñ+Ô+Ð+ØŒ?˜aÒÐØ�JŠJ�t”~Ñ&Ô&Ð&à�Š�CÑÔÐÐà�ˆ<Ðr&   rn   c                 óH  — g }| D ]Š}|j         t          |j        ¦  «        dœ}|j        dk    r|j        pd|d<   |j        |d<   |j        r!t          |j        ¦  «        |d<   |j        |d<   |j	        }|r||d<   | 
                    |¦  «         Œ‹t          j        |¦  «        S )	N)r€   rt   r£   rÄ   r©   rÉ   r   r   rÈ   )r¨   r$   rt   r§   r©   rÉ   r`   r   r   rÈ   rÇ   r7   Údumps)rn   rG   r«   rv   ÚinforÈ   s         r'   rª   rª   ^  sÑ   € Ø€DØð ð ˆà”MÝ˜4œ<Ñ(Ô(ð
ð 
ˆð Œ?˜aÒÐØ#œ}Ð2°ˆD�ÑØ $¤ˆD�ÑØÔð 	;Ý%(¨Ô)<Ñ%=Ô%=ˆDÐ!Ñ"Ø&*Ô&:ˆDÐ"Ñ#Ø$(Ô$BÐ!Ø$ð 	JØ0IˆDÐ,Ñ-Ø�Š�DÑÔÐÐÝŒ:�dÑÔÐr&   )3r7   ÚloggingÚoptparser   Útypingr   r   r   r   r   r	   r
   Úpip._vendor.packaging.utilsr   Úpip._internal.clir   Úpip._internal.cli.req_commandr   Úpip._internal.cli.status_codesr   Úpip._internal.exceptionsr   Úpip._internal.index.collectorr   Ú"pip._internal.index.package_finderr   Úpip._internal.metadatar   r   Ú$pip._internal.models.selection_prefsr   Úpip._internal.network.sessionr   Úpip._internal.utils.compatr   Úpip._internal.utils.miscr   r   Úpip._internal.metadata.baser   r   rp   Úpip._vendor.packaging.versionr(   Ú	getLoggerr   Úloggerr*   r$   r¥   rª   r%   r&   r'   ú<module>rä      sf  ðØ €€€Ø €€€Ø Ð Ð Ð Ð Ð Ø RÐ RÐ RÐ RÐ RÐ RÐ RÐ RÐ RÐ RÐ RÐ RÐ RÐ RÐ RÐ RÐ RÐ Rà 9Ð 9Ð 9Ð 9Ð 9Ð 9à (Ð (Ð (Ð (Ð (Ð (Ø ;Ð ;Ð ;Ð ;Ð ;Ð ;Ø 2Ð 2Ð 2Ð 2Ð 2Ð 2Ø 1Ð 1Ð 1Ð 1Ð 1Ð 1Ø 7Ð 7Ð 7Ð 7Ð 7Ð 7Ø <Ð <Ð <Ð <Ð <Ð <Ø DÐ DÐ DÐ DÐ DÐ DÐ DÐ DØ EÐ EÐ EÐ EÐ EÐ EØ 4Ð 4Ð 4Ð 4Ð 4Ð 4Ø 2Ð 2Ð 2Ð 2Ð 2Ð 2Ø ;Ð ;Ð ;Ð ;Ð ;Ð ;Ð ;Ð ;àð 4Ø?Ð?Ð?Ð?Ð?Ð?ðð ð ð ð Ð.ñ ô ð ð Ð2Ô3€Oð 0Ð /Ð /Ð /Ð /Ð /à	ˆÔ	˜8Ñ	$Ô	$€ðEð Eð Eð Eð EÐ#ñ Eô Eð EðP*Ø
ð*Ø&,ð*à
ˆ4��S”	Œ?˜D œIÐ%Ô&ð*ð *ð *ð *ðZÐ/ð ¸&ð ÀSð ð ð ð ð ð r&   