Ë
    Œj{  ã                   ó  — d dl Z d dlmZ d dl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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 jF                  e$«      Z% G d„ de«      Z&y)é    N)ÚValues)ÚAnyÚIterableÚListÚOptional)Ú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y)ÚIndexCommandz=
    Inspect information available from package indexes.
    Tz&
        %prog versions <package>
    ÚreturnNc                 óŠ  — t        j                  | j                  «       | j                  j                  t        j                  «       «       | j                  j                  t        j
                  «       «       | j                  j                  t        j                  «       «       | j                  j                  t        j                  «       «       t        j                  t         j                  | j                  «      }| j                  j                  d|«       | j                  j                  d| j                  «       y )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     úf/var/www/html/Fitness-lenito-AI-main/venv/lib/python3.12/site-packages/pip/_internal/commands/index.pyÚadd_optionszIndexCommand.add_options    sÌ   € Ü×,Ñ,¨T¯]©]Ô;à�‰× Ñ ¤×!BÑ!BÓ!DÔEØ�‰× Ñ ¤§¡Ó!1Ô2Ø�‰× Ñ ¤×!5Ñ!5Ó!7Ô8Ø�‰× Ñ ¤×!7Ñ!7Ó!9Ô:ä×1Ñ1Ü×"Ñ"Ø�K‰Kó
ˆ
ð
 	�‰×'Ñ'¨¨:Ô6Ø�‰×'Ñ'¨¨4¯=©=Õ9ó    ÚoptionsÚargsc                 ót  — d| j                   i}t        j                  d«       |r|d   |vr4t        j                  ddj	                  t        |«      «      «       t        S |d   }	  ||   ||dd  «       t        S # t        $ r2}t        j                  |j                  d   «       t        cY d }~S d }~ww xY w)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 hÔ/ô
 ˆøô	 ò 	Ü�L‰L˜Ÿ™ ™Ô#Ü�Lûð	ús   Á'A< Á<	B7Â'B2Â,B7Â2B7Ú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   r@   rA   s          r(   Ú_build_package_finderz"IndexCommand._build_package_finderN   sM   € ô '×-Ñ-¨g¸wÔGˆô /ØØ")§+¡+Ø#9ô
ˆô ×#Ñ#Ø)Ø+Ø'ô
ð 	
r*   c                 ój  — t        |«      dk7  rt        d«      ‚t        j                  |«      }|d   }| j	                  |«      5 }| j                  ||||j                  ¬«      }d„ |j                  |«      D «       }|j                  s	d„ |D «       }t        |«      }|st        d|› �«      ‚t        |d¬	«      D �cg c]  }t        |«      ‘Œ }	}|	d   }
d d d «       t        |› d

› d�«       t        dj                  dj                  	«      «      «       t!        ||
«       y c c}w # 1 sw Y   ŒUxY w)Nr0   z(You need to specify exactly one argumentr   )r+   r;   r<   r   c              3   ó4   K  — | ]  }|j                   –— Œ y ­w©N)Úversion)Ú.0Ú	candidates     r(   Ú	<genexpr>z>IndexCommand.get_available_package_versions.<locals>.<genexpr>v   s   è ø€ ð +Ù3T i�	×!Õ!Ñ3Tùs   ‚c              3   ó:   K  — | ]  }|j                   rŒ|–— Œ y ­wrF   )Úis_prerelease)rH   rG   s     r(   rJ   z>IndexCommand.get_available_package_versions.<locals>.<genexpr>|   s   è ø€ ð Ù+3 ¸7×;PÓ;P”G©8ùs   ‚”z#No matching distribution found for T)Úreversez (Ú)zAvailable versions: {}r/   )Úlenr   r	   Úmake_target_pythonÚ_build_sessionrC   r   Úfind_all_candidatesr   Úsetr   r6   Ústrr   Úformatr5   r   )r&   r+   r,   r<   Úqueryr;   Úfinderr.   ÚverÚformatted_versionsÚlatests              r(   r1   z+IndexCommand.get_available_package_versionsg   sA  € Üˆt‹9˜Š>ÜÐIÓJÐJä"×5Ñ5°gÓ>ˆØ�Q‘ˆà× Ñ  Ô)¨WØ×/Ñ/ØØØ+Ø'.×'EÑ'Eð	 0ó ˆFñ+Ø39×3MÑ3MÈeÔ3Tó+ˆHð —;’;ñÙ+3ó�ô ˜8“}ˆHáÜ*Ø9¸%¸ÐAóð ô 7=¸XÈtÕ6TÓ!UÑ6T¨s¤# c¥(Ð6TÐÐ!UØ'¨Ñ*ˆF÷3 *ô6 	˜�w˜b  ¨Ð*Ô+ÜÐ-×4Ñ4°T·Y±YÐ?QÓ5RÓSÔTÜ$ U¨FÕ3ùò "V÷1 *Ð)ús   ÁA7D)Â<D$ÃD)Ä$D)Ä)D2)r   N)NN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Úignore_require_venvÚusager)   r   r   rT   Úintr:   r   r   r   Úboolr   rC   r   r1   © r*   r(   r   r      sŸ   „ ñð Ðð€Eó:ð ˜6ð ¨¨c©ð °só ðD 15Ø15ñ
àð
ð ð
ð   Ñ-ð	
ð
 !)¨¡ð
ð 
ó
ð2$4°fð $4ÀDÈÁIð $4ÐRVô $4r*   r   )'ÚloggingÚoptparser   Útypingr   r   r   r   Úpip._vendor.packaging.versionr   Ú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[   r2   r   rc   r*   r(   Ú<module>rt      sY   ðÛ Ý ß 0Ó 0å 1å (Ý ;ß 9Ý Fß QÑ QÝ 7Ý <Ý EÝ ;Ý 4Ý 1à	ˆ×	Ñ	˜8Ó	$€ôu4Ð$õ u4r*   