+
    BV-j#  ã                  ó  € ^ RI Ht ^ RIt^ RIt^ RIt^ RIt^ RIHtHt ^ RI	H
t
HtHtHt ^ RIHt ^ RIHtHt ^ RIHt ^ RIHtHt ^ R	IHt ]]]]3,          ,          tR
 R ltR R ltR R ltRR R llt R R lt!R# )é    )ÚannotationsN)ÚIterableÚMapping)ÚAnyÚCallableÚLiteralÚUnion)Úescape)ÚSpinnerInterfaceÚopen_spinner)ÚInstallationSubprocessError)ÚVERBOSEÚsubprocess_logger)Ú
HiddenTextc               ó    € V ^8„  d   QhRRRR/# )é   Úargszstr | HiddenText | CommandArgsÚreturnÚCommandArgs© )Úformats   "Úo/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/pip/_internal/utils/subprocess.pyÚ__annotate__r      s   € ÷ ñ Ð6ð ¸;ñ ó    c                 ó�   € . pV  F=  p\        V\        4      '       d   VP                  V4       K,  VP                  V4       K?  	  V# )z
Create a CommandArgs object.
)Ú
isinstanceÚlistÚextendÚappend)r   Úcommand_argsÚargs   *  r   Úmake_commandr"      sH   € ð !#€LÛˆô �cœ4× Ò Ø×Ñ Ö$ð ×Ñ Ö$ñ ð Ðr   c               ó    € V ^8„  d   QhRRRR/# )r   r   úlist[str] | CommandArgsr   Ústrr   )r   s   "r   r   r   %   s   € ÷ ñ Ð5ð ¸#ñ r   c                ó2   € RP                  R V  4       4      # )z'
Format command arguments for display.
Ú c              3  ó¸   "  € T FP  p\        V\        4      '       d    \        P                  ! \	        V4      4      M\        P                  ! V4      x € KR  	  R # 5i)N)r   r   ÚshlexÚquoter%   )Ú.0r!   s   & r   Ú	<genexpr>Ú&format_command_args.<locals>.<genexpr>.   s>   é € ð áˆCô ",¨C´×!<Ò!<Œ�Š”C˜“HÔÄ%Ç+Â+ÈcÓBRÔRÛùs   ‚AA)Újoin)r   s   &r   Úformat_command_argsr/   %   s"   € ð �8‰8ñ áóó ð r   c               ó    € V ^8„  d   QhRRRR/# )r   r   r$   r   ú	list[str]r   )r   s   "r   r   r   4   s   € ÷ Pñ PÐ5ð P¸)ñ Pr   c                ót   € V  Uu. uF'  p\        V\        4      '       d   VP                  MTNK)  	  up# u upi )z5
Return the arguments in their raw, unredacted form.
)r   r   Úsecret)r   r!   s   & r   Úreveal_command_argsr4   4   s3   € ñ KOÓOÉ$À3œ* S¬*×5Ò5ˆC�JŠJ¸3Ò>É$ÑOÐOùÒOs   …-5c               óH   € V ^8„  d   QhRRRRRRRRR	R
RRRRRRRRRRRRRR/# )r   Úcmdr$   Úshow_stdoutÚboolÚcwdú
str | NoneÚon_returncodez"Literal['raise', 'warn', 'ignore']Úextra_ok_returncodeszIterable[int] | NoneÚextra_environúMapping[str, Any] | NoneÚunset_environzIterable[str] | NoneÚspinnerzSpinnerInterface | NoneÚlog_failed_cmdzbool | NoneÚstdout_onlyÚcommand_descr%   r   r   )r   s   "r   r   r   ;   sŽ   € ÷ eñ eØ	 ðeàðeð 
ðeð 6ð	eð
 /ðeð ,ðeð (ðeð %ðeð  ðeð ðeð ðeð 	ñer   c
          
     ó	  € Vf   . pVf   . pV'       d"   \         P                  p\        P                  pM\         P                  p\
        p\         P                  ! 4       V8*  pV'       * ;'       d    VRJpV! RV
4       \        P                  P                  4       pV'       d   VP                  V4       V F  pVP                  VR4       K  	   \        P                  ! \        V 4      \        P                  \        P                  V	'       g   \        P                   M\        P                  VVRR7      p. pT	'       Eg   TP&                  '       g   Q hTP(                  '       g   Q hTP(                  P+                  4         TP&                  P-                  4       pT'       g   MVTP/                  4       pTP1                  TR,           4       T! T4       T'       g   K^  T'       g   Q hTP3                  4        Kz   TP5                  4        TP&                  '       d   TP&                  P+                  4        RP7                  T4      pMuTP9                  4       w  ppTP;                  4        F  pT! T4       K  	  TP1                  T4       TP;                  4        F  pT! T4       K  	  TP1                  T4       TpTP<                  ;'       d    TP<                  T9  pT'       d6   T'       g   Q hT'       d   TP?                  R	4       MTP?                  R
4       T'       dï   TR8X  d£   \A        T
TP<                  T'       g   TMRR7      pT'       dw   \         PB                  ! RTRR/R7       \         P                  ! R\E        \G        T 4      4      RR/R7       \         P                  ! R\E        T;'       g    R4      RR/R7       ThTR8X  d&   \         PH                  ! RT
TP<                  T4       T# TR8X  d    T# \K        RT: 24      hT#   \"         d'   pT'       d   \         P$                  ! RTT
4       h Rp?ii ; i  TP&                  '       d   TP&                  P+                  4        i i ; i)a�  
Args:
  show_stdout: if true, use INFO to log the subprocess's stderr and
    stdout streams.  Otherwise, use DEBUG.  Defaults to False.
  extra_ok_returncodes: an iterable of integer return codes that are
    acceptable, in addition to 0. Defaults to None, which means [].
  unset_environ: an iterable of environment variable names to unset
    prior to calling subprocess.Popen().
  log_failed_cmd: if false, failed commands are not logged, only raised.
  stdout_only: if true, return only stdout, else return both. When true,
    logging of both stdout and stderr occurs when the subprocess has
    terminated, else logging occurs as subprocess output is produced.
NzRunning command %sÚbackslashreplace)ÚstdinÚstdoutÚstderrr9   ÚenvÚerrorsz#Error %s while executing command %sTÚ
Ú ÚerrorÚdoneÚraise)Úcommand_descriptionÚ	exit_codeÚoutput_linesz%sÚrich)Úextraz*[bold magenta]full command[/]: [blue]%s[/]Úmarkupz[bold magenta]cwd[/]: %sz	[inherit]Úwarnz$Command "%s" had error code %s in %sÚignorezInvalid value: on_returncode=)&r   ÚinfoÚloggingÚINFOÚverboser   ÚgetEffectiveLevelÚosÚenvironÚcopyÚupdateÚpopÚ
subprocessÚPopenr4   ÚPIPEÚSTDOUTÚ	ExceptionÚcriticalrG   rF   ÚcloseÚreadlineÚrstripr   ÚspinÚwaitr.   ÚcommunicateÚ
splitlinesÚ
returncodeÚfinishr   rM   r
   r/   ÚwarningÚ
