+
    Ui                    B   R t ^ RIHt ^ RIt^ RIt^ RI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 ]'       d   ^ R
IHt ^ RIHt ^ RIHt ^ RIHt ]P8                  ! ]4      t]	R R l4       t ! R R]4      t R R lt!R R lt" ! R R]] 4      t#R# )a&  
Contains command classes which may interact with an index / the network.

Unlike its sister module, req_command, this module still uses lazy imports
so commands which don't always hit the network (e.g. list w/o --outdated or
--uptodate) don't need waste time importing PipSession and friends.
)annotationsN)Iterator)	lru_cache)Values)TYPE_CHECKING)certifi)Command)CommandContextMixIn)
SSLContext)NormalizedName
PipSession)UpgradePromptc                   V ^8  d   QhRR/# )   returnzSSLContext | None )formats   "]/var/www/html/photoedit/myenv/lib/python3.14/site-packages/pip/_internal/cli/index_command.py__annotate__r   $   s      (9     c                 8    ^ RI p  ^ RIHp TP                  T P                  4      pTP                  \        P                  ! 4       4       T#   \         d    \        P                  R4        R# i ; i  \         d    \        P                  R4        R# i ; i)    Nz1Disabling truststore since ssl support is missing)
truststorez5Disabling truststore because platform isn't supported)sslImportErrorloggerwarningpip._vendorr   r
   PROTOCOL_TLS_CLIENTload_verify_locationsr   where)r   r   ctxs      r   _create_truststore_ssl_contextr#   #   s    
*
 

 7 7
8Cgmmo.J  JK  NOs"   A A5  A21A25 BBc                  d   a  ] tR t^6tRtR V 3R llt]R R l4       tR R ltRR R	 llt	R
t
V ;t# )SessionCommandMixinz=
A class mixin for command classes needing _build_session().
c                   V ^8  d   QhRR/# )r   r   Noner   )r   s   "r   r    SessionCommandMixin.__annotate__;   s     0 0$ 0r   c                	2   < \         SV `  4        R V n        R # )N)super__init___session)self	__class__s   &r   r+   SessionCommandMixin.__init__;   s    +/r   c                    V ^8  d   QhRRRR/# )r   optionsr   r   zlist[str] | Noner   )r   s   "r   r   r(   @   s     " "f "1A "r   c                    . p\        VRR4      '       g'   \        VRR4      pV'       d   VP                  V4       \        VRR4      pV'       d   VP                  V4       T;'       g    R# )z7Return a list of index urls from user-provided options.no_indexF	index_urlNextra_index_urls)getattrappendextend)clsr1   
index_urlsurlurlss   &&   r   _get_index_urls#SessionCommandMixin._get_index_urls?   se     
w
E22';5C!!#&w 2D9d#!!T!r   c                    V ^8  d   QhRRRR/# )r   r1   r   r   r   r   )r   s   "r   r   r(   M   s      6 j r   c                    V P                   f6   V P                  V P                  V4      4      V n         V P                   f   Q hV P                   # )zGet a default-managed session.)r,   enter_context_build_session)r-   r1   s   &&r   get_default_session'SessionCommandMixin.get_default_sessionM   sE    ==  ..t/B/B7/KLDM ==,,,}}r   c               (    V ^8  d   QhRRRRRRRR/# )r   r1   r   retriesz
int | Nonetimeoutr   r   r   )r   s   "r   r   r(   W   s2     2 22 2 	2
 
2r   c           	     	   ^ RI Hp VP                  pV'       d(   \        P                  P                  V4      '       g   Q hRVP                  9  d   \        4       pMRpT! V'       d!   \        P                  P                  VR4      MRVe   TMVP                  VP                  VP                  V P                  V4      VR7      pVP                  '       d   VP                  Vn        VP                  '       d   VP                  Vn        VP                   '       g	   V'       d   Ve   TMVP                   Vn        VP"                  '       d8   RVP"                  RVP"                  /Vn        RVn        VP"                  Vn        VP*                  '       * VP,                  n        VP0                  VP,                  n        V# )	r   r   zlegacy-certsNzhttp-v2)cacherF   resume_retriestrusted_hostsr:   ssl_contexthttphttpsF)pip._internal.network.sessionr   	cache_dirospathisabsdeprecated_features_enabledr#   joinrF   rJ   rK   r=   certverifyclient_certrG   proxyproxies	trust_env	pip_proxyno_inputauth	promptingkeyring_provider)r-   r1   rF   rG   r   rP   rL   sessions   &&&&    r   rB   "SessionCommandMixin._build_sessionW   sS    	=%%	i 8 888!D!DD8:KK8A"'',,y)4t&2G"11!//++G4#
 <<<$\\GN "..GL ???g)0)<g'//GO ===GO !&G 'G &-%5%5!5(/(@(@%r   )r,   )NN)__name__
