7i#ddlZddlZddlZddlZddlmZmZmZmZm Z m Z m Z m Z ddl mZddlmZmZddlmZddlmZmZddlmZerddlmZe e eefZd e eeefd efd Zd e e eefd efd Zd e e eefd e efd Z dde e eefdede eddde ee de e eefde eede ede ede eded efdZ!ded edfdZ"y)N) TYPE_CHECKINGAnyCallableIterableListMappingOptionalUnion)escape)SpinnerInterface open_spinner)InstallationSubprocessError)VERBOSEsubprocess_logger) HiddenText)Literalargsreturnc~g}|D]5}t|tr|j|%|j|7|S)z& Create a CommandArgs object. ) isinstancelistextendappend)r command_argsargs g/mnt/ssd/data/python-lab/ChefSystem/venv/lib/python3.12/site-packages/pip/_internal/utils/subprocess.py make_commandr sJ!#L% c4    $    $% c2djd|DS)z/ Format command arguments for display.  c3K|]G}t|trtjt |ntj|Iyw)N)rrshlexquotestr).0rs r z&format_command_args..:s< ",C!< CH%++cBRRsA A)join)rs rformat_command_argsr(1s" 88 rcd|Dcgc] }t|tr |jn|"c}Scc}w)z= Return the arguments in their raw, unredacted form. )rrsecret)rrs rreveal_command_argsr+@s,KO O3*S*5CJJ3 > OO Os%-cmd show_stdoutcwd on_returncodez"Literal["raise", "warn", "ignore"]extra_ok_returncodes extra_environ unset_environspinnerlog_failed_cmd stdout_only command_descc  |g}|g}|r!tj} tj} ntj} t } tj | k} | xr|du}| d| tjj}|r|j||D]}|j|d tjt|tjtj| stj ntj||d}g}| s|j&sJ|j(sJ|j(j+ |j&j-}|snC|j/}|j1|dz| ||r|sJ|j3` |j5|j&r|j&j+ dj7|}nq|j9\}}|j;D] }| | |j1||j;D] }| | |j1||}|j<xr|j<|v}|r)|sJ|r|j?d n|j?d |r|d k(rtA| |j<| s|nd }|rmtjBd |dditjdtEtG|dditjdtE|xsdddi||dk(r$tjHd| |j<||S|dk(r |StKd||S#t"$r}|rtj$d|| d}~wwxYw#|j&r|j&j+wwxYw)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. NzRunning command %sbackslashreplace)stdinstdoutstderrr.enverrorsz#Error %s while executing command %sT errordoneraise)command_description exit_code output_linesz%srich)extraz*[bold magenta]full command[/]: [blue]%s[/]markupz[bold magenta]cwd[/]: %sz [inherit]warnz$Command "%s" had error code %s in %signorezInvalid value: on_returncode=)&rinfologgingINFOverbosergetEffectiveLevelosenvironcopyupdatepop subprocessPopenr+PIPESTDOUT Exceptioncriticalr:r9closereadlinerstriprspinwaitr' communicate splitlines returncodefinishrr@r r(warning ValueError)r,r-r.r/r0r1r2r3r4r5r6log_subprocess used_levelshowing_subprocess use_spinnerr<nameprocexc all_outputlineoutputouterrout_lineerr_lineproc_had_errorr@s rcall_subprocessruGs6#! .?.D.D\\ +22 +<<>*L)(@WD-@K'6 **// C =! d  $//??,7:$$Z__%  $J {{{zzz  ,,.D;;=D   dTk * 4 w  $ IIK{{ !!#$##%S( %H 8 $ %#( %H 8 $ %#__T@T)TNw  NN7 # NN6 " G #/$0///AZtE !''eFD>J!))@.s34#T* ")).3-+.#T* K f $  % %6   M h &  M<].runners; ' " g $+     s'0)NN)rr$r rr)rvrys` rrunner_with_spinner_messagerzsQ"59  #Y  c]  S 12    Mr) FNrBNNNNTF)#rLrPr"rUtypingrrrrrrr r pip._vendor.rich.markupr pip._internal.cli.spinnersr r pip._internal.exceptionsrpip._internal.utils.loggingrrpip._internal.utils.miscrrr$ CommandArgsrr(r+boolintrurzrrrs    +E@B/5j)* c:{:; " eDI{$:;  PeDI{$:;PS P:A4815-1*.%)"'e tCy+% &ee #e8 e #8C=1 e GCH-. eHSM*e& 'eTNe$ee eP)1Dr