o
    wi!                     @   s   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 Zdd Zedkrndej	vrVej
dkrDd dlZeejd  Zeejjejd < n
ejd  d	 ejd < ed ejd = z	eejd
 W n	 eyh   Y nw e  dS dS )    Nc               
      s  t tj} | jd u rttjd t_}t	|j
 ddlm} ddlm}mm} ddlm}m}m} | jd urjtjdkrWtt t krLt  t dkrWtd tjtjtjfD ]
}|d uri|
  q_| jrxj jt j!O  _| j"d ur| j"_"j#dd $d	 | j%|_&| jd u rt'(t)d
d*d|_&i }	z|+| j,| j\}
}W n  t-y } z| jd u r ddt.| i}	W Y d }~nd }~ww |
|d|	d< |/ }| jd ur~z	|+|\}}W n t-y } zddt.| i}	W Y d }~nd }~ww ||d|	d< 0d| j|1|	 zF|2ddk}|3|}z1|4d  |5|| jf |6dd}z|7|8|	(d W |
  n|
  w W |9| n|9| w W n t-yn   :d Y nw d|	v r~;d td t<d  d urψ0d |1|	  fdd}z&t d}t	| t=|8|	|d W d    n	1 sw   Y  W n t-y   :d Y nw | jd u r|>d  t	|j? t	|j? |@  0d! |A  0d" d S )#Nwr   )adapter)jsonlogsockets)clientsserverssessionsposixzdebugpy.adapter)prefixz$debugpy.adapter startup environment:    hexasciierrorz%Can't listen for client connections: )hostportclientz%Can't listen for server connections: serverz<Sending endpoints info to debug server at localhost:{0}:
{1}:   wbzutf-8z-Error sending endpoints info to debug server:z#Couldn't set up endpoints; exiting.DEBUGPY_ADAPTER_ENDPOINTSz$Writing endpoints info to {0!r}:
{1}c                      sB    d  zt  W d S  ty    jd dd Y d S w )Nz%Listener ports closed; deleting {0!r}zFailed to delete {0!r}warning)level)infoosremove	Exceptionswallow_exception listener_filer   r   U/home/ubuntu/sommelier/.venv/lib/python3.10/site-packages/debugpy/adapter/__main__.pydelete_listener_filem   s   z"main.<locals>.delete_listener_file)filez%Error writing endpoints info to file:stdiozAAll debug servers disconnected; waiting for remaining sessions...z'All debug sessions have ended; exiting.)B_parse_argvsysargvr   openr   devnullstderratexitregisterclosedebugpyr   debugpy.commonr   r   r   debugpy.adapterr   r   r	   
for_servernamegetsidgetpidsetsidforkexitstdinstdout
log_stderrlevelssetLEVELSlog_dirto_filedescribe_environmentserver_access_tokenaccess_tokencodecsencodeurandomdecodeserver   r   strget_default_localhostr   reprcountcreate_client
settimeoutconnectmakefilewritedumpsclose_socketreraise_exceptionr   getenvprintClientstop_servingwait_until_disconnectedwait_until_ended)argsr+   r   r   r   r   r   r	   r%   	endpointsclient_hostclient_portexc	localhostserver_hostserver_portipv6socksock_ior#   fr   r    r"   main   s   















	


rg   c                 C   s   ddl m} | }t }|jdtdtjd |jdtd ddd |jd	t|d
dd |jdtdd |jdtdd |jdtddd |jdddd |	| dd  }|j
d u rm|jrc|d |jd urm|d |S )Nr   )r   z--for-serverPORT)typemetavarhelpz--portz;start the adapter in debugServer mode on the specified port)ri   defaultrj   rk   z--hostHOSTz;start the adapter in debugServer mode on the specified hostz--access-tokenz%access token expected from the server)ri   rk   z--server-access-tokenz#access token expected by the serverz	--log-dirDIRz/enable logging and use DIR to save adapter logsz--log-stderr
store_truezenable logging to stderr)actionrk   r   z--log-stderr requires --portz--for-server requires --port)r0   r   rJ   argparseArgumentParseradd_argumentintSUPPRESSrI   
parse_argsr   r;   r   r2   )r(   r   r   parserr[   r   r   r"   r&      sT   




r&   __main__r/   ntz/../../ )rq   r,   rD   localer   r'   rg   r&   __name__modulesr3   pathlibPathpathwindows_pathrI   parent
__import__	setlocaleLC_ALLr   r   r   r   r"   <module>   s0   }9