__module____qualname____firstlineno____doc__r+   classmethodr=   rC   rB   __static_attributes____classcell__)r.   s   @r   r%   r%   6   s5    0 0 " "2 2r   r%   c               $    V ^8  d   QhRRRRRR/# )r   ra   r   r1   r   r   UpgradePrompt | Noner   )r   s   "r   r   r      s$     : ::"(::r   c                    ^ RI Hp V! W4      # )r   )pip_self_version_check_fetch)!pip._internal.self_outdated_checkrn   )ra   r1   rn   s   && r   _pip_self_version_check_fetchrp      s     O'99r   c                    V ^8  d   QhRRRR/# )r   upgrade_promptrl   r   r'   r   )r   s   "r   r   r      s     0 01E 0$ 0r   c                "    ^ RI Hp V! V 4       R# )r   )pip_self_version_check_emitN)ro   rt   )rr   rt   s   & r   _pip_self_version_check_emitru      s    M/r   c                  P    ] tR t^tRtR R lt]P                  R R l4       tRt	R# )IndexGroupCommandz
Abstract base class for commands with the index_group options.

This also corresponds to the commands that permit the pip version check.
c               $    V ^8  d   QhRRRRRR/# )r   r1   r   package_namer   r   boolr   )r   s   "r   r   IndexGroupCommand.__annotate__   s$      -;	r   c                    VP                   '       d,   VP                   P                  V4      pVRJ d   R# VRJ d   R# R# )z=
Determine if pre-releases should be excluded for a package.
TF)release_controlallows_prereleases)r-   r1   ry   allow_prereleasess   &&& r   should_exclude_prerelease+IndexGroupCommand.should_exclude_prerelease   sB     """ ' 7 7 J J< X D("e+ r   c               $    V ^8  d   QhRRRRRR/# )r   r1   r   argsz	list[str]r   zIterator[None]r   )r   s   "r   r   r{      s&     !C !C !Cy !C^ !Cr   c              #    "   \        VR4      '       g   Q hVP                  '       g   VP                  '       d   Rx  R# Rp V P                  V^ \	        ^VP
                  4      R7      pV;_uu_ 4        \        WA4      pRRR4        Rx   \        T4       R#   + '       g   i     L#; i  \         d0    \        P                  R4       \        P                  RRR7        L_i ; i  \         d1    \        P                  R4       \        P                  RRR7        R# i ; i   \        T4       i   \         d0    \        P                  R4       \        P                  RRR7        i i ; i; i5i)zh
Do the pip version check if not disabled.

This overrides the default behavior of not doing the check.
r3   N)rF   rG   z6There was an error checking the latest version of pip.zSee below for errorT)exc_info)hasattrdisable_pip_version_checkr3   rB   minrG   rp   	Exceptionr   r   debugru   )r-   r1   r   rr   ra   s   &&&  r   pip_version_check#IndexGroupCommand.pip_version_check   s7     w
++++,,,0@0@0@/3
	?))Aw/ * G
 !>w!P 	CC,^<  	?NNSTLL.L>	?  CWX2TBCC,^< CWX2TBCs   &E9E9E92B0 6BB0 D+ C- E9B-	(B0 ,E9-B0 07C*'E9)C**E9-7D($E9'D((E9+E6-D98E697E30E62E33E66E9r   N)
rc   rd   re   rf   rg   r   
contextlibcontextmanagerr   ri   r   r   r   rw   rw      s(    " !C !Cr   rw   )$rg   
__future__r   r   loggingrQ   collections.abcr   	functoolsr   optparser   typingr   r   r   pip._internal.cli.base_commandr   !pip._internal.cli.command_contextr	   r   r
   pip._vendor.packaging.utilsr   rO   r   ro   r   	getLoggerrc   r   r#   r%   rp   ru   rw   r   r   r   <module>r      s    #   	 $      2 A:8?			8	$  $S- Sl:0:C!4 :Cr   