
    Mh.                     z   d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlmZ d dlm	Z	m
Z
mZ d dlmZ d dlmZ d dlmZ  ej                    Zddej        i d	Zd
g diZdad Zd Zde_        d ZddZd Zedd            Zde_        edd            Z  G d d          Z! e!            Z!d Z"d Z#d Z$d Z%dS )    N)adapter)jsonlogsockets)get_global_debugger)absolute_path)hide_debugpy_internalsnoneT)qt
subProcesspython	pythonEnvr   )autor
   pysidepyside2pyqt4pyqt5c                      t          j        d| |           |                    dd           	 t          j        | i | d S # t
          $ r  w xY w)Nz pydevd.settrace(*{0!r}, **{1!r})notify_stdinF)r   debug
setdefaultpydevdsettrace	Exception)argskwargss     R/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/debugpy/server/api.py	_settracer   (   sk    I0$???
ne,,,((((((   s   A Ac                      t           j        rdS dt           _        t          j        d           t          j        d           t          j        #t          j        t          j        dz              dS dS )z>Starts logging to log.log_dir, if it hasn't already been done.NTzdebugpy.server)prefixzInitial environment:z/debugpy.pydevd.log)ensure_loggingensuredr   to_filedescribe_environmentlog_dirr   log_to     r   r!   r!   2   sn     !NK'((((3444
{ck$99::::: r(   Fc                    t           j        rt          d          t          j        d| f           | t
          j        u r3t          j        xj        t          t          j	                  z  c_        d S | t          _
        d S )Nzlogging has already begunzlog_to{0!r})r!   r"   RuntimeErrorr   r   sysstderrlevelssetLEVELSr%   )paths    r   r&   r&   @   sl     86777ImdW%%%sz
S__,r(   c                 l   t                       t          j        d| |f           | |} n$t          |           } |                     |           |                                 D ]\  }}|t          vr"t          d                    |                    t          t          |                   }t          |          |ur(t          d                    ||j
                            t                              |          }|'||vr#t          d                    ||                    |t          |<   d S )Nzconfigure{0!r}zUnknown property {0!r}z{0!r} must be a {1}z{0!r} must be one of: {1!r})r!   r   r   dictupdateitems_config
ValueErrorformattype__name___config_valid_valuesget)
propertiesr   kvexpected_typevalid_valuess         r   	configurerA   K   s6   IV 4555

*%%
&!!!  "" 	 	1G5<<Q??@@@WQZ((77-''299!]=STTUUU+//22$1L+@+@:AA!\RRSSS

	 	r(   c                       fd}|S )Nc                 \   	 | \  }}n# t           $ r	 | }d|f} Y nw xY w	 |                                 n# t           $ r t          d          w xY wd|cxk    rdk     sn t          d          t                       t	          j        dj        | |           t	          j        dt          j	        t                               t                              dd	          }|d	k    rt          j        |           d
t                              dd          d}t                      rOt          j                            t%          t&          j                            }|f|d<   t+          d          f|d<   	  | |fi |S # t           $ r  t	          j        dj        d           Y d S w xY w)N	127.0.0.1zexpected port or (host, port)r   i   zinvalid port numberz{0}({1!r}, **{2!r})z Initial debug configuration: {0}r   r
   Fr   T)suspendpatch_multiprocessingdont_trace_start_patternszdebugpy_launcher.pydont_trace_end_patternsz{0}() failed:infolevel)r   	__index__r6   r!   r   r   r9   rI   r   reprr5   r;   r   enable_qt_supportr	   osr0   dirnamer   debugpy__file__strreraise_exception)addressr   _portqt_modesettrace_kwargsdebugpy_pathfuncs          r   r   z _starts_debugging.<locals>.debugb   s   	*GAtt 	* 	* 	*D"D)GGG	*	>NN 	> 	> 	><===	>T!!!!E!!!!2333	'HHH3TYw5G5GHHH++dF++f$W--- %,[[t%D%D
 

 "## 	W7??=9I+J+JKKL<H?O78:=>S:T:T9VO56	P4;;F;;; 	P 	P 	P!/4=OOOOOOO	Ps'   	 5 A7	F &F+*F+r'   )r[   r   s   ` r   _starts_debuggingr\   a   s)    "P "P "P "P "PH Lr(   c           
      r   t           j        rt          d          |r3| \  }}t          j        d||           d|d<   t          d3||ddd| d S dd l}t          j        t          j
        d          d                              d	          }	 t          j        d
dd          }nE# t          $ r8}t          j        d           t          dt!          |          z             d }~ww xY w	 |                                \  }	}
t          j        d|	|
           | \  }}t$                              dt(          j                  t          j                            t0          j                  dt!          |
          d|dt!          |          d|g
}t          j        |dt          j        gz  }t          j        dt7          j        |                     d}t(          j        dk    r
|dz  }|dz  }t$                              d          }t=          |          sd }	 |                    |d||          a t          j!        dk    rt@          "                                 n*dt@          _#        tI          j%        t@          j&                   nG# t          $ r:}t          j        dd            t          d!t!          |          z             d }~ww xY w	 |'                                \  }}	 |(                    d            |)                    d"d          }	 t7          j*        |+                                                    d#                    }|,                                 n# |,                                 w xY w	 t          j-        |           n# t          j-        |           w xY wnz# t\          j/        $ r& t          j        d$d            t          d%          t          $ r:}t          j        d&d            t          d't!          |          z             d }~ww xY w	 |,                                 n# |,                                 w xY wt          j        d(t7          j        |                     d)|v r"t          t!          |d)                             	 t!          |d*         d+                   }ta          |d*         d,                   }t!          |d-         d+                   }ta          |d-         d,                   }nZ# t          $ rM}t          j        d.t7          j        |          d            t          d/t!          |          z             d }~ww xY wt          j        d0||           t          d3||dd|d1| t          j        d2||           dt           _        ||fS )4Nz8debugpy.listen() has already been called on this processz2Listening: pydevd without debugpy adapter: {0}:{1}FrF   )hostrW   wait_for_ready_to_runblock_until_connectedr       hexasciirD      )timeoutz#Can't listen for adapter endpoints:z$can't listen for adapter endpoints: z+Waiting for adapter endpoints on {0}:{1}...r   z--for-serverz--hostz--portz--server-access-tokenz	--log-dirz&debugpy.listen() spawning adapter: {0}win32i   i   r   T)	close_fdscreationflagsenvposixzError spawning debug adapter:rI   rJ   zerror spawning debug adapter: rbzutf-8z)Timed out waiting for adapter to connect:z(timed out waiting for adapter to connectz#Error retrieving adapter endpoints:z$error retrieving adapter endpoints: z$Endpoints received from adapter: {0}errorserverr^   rW   clientz%Error parsing adapter endpoints:
{0}
z!error parsing adapter endpoints: z;Adapter is accepting incoming client connections on {0}:{1})r^   rW   r_   r`   access_tokenz)pydevd is connected to adapter at {0}:{1}r'   )1listencalledr*   r   rI   r   
subprocesscodecsencoderO   urandomdecoder   create_serverr   swallow_exceptionrS   getsocknamer5   r;   r+   
executabler0   rP   r   rR   r%   r   rM   platformboolPopen_adapter_processnamewait
returncoder   add_dont_terminate_child_pidpidaccept
settimeoutmakefileloadsreadcloseclose_socketsocketre   int)rU   rY   in_process_debug_adapterr^   rW   rr   server_access_tokenendpoints_listenerexcendpoints_hostendpoints_portadapter_argsrh   
python_envsockrV   sock_io	endpointsserver_hostserver_portclient_hostclient_ports                         r   rp   rp      s6   
 } WUVVV 
dEtTRRR38/0 	
"'"'		
 	

 	
 	
 	
 	 -
2>>EEgNNN$2;2NNN N N NCDDDACHHLMMMNT#);)G)G)I)I&9	
 	
 	
 
dKK#.11GOOG,--II#
 ;"[#+66L949\;R;RSSS <7""Z'MZ'M [[--
J 	J	L)//+	  0     w'!! !%%'''' /0 +34D4HIII 	L 	L 	L!"APPPP?#c((JKKK	L	R(//11GD!+%%%--a00$ $
7<<>>+@+@+I+I J JIMMOOOOGMMOOOOO$T****$T*****~ 	K 	K 	K!;6    IJJJ 	R 	R 	R!"GvVVVVECPQQQ	R + 	  """"  """"H3TYy5I5IJJJ)3y122333K)H-f566)H-f566)H-f566)H-f566 K K K5Ii  	
 	
 	
 	

 >SIJJJK HE    #"(     H8+{SSSFM##s   B( (
C*23C%%C*.D-P= A-J
 	P= 

K5K		KP= N- *+N 9M$ N $M::N >N- N))N- ,P= -=P$*5PP$$P= =Q$A,T 
U(AU##U(c                 0    | \  }}t          d|||d| d S )N)r^   rW   client_access_tokenr'   )r   )rU   rY   ro   r^   rW   s        r   connectr   %  s.    JD$X4dXXXXXXXr(   c                   *    e Zd Zd Zed             ZdS )wait_for_clientc                     t                       t          j        d           t                      }|t	          d          t          j                    }|j        | _        t          j
        |           d S )Nzwait_for_client()z*listen() or connect() must be called first)cancel)r!   r   r   r   r*   	threadingEventr.   r   r   _wait_for_attach)selfpydbcancel_events      r   __call__zwait_for_client.__call__,  so    	%&&&"$$<KLLL (("&|444444r(   c                       t          d          )Nz&wait_for_client() must be called first)r*   r'   r(   r   r   zwait_for_client.cancel8  s    CDDDr(   N)r9   
__module____qualname__r   staticmethodr   r'   r(   r   r   r   +  sC        
5 
5 
5 E E \E E Er(   r   c                  (    t          j                    S N)r   _is_attachedr'   r(   r   is_client_connectedr   @  s       r(   c                     t                       t                      st          j        d           d S t          j        d           t                      } t          j                    j        }|E| 	                    |          | j
        k    r'|j        }|| 	                    |          | j
        k    't          ddd|           d }d S )Nz,breakpoint() ignored - debugger not attachedzbreakpoint()TF)rE   trace_only_current_threadrF   stop_at_frame)r!   r   r   rI   r   r   r+   	_getframef_backget_file_type
PYDEV_FILEr   )r   r   s     r   
breakpointr   D  s       ?@@@In   DMOO*M!}--@@%, 	!}--@@ "&##	    MMMr(   c                  j    t                       t          j        d           t          d           d S )Nzdebug_this_thread()F)rE   )r!   r   r   r   r'   r(   r   debug_this_threadr   ]  s6    I#$$$er(   c                     t                       t          j        d|            t                      }| r|                                 d S |                                 d S )Nztrace_this_thread({0!r}))r!   r   r   r   enable_tracingdisable_tracing)should_tracer   s     r   trace_this_threadr   d  sd    I(,777  D r(   r   )F)&rs   rO   r   r   r+   r   rQ   r   debugpy.commonr   r   r   _pydevd_bundle.pydevd_constantsr   pydevd_file_utilsr   debugpy.common.utilr	   local_tlsrz   r5   r:   r~   r   r!   r"   r&   rA   r\   rp   rq   r   r   r   r   r   r   r'   r(   r   <module>r      s,  
  				   



            - - - - - - - - - - ? ? ? ? ? ? + + + + + + 6 6 6 6 6 6y n	  	
A
A
A     ; ; ;       ,% % %P V$ V$ V$ V$p  Y Y Y Y
E E E E E E E E$ "/##! ! !  2      r(   