ó
    T=Œjè  ã                  ó2  • S SK Jr  S SKrS SKrS SKJrJr  S SKJr  S SK	J
r
  S SKJr  S SKJr  S SKJr  S S	KJr  S S
KJrJr  S SKJrJr  S SKJrJrJrJr  S SKJr  S SK J!r!  S SK"J#r#  S SK$J%r%  S SK&J'r'  S SK(J)r)  \RT                  " \+5      r, " S S\5      r-g)é    )ÚannotationsN)ÚCallableÚIterable)ÚValues)ÚAny)Úcanonicalize_name)ÚVersion)Ú
cmdoptions)ÚIndexGroupCommand)ÚERRORÚSUCCESS)Úget_installed_distributionÚprint_dist_installation_info)ÚCommandErrorÚDiagnosticPipErrorÚDistributionNotFoundÚPipError)ÚLinkCollector)ÚPackageFinder)ÚSelectionPreferences)ÚTargetPython)Ú
PipSession)Úwrite_outputc                  ól   • \ rS rSrSrSrSrSS jrSS jrSS jr	  S         SS	 jjr
SS
 jrSrg)ÚIndexCommandé#   z5
Inspect information available from package indexes.
Tz&
        %prog versions <package>
    c                ót  • [         R                  " U R                  5        U R                  R                  [         R                  " 5       5        U R                  R                  [         R
                  " 5       5        [         R                  " [         R                  U R                  5      n[         R                  " [         R                  U R                  5      nU R                  R                  SU5        U R                  R                  SU5        U R                  R                  SU R                  5        g )Nr   )r
   Úadd_target_python_optionsÚcmd_optsÚ
add_optionÚignore_requires_pythonÚjsonÚmake_option_groupÚindex_groupÚparserÚpackage_selection_groupÚinsert_option_group)ÚselfÚ
index_optsÚselection_optss      Ú`/Users/stevendouglas/BidBrain/.venv/lib/python3.13/site-packages/pip/_internal/commands/index.pyÚadd_optionsÚIndexCommand.add_options-   sÌ   € Ü×,Ò,¨T¯]©]Ô;à�‰× Ñ ¤×!BÒ!BÓ!DÔEØ�‰× Ñ ¤§¢Ó!2Ô3ä×1Ò1Ü×"Ñ"Ø�K‰Kó
ˆ
ô
 $×5Ò5Ü×.Ñ.Ø�K‰Kó
ˆð
 	�‰×'Ñ'¨¨:Ô6Ø�‰×'Ñ'¨¨>Ô:Ø�‰×'Ñ'¨¨4¯=©=Õ9ó    c                ó   • SU R                   0$ )NÚversions)Úget_available_package_versions)r(   s    r+   Úhandler_mapÚIndexCommand.handler_mapA   s   € à˜×;Ñ;ð
ð 	
r.   c                óš  • [         R                  " U5        U R                  5       nU(       a	  US   U;  a4  [        R	                  SSR                  [        U5      5      5        [        $ US   n X4   " XSS  5        [        $ ! [         a    e [         a2  n[        R	                  UR                  S   5        [        s S nA$ S nAff = f)Nr   zNeed an action (%s) to perform.ú, é   )r
   Úcheck_release_control_exclusiver2   ÚloggerÚerrorÚjoinÚsortedr   r   r   Úargsr   )r(   Úoptionsr<   r2   ÚactionÚes         r+   ÚrunÚIndexCommand.runF   s±   € Ü×2Ò2°7Ô;à×&Ñ&Ó(ˆö �t˜A‘w kÓ1Ü�L‰LØ1Ø—	‘	œ& Ó-Ó.ôô ˆLà�a‘ˆð	ØÒ ¨a¨b¨Ô2ô ˆøô "ó 	ØÜó 	Ü�L‰L˜Ÿ™ ™Ô#Ü�Lûð	ús   Á1B ÂC
Â'CÂ?C
ÃC
Nc                ó¬   • [         R                  " X!S9n[        SUR                  UR                  US9n[
        R                  " UUUUR                  S9$ )z;
Create a package finder appropriate to the index command.
)r=   F)Úallow_yankedÚrelease_controlÚformat_controlr!   )Úlink_collectorÚselection_prefsÚtarget_pythonÚuploaded_prior_to)r   Úcreater   rD   rE   r   rI   )r(   r=   ÚsessionrH   r!   rF   rG   s          r+   Ú_build_package_finderÚ"IndexCommand._build_package_finder`   s_   € ô '×-Ò-¨gÑGˆô /ØØ#×3Ñ3Ø"×1Ñ1Ø#9ñ	
ˆô ×#Ò#Ø)Ø+Ø'Ø%×7Ñ7ñ	
ð 	
r.   c                ó\  • [        U5      S:w  a  [        S5      e[        R                  " U5      nUS   nU R	                  U5       nU R                  UUUUR                  S9nS UR                  U5       5       nU R                  U[        U5      5      (       a	  S U 5       n[        U5      nU(       d  [        SU 35      e[        USS	9 Vs/ s H  n[        U5      PM     n	nU	S   n
S S S 5        [        U5      nUR                  (       aA  UW	W
S
.nUb  [        UR                   5      US'   [#        [        R$                  " U5      5        g [#        U SW
 S35        [#        SR'                  SR)                  W	5      5      5        [+        X«5        g s  snf ! , (       d  f       N¶= f)Nr6   z(You need to specify exactly one argumentr   )r=   rK   rH   r!   c              3  ó8   #   • U  H  oR                   v •  M     g 7f©N)Úversion)Ú.0Ú	candidates     r+   Ú	<genexpr>Ú>IndexCommand.get_available_package_versions.<locals>.<genexpr>Š   s   é € ð +Ú3T i×!Ö!Ò3Tùs   ‚c              3  óJ   #   • U  H  oR                   (       a  M  Uv •  M     g 7frP   )Úis_prerelease)rR   rQ   s     r+   rT   rU   �   s   é € ð Ú+3 ×;PÕ;P—G‘Gª8ùs   ‚#š	#z#No matching distribution found for T)Úreverse)Únamer0   ÚlatestÚinstalled_versionz (Ú)zAvailable versions: {}r5   )Úlenr   r
   Úmake_target_pythonÚ_build_sessionrL   r!   Úfind_all_candidatesÚshould_exclude_prereleaser   Úsetr   r;   Ústrr   r"   rQ   r   ÚdumpsÚformatr:   r   )r(   r=   r<   rH   ÚqueryrK   Úfinderr0   ÚverÚformatted_versionsrZ   ÚdistÚstructured_outputs                r+   r1   Ú+IndexCommand.get_available_package_versions{   s¤  € Üˆt‹9˜‹>ÜÐIÓJÐJä"×5Ò5°gÓ>ˆØ�Q‘ˆà× Ñ  Ô)¨WØ×/Ñ/ØØØ+Ø'.×'EÑ'Eð	 0ð ˆFñ+Ø39×3MÑ3MÈeÔ3Tó+ˆHð ×-Ñ-¨gÔ7HÈÓ7O×PÑPñÙ+3ó�ô ˜8“}ˆHæÜ*Ø9¸%¸ÐAóð ô 7=¸XÈtÒ6TÓ!UÒ6T¨s¤# c¦(Ñ6TÐÐ!UØ'¨Ñ*ˆF÷1 *ô4 *¨%Ó0ˆà�<�<àØ.Ø ñ!Ðð ÑÜ9<¸T¿\¹\Ó9JÐ!Ð"5Ñ6äœŸšÐ$5Ó6Õ7ô ˜E˜7 " V H¨AÐ.Ô/ÜÐ1×8Ñ8¸¿¹ÐCUÓ9VÓWÔXÜ(¨Õ6ùò) "V÷/ *Õ)ús   ÁB
FÃFÃ&FÆFÆ
F+© )ÚreturnÚNone)rn   z.dict[str, Callable[[Values, list[str]], None]])r=   r   r<   z	list[str]rn   Úint)NF)
r=   r   rK   r   rH   zTargetPython | Noner!   Úboolrn   r   )r=   r   r<   z	list[Any]rn   ro   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__Úignore_require_venvÚusager,   r2   r@   rL   r1   Ú__static_attributes__rm   r.   r+   r   r   #   sg   † ñð Ðð€Eô:ô(
ô
ð< .2Ø',ð
àð
ð ð
ð +ð	
ð
 !%ð
ð 
õ
÷627r.   r   ).Ú
__future__r   r"   ÚloggingÚcollections.abcr   r   Úoptparser   Útypingr   Úpip._vendor.packaging.utilsr   Úpip._vendor.packaging.versionr	   Úpip._internal.clir
   Úpip._internal.cli.req_commandr   Úpip._internal.cli.status_codesr   r   Úpip._internal.commands.searchr   r   Úpip._internal.exceptionsr   r   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   Ú	getLoggerrr   r8   r   rm   r.   r+   Ú<module>r�      sh   ðÝ "ã Û ß .Ý Ý å 9Ý 1å (Ý ;ß 9÷÷ó õ 8Ý <Ý EÝ ;Ý 4Ý 1à	×	Ò	˜8Ó	$€ôJ7Ð$õ J7r.   