ValueError)r6   r7   r9   r;   r<   r=   r?   r@   rA   rB   rC   Úlog_subprocessÚ
used_levelÚshowing_subprocessÚuse_spinnerrI   ÚnameÚprocÚexcÚ
all_outputÚlineÚoutputÚoutÚerrÚout_lineÚerr_lineÚproc_had_errorrM   s   &&&&&&&&&&$                 r   Úcall_subprocessr‚   ;   s®  € ð6 Ò#Ø!ÐØÒØˆ÷  ä.?×.DÑ.DˆÜ—\‘\‰
ô +×2Ñ2ˆÜˆ
ô +×<Ò<Ó>À*ÑLÐð )Ô(×@Ð@¨W¸DÐ-@€KáÐ'¨Ô6Ü
�*‰*�/‰/Ó
€CßØ�
‰
�=Ô!ÛˆØ�‰��dÖñ ðÜ×Òä Ó$Ü—/‘/Ü—?‘?ß,7”:×$Ò$¼Z¿_¹_ØØØ%ô	
ˆð$ €Jßˆ;Ø�{�{ˆ{Ðˆ{Ø�z�zˆzÐˆzØ�
‰
×ÑÔàØŸ™×,Ñ,Ó.ˆDßØØ—;‘;“=ˆDØ×Ñ˜d T�kÔ*ñ ˜4Ô ç‰{ß��wØ—‘–ð	$Ø�I‰IŒKà�{�{ˆ{Ø—‘×!Ñ!Ô#Ø—‘˜Ó$‰ð ×#Ñ#Ó%‰ˆˆSàŸ™Ö(ˆHÙ˜8Ö$ñ )à×Ñ˜#ÔØŸ™Ö(ˆHÙ˜8Ö$ñ )à×Ñ˜#ÔØˆà—_‘_×TÐT¨¯©Ð@TÑ)T€NßßˆˆwßØ�N‰N˜7Õ#à�N‰N˜6Ô"ßØ˜GÔ#Ü/Ø$0ØŸ/™/ß/A™ZÀtôˆE÷
 Ü!×'Ò'¨¨e¸FÀD¸>ÕJÜ!×)Ò)Ø@ÜÔ.¨sÓ3Ó4Ø# TÐ*õô
 "×)Ò)Ø.Ü˜3×-Ð- +Ó.Ø# TÐ*õð ˆKØ˜fÔ$Ü×%Ò%Ø6ØØ—‘Øô	ð €Mð	 ˜hÔ&Øð €Mô Ð<¸]Ñ<MÐNÓOÐOØ€Møôk ô ßÜ×&Ò&Ø5ØØôð
 	ûðûð< �{�{ˆ{Ø—‘×!Ñ!Õ#ð ús%   ÃA(P ÈQ ÐQÐ)!Q
Ñ
QÑ/Rc               ó    € V ^8„  d   QhRRRR/# )r   Úmessager%   r   zCallable[..., None]r   )r   s   "r   r   r   ã   s   € ÷ ñ ¨ð Ð1Dñ r   c                ó   a € RR V 3R lllpV# )zÓProvide a subprocess_runner that shows a spinner message.

Intended for use with for BuildBackendHookCaller. Thus, the runner has
an API that matches what's expected by BuildBackendHookCaller.subprocess_runner.
c               ó(   € V ^8„  d   QhRRRRRRRR/# )	r   r6   r1   r9   r:   r=   r>   r   ÚNoner   )r   s   "r   r   Ú1runner_with_spinner_message.<locals>.__annotate__ê   s0   € ÷ ñ Øðàðð 0ðð 
ñ	r   c           
     óˆ   <€ \        S4      ;_uu_ 4       p\        V SVVVR 7       RRR4       R#   + '       g   i     R# ; i))rC   r9   r=   r@   N)r   r‚   )r6   r9   r=   r@   r„   s   &&& €r   ÚrunnerÚ+runner_with_spinner_message.<locals>.runnerê   s8   ø€ ô
 ˜'×"Ô" gÜØØ$ØØ+Øõ÷ #×"×"Ò"ús	   •0°A	)NNr   )r„   rŠ   s   f r   Úrunner_with_spinner_messagerŒ   ã   s   ø€ ÷ò ð €Mr   )	FNrO   NNNNTF)"Ú
__future__r   rY   r]   r)   rb   Úcollections.abcr   r   Útypingr   r   r   r	   Úpip._vendor.rich.markupr
   Úpip._internal.cli.spinnersr   r   Úpip._internal.exceptionsr   Úpip._internal.utils.loggingr   r   Úpip._internal.utils.miscr   r   r%   r   r"   r/   r4   r‚   rŒ   r   r   r   Ú<module>r•      s[   ðÝ "ã Û 	Û Û ß -ß 0Ó 0å *ç EÝ @ß BÝ /à�5˜˜j˜Õ)Õ*€õõ"õP÷e÷Pr   