§
    
Á³g¹  ã                   ó  — d dl Z d dlmZ d dlmZmZmZmZmZ d dl	m
Z
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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$  e j%        e&¦  «        Z' G d„ de¦  «        Z(dS )é    N)ÚValues)ÚAnyÚIterableÚListÚOptionalÚUnion)ÚLegacyVersionÚVersion)Ú
cmdoptions)ÚIndexGroupCommand)ÚERRORÚSUCCESS)Úprint_dist_installation_info)ÚCommandErrorÚDistributionNotFoundÚPipError)ÚLinkCollector)ÚPackageFinder)ÚSelectionPreferences)ÚTargetPython)Ú
PipSession)Úwrite_outputc                   óœ   — e Zd ZdZdZdZdd„Zdedee	         de
fd	„Z	 	 dded
edee         dee         def
d„Zdedee         ddfd„ZdS )ÚIndexCommandz=
    Inspect information available from package indexes.
    Tz&
        %prog versions <package>
    ÚreturnNc                 óN  — t          j        | j        ¦  «         | j                             t          j        ¦   «         ¦  «         | j                             t          j        ¦   «         ¦  «         | j                             t          j        ¦   «         ¦  «         | j                             t          j        ¦   «         ¦  «         t          j        t           j	        | j
        ¦  «        }| j
                             d|¦  «         | j
                             d| j        ¦  «         d S )Nr   )r   Úadd_target_python_optionsÚcmd_optsÚ
add_optionÚignore_requires_pythonÚpreÚ	no_binaryÚonly_binaryÚmake_option_groupÚindex_groupÚparserÚinsert_option_group)ÚselfÚ
index_optss     úZ/var/www/html/mpstechhub/venv/lib/python3.11/site-packages/pip/_internal/commands/index.pyÚadd_optionszIndexCommand.add_options    sç   € ÝÔ,¨T¬]Ñ;Ô;Ð;àŒ× Ò ¥Ô!BÑ!DÔ!DÑEÔEÐEØŒ× Ò ¥¤Ñ!1Ô!1Ñ2Ô2Ð2ØŒ× Ò ¥Ô!5Ñ!7Ô!7Ñ8Ô8Ð8ØŒ× Ò ¥Ô!7Ñ!9Ô!9Ñ:Ô:Ð:åÔ1ÝÔ"ØŒKñ
ô 
ˆ
ð
 	Œ×'Ò'¨¨:Ñ6Ô6Ð6ØŒ×'Ò'¨¨4¬=Ñ9Ô9Ð9Ð9Ð9ó    ÚoptionsÚargsc                 óÀ  — d| j         i}t                               d¦  «         |r
|d         |vrBt                               dd                     t          |¦  «        ¦  «        ¦  «         t          S |d         }	  ||         ||dd …         ¦  «         nC# t          $ r6}t                               |j        d         ¦  «         t          cY d }~S d }~ww xY wt          S )NÚversionsztpip index is currently an experimental command. It may be removed/changed in a future release without prior warning.r   zNeed an action (%s) to perform.ú, é   )
Úget_available_package_versionsÚloggerÚwarningÚerrorÚjoinÚsortedr   r   r.   r   )r(   r-   r.   ÚhandlersÚactionÚes         r*   ÚrunzIndexCommand.run0   sú   € à˜Ô;ð
ˆõ 	�Šð%ñ	
ô 	
ð 	
ð ð 	�t˜A”w hÐ.Ð.Ý�LŠLØ1Ø—	’	�& Ñ*Ô*Ñ+Ô+ñô ð õ ˆLà�a”ˆð	ØˆH�VÔ˜W d¨1¨2¨2¤hÑ/Ô/Ð/Ð/øÝð 	ð 	ð 	Ý�LŠL˜œ œÑ#Ô#Ð#ÝˆLˆLˆLˆLˆLˆLøøøøð	øøøõ ˆs   Á;B Â
CÂ +CÃCÃCÚsessionÚtarget_pythonr    c                 óŠ   — t          j        ||¬¦  «        }t          d|j        |¬¦  «        }t	          j        |||¬¦  «        S )zK
        Create a package finder appropriate to the index command.
        )r-   F)Úallow_yankedÚallow_all_prereleasesr    )Úlink_collectorÚselection_prefsr>   )r   Úcreater   r!   r   )r(   r-   r=   r>   r    rB   rC   s          r*   Ú_build_package_finderz"IndexCommand._build_package_finderN   s_   € õ 'Ô-¨g¸wÐGÑGÔGˆõ /ØØ")¤+Ø#9ð
ñ 
ô 
ˆõ Ô#Ø)Ø+Ø'ð
ñ 
ô 
ð 	
r,   c                 óø  — t          |¦  «        dk    rt          d¦  «        ‚t          j        |¦  «        }|d         }|                      |¦  «        5 }|                      ||||j        ¬¦  «        }d„ |                     |¦  «        D ¦   «         }|j        sd„ |D ¦   «         }t          |¦  «        }|s"t          d                     |¦  «        ¦  «        ‚d„ t          |d	¬
¦  «        D ¦   «         }|d         }	d d d ¦  «         n# 1 swxY w Y   t          d                     ||	¦  «        ¦  «         t          d                     d                     |¦  «        ¦  «        ¦  «         t          ||	¦  «         d S )Nr2   z(You need to specify exactly one argumentr   )r-   r=   r>   r    c              3   ó$   K  — | ]}|j         V — Œd S ©N)Úversion)Ú.0Ú	candidates     r*   ú	<genexpr>z>IndexCommand.get_available_package_versions.<locals>.<genexpr>v   s>   è è € ð Að AØ&/�	Ô!ðAð Að Að Að Að Ar,   c              3   ó(   K  — | ]}|j         °	|V — Œd S rH   )Úis_prerelease)rJ   rI   s     r*   rL   z>IndexCommand.get_available_package_versions.<locals>.<genexpr>|   s>   è è € ð ð Ø '¸7Ô;PðØðð ð ð ð ð r,   z%No matching distribution found for {}c                 ó,   — g | ]}t          |¦  «        ‘ŒS © )Ústr)rJ   Úvers     r*   ú
<listcomp>z?IndexCommand.get_available_package_versions.<locals>.<listcomp>†   s   € Ð!UÐ!UÐ!U¨s¥# c¡(¤(Ð!UÐ!UÐ!Ur,   T)Úreversez{} ({})zAvailable versions: {}r1   )Úlenr   r   Úmake_target_pythonÚ_build_sessionrE   r    Úfind_all_candidatesr!   Úsetr   Úformatr8   r   r7   r   )
r(   r-   r.   r>   Úqueryr=   Úfinderr0   Úformatted_versionsÚlatests
             r*   r3   z+IndexCommand.get_available_package_versionsg   sé  € Ýˆt‰9Œ9˜Š>ˆ>ÝÐIÑJÔJÐJå"Ô5°gÑ>Ô>ˆØ�Q”ˆà× Ò  Ñ)Ô)ð 	+¨WØ×/Ò/ØØØ+Ø'.Ô'Eð	 0ñ ô ˆFðAð AØ39×3MÒ3MÈeÑ3TÔ3TðAñ Aô AˆHð ”;ð ðð Ø+3ðñ ô �õ ˜8‘}”}ˆHàð Ý*Ø;×BÒBÀ5ÑIÔIñô ð ð "VÐ!Uµf¸XÈtÐ6TÑ6TÔ6TÐ!UÑ!UÔ!UÐØ'¨Ô*ˆFð3	+ð 	+ð 	+ñ 	+ô 	+ð 	+ð 	+ð 	+ð 	+ð 	+ð 	+øøøð 	+ð 	+ð 	+ð 	+õ6 	�Y×%Ò% e¨VÑ4Ô4Ñ5Ô5Ð5ÝÐ-×4Ò4°T·Y²YÐ?QÑ5RÔ5RÑSÔSÑTÔTÐTÝ$ U¨FÑ3Ô3Ð3Ð3Ð3s   ÁB'DÄDÄD)r   N)NN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Úignore_require_venvÚusager+   r   r   rQ   Úintr<   r   r   r   Úboolr   rE   r   r3   rP   r,   r*   r   r      s÷   € € € € € ðð ð Ðð€Eð:ð :ð :ð :ð ˜6ð ¨¨c¬ð °sð ð ð ð ðD 15Ø15ð
ð 
àð
ð ð
ð   Ô-ð	
ð
 !)¨¤ð
ð 
ð
ð 
ð 
ð 
ð2$4°fð $4ÀDÈÄIð $4ÐRVð $4ð $4ð $4ð $4ð $4ð $4r,   r   ))ÚloggingÚoptparser   Útypingr   r   r   r   r   Úpip._vendor.packaging.versionr	   r
   Úpip._internal.clir   Úpip._internal.cli.req_commandr   Úpip._internal.cli.status_codesr   r   Úpip._internal.commands.searchr   Úpip._internal.exceptionsr   r   r   Úpip._internal.index.collectorr   Ú"pip._internal.index.package_finderr   Ú$pip._internal.models.selection_prefsr   Ú"pip._internal.models.target_pythonr   Úpip._internal.network.sessionr   Úpip._internal.utils.miscr   Ú	getLoggerr_   r4   r   rP   r,   r*   ú<module>rw      s‹  ðØ €€€Ø Ð Ð Ð Ð Ð Ø 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7à @Ð @Ð @Ð @Ð @Ð @Ð @Ð @à (Ð (Ð (Ð (Ð (Ð (Ø ;Ð ;Ð ;Ð ;Ð ;Ð ;Ø 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ø FÐ FÐ FÐ FÐ FÐ FØ QÐ QÐ QÐ QÐ QÐ QÐ QÐ QÐ QÐ QØ 7Ð 7Ð 7Ð 7Ð 7Ð 7Ø <Ð <Ð <Ð <Ð <Ð <Ø EÐ EÐ EÐ EÐ EÐ EØ ;Ð ;Ð ;Ð ;Ð ;Ð ;Ø 4Ð 4Ð 4Ð 4Ð 4Ð 4Ø 1Ð 1Ð 1Ð 1Ð 1Ð 1à	ˆÔ	˜8Ñ	$Ô	$€ðu4ð u4ð u4ð u4ð u4Ð$ñ u4ô u4ð u4ð u4ð u4r,   