ó
    Ñ]jN  ã                   ó”   • S r SSKrSSKrSSKrSSKrSSKJrJr  SSK	J
r
  / SQr " S S5      r\" 5       R                  rS	\S
\4S jrg)z}Posix-specific implementation of process utilities.

This file is only meant to be imported by process.py, not by end-users.
é    Né   )Ú	getoutputÚ	arg_split)ÚDEFAULT_ENCODING)r   r   ÚsystemÚ	check_pidc                   ó    • \ rS rSr% SrSr\\S'   Sr\\S'   Sr	Sr
\S-  \S'   \S	\S-  4S
 j5       rSS jrS\S	\S-  4S jrS\S	\4S jrSrg)ÚProcessHandleré   z7Execute subprocesses under the control of pexpect.
    gš™™™™™©?Úread_timeoutgš™™™™™É?Úterminate_timeoutNÚ_shÚreturnc                 óö   • U R                   ca  SS Kn[        R                  R	                  SS5      nUR                  U5      U l         U R                   c  [        SR                  U5      5      eU R                   $ )Nr   ÚSHELLÚshz"{}" shell not found)r   ÚpexpectÚosÚenvironÚgetÚwhichÚOSErrorÚformat)Úselfr   Ú
shell_names      ÚY/home/mande/repo/quber/.venv/lib/python3.13/site-packages/IPython/utils/_process_posix.pyr   ÚProcessHandler.sh,   s]   € à�8‰8ÑÛÜŸ™Ÿ™¨°Ó6ˆJØ—}‘} ZÓ0ˆDŒHØ�x‰xÑÜÐ4×;Ñ;¸JÓGÓHÐHà�x‰xˆó    c                 ó.   • [         R                  U l        g)z%Arguments are used for pexpect calls.N)ÚsysÚstdoutÚlogfile)r   s    r   Ú__init__ÚProcessHandler.__init__7   s   € ä—z‘zˆ�r   Úcmdc                 ó  • SSK nU R                  c   e UR                  U R                  SU/S9n[        U[        5      (       d   eUR                  SS5      $ ! [         a    [        S[        R                  SS	9   gf = f)
aÂ  Run a command and return its stdout/stderr as a string.

Parameters
----------
cmd : str
    A command to be executed in the system shell.

Returns
-------
output : str
    A string containing the combination of stdout and stderr from the
subprocess, in whatever order the subprocess originally wrote to its
file descriptors (so the order of the information in this string is the
correct order as would be seen if running the command in a terminal).
r   Nú-c©Úargsz
Ú
z^CÚ )ÚfileÚend)
r   r   ÚrunÚ
isinstanceÚstrÚreplaceÚKeyboardInterruptÚprintr    Ústderr)r   r%   r   Úress       r   r   ÚProcessHandler.getoutput;   s|   € ó  	à�w‰wÑ"Ð"Ð"ð	1Ø—+‘+˜dŸg™g¨T°3¨K�+Ð8ˆCÜ˜c¤3×'Ñ'Ð'Ð'Ø—;‘;˜v tÓ,Ð,øÜ ó 	1Ü�$œSŸZ™Z¨RÓ0Øð	1ús   •AA Á#B Á?B c                 ó¨  • SSK n[        nUR                  UR                  /nUR	                  UR                  5      nSnU R
                  c   e [        US5      (       a  UR                  U R
                  SU/S9nOUR                  U R
                  SU/S9n[        R                  R                  n UR                  X@R                  5      n	[        UR                  US R!                  US5      SS	9  U" 5         X•:X  a  O[#        UR                  5      nMf  UR/                  5         UR0                  c  UR2                  c  gUR2                  * $ UR0                  S:”  a  UR0                  S-
  * $ UR0                  $ ! [$         aÈ    WR'                  [)        S
5      5         [#        UR                  5      nUR                  X@R*                  5        [        UR                  US R!                  US5      SS	9  [        R                  R                  5         O! [$         a     Of = fUR-                  SS9   GN!! UR-                  SS9  f = ff = f)zžExecute a command in a subshell.

Parameters
----------
cmd : str
    A command to be executed in the system shell.

Returns
-------
int : child's exitstatus
r   NÚspawnbr'   r(   Tr1   r+   )r-   é   )Úforceé€   )r   r   ÚTIMEOUTÚEOFÚindexr   Úhasattrr8   Úspawnr    r!   ÚflushÚexpect_listr   r3   ÚbeforeÚdecodeÚlenr2   ÚsendlineÚchrr   Ú	terminateÚisaliveÚ
exitstatusÚsignalstatus)
r   r%   r   ÚencÚpatternsÚ	EOF_indexÚout_sizeÚchildrA   Úres_idxs
             r   r   ÚProcessHandler.systemV   s  € ó 	ô ˆð —O‘O W§[¡[Ð1ˆð —N‘N 7§;¡;Ó/ˆ	ð
 ˆØ�w‰wÑ"Ð"Ð"ð&	,ô �w ×)Ñ)ØŸ™ t§w¡w°d¸C°[˜ÐA‘àŸ™ d§g¡g°T¸3°K˜Ð@�Ü—J‘J×$Ñ$ˆEØð  ×+Ñ+¨H×6GÑ6GÓH�Ü�e—l‘l 8 9Ð-×4Ñ4°S¸)ÓDÈ"ÒMÙ”ØÓ%Øä˜uŸ|™|Ó,�ñ ð: 	�‰Œð ×ÑÑ#à×!Ñ!Ñ)ð Ø×&Ñ&Ð&Ð&Ø×Ñ˜cÓ!Ø×%Ñ%¨Ñ+Ð,Ð,Ø×ÑÐøôG !ó 	,ð �N‰Nœ3˜q›6Ô"ð
,Ü˜uŸ|™|Ó,�Ø×!Ñ! (×,BÑ,BÔCÜ�e—l‘l 8 9Ð-×4Ñ4°S¸)ÓDÈ"ÒMÜ—
‘
× Ñ Õ"øÜ$ó áðúð
 —‘ d�Ô+ø�—‘ d�Ò+úð#	,úsJ   ÁB3E? ÄE? Å?$IÆ$A5HÈH<È
H'È$H<È&H'È'H<È*IÈ<IÉI)r   r"   )r   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   ÚfloatÚ__annotations__r   r"   r   r0   Úpropertyr   r#   r   Úintr   Ú__static_attributes__© r   r   r
   r
      s†   ‡ ñð
 €L�%Óð  #Ð�uÓ"ð €Gð €Cˆˆt‰Óàð�C˜$‘Jó ó ðô"ð˜Sð  S¨4¡Zô ð6V ˜#ð V  #÷ V r   r
   Úpidr   c                 óæ   •  [         R                  " U S5        g! [         aL  nUR                  [        R                  :X  a   S nAgUR                  [        R
                  :X  a   S nAge S nAff = f)Nr   TF)r   Úkillr   ÚerrnoÚESRCHÚEPERM)r^   Úerrs     r   r   r   ·   sT   € ð
Ü
�Š��QŒð øô ó Ø�9‰9œŸ™Ó#ÜØ�Y‰Yœ%Ÿ+™+Ó%äØûðús    ‚ š
A0¤A+ÁA+Á*A+Á+A0)rW   ra   r   Ú
subprocessÚspr    Ú_process_commonr   r   ÚIPython.utils.encodingr   Ú__all__r
   r   r[   Úboolr   r]   r   r   Ú<module>rk      sU   ðñó Û 	Û Û 
÷ ?Ý 3â
;€÷R ñ R ñt 
Ó	×	 Ñ	 €ð�3ð ˜4õ r   