403Webshell
Server IP : 217.160.0.135  /  Your IP : 216.73.217.85
Web Server : Apache
System : Linux www 6.18.52-i1-ampere #1203 SMP Mon Sep 14 18:29:59 CEST 2026 aarch64
User : sws1074145052 ( 1074145052)
PHP Version : 8.3.32
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /lib/python3/dist-packages/jedi/inference/compiled/subprocess/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /lib/python3/dist-packages/jedi/inference/compiled/subprocess/__pycache__/__init__.cpython-311.pyc
�

p�{c�4����dZddlZddlZddlZddlZddlZddlZddlZddlm	Z	ddl
mZddlm
Z
mZddlmZddlmZddlmZdd	lmZmZmZdd
lmZej�ej�e��d��ZdZ d
�Z!d�Z"d�Z#d�Z$d�Z%Gd�d��Z&Gd�de&��Z'Gd�de&��Z(Gd�d��Z)Gd�d��Z*Gd�d��Z+dS)a
Makes it possible to do the compiled analysis in a subprocess. This has two
goals:

1. Making it safer - Segfaults and RuntimeErrors as well as stdout/stderr can
   be ignored and dealt with.
2. Make it possible to handle different Python versions as well as virtualenvs.
�N)�partial)�Thread)�pickle_dump�pickle_load)�debug)�memoize_method)�	functions)�DirectObjectAccess�
AccessPath�SignatureParam)�
InternalErrorz__main__.py�c��tjdkr%	tj}n#t$rd}YnwxYw||d<dt
jv|d<tj|i|��S)N�nti�
creationflags�posix�	close_fds)�os�name�
subprocess�CREATE_NO_WINDOW�AttributeError�sys�builtin_module_names�Popen)�args�kwargsrs   �M/usr/lib/python3/dist-packages/jedi/inference/compiled/subprocess/__init__.py�_GeneralizedPopenr!sy��	�w�$���	*�)�:�����	*�	*�	*�)����	*����"2����"�S�%=�=�F�;����T�,�V�,�,�,s��.�.c�`�t|jd��D]}|�|���dS)N�)�iter�readline�put)�out�queue_�lines   r�_enqueue_outputr(0s<���S�\�3�'�'�����
�
�4������r!c���		|���}|�dd��}tjd|�d��z��n#t
j$rYdSwxYw�m)NT�utf-8�replacezstderr output: %s�
)�
get_nowait�decoder�warning�rstrip�queue�Empty)�stderr_queuer's  r�_add_stderr_to_debugr45s~���	��*�*�,�,�D��;�;�w�	�2�2�D��M�-����D�0A�0A�A�B�B�B�B���{�	�	�	��E�E�	����s�AA�A+�*A+c�,�tt|��S�N)�getattrr	)rs r�
_get_functionr8As���9�d�#�#�#r!c��	|���|���n#t$rYnwxYw|���|j|j|jfD]'}	|����#t$rY�$wxYwdSr6)�kill�wait�OSError�join�stdin�stdout�stderr�close)�process�thread�streams   r�_cleanup_processrEEs���
����������������
�
�
���
�����K�K�M�M�M��=�'�.�'�.�A����	��L�L�N�N�N�N���	�	�	��D�	�����s�(+�
8�8�&A;�;
B�Bc�&�eZdZd�Zd�Zd�Zd�ZdS)�_InferenceStateProcessc�n�tj|��|_t|��|_i|_dSr6)�weakref�ref�_inference_state_weakref�id�_inference_state_id�_handles)�self�inference_states  r�__init__z_InferenceStateProcess.__init__Vs/��(/��O�(D�(D��%�#%�o�#6�#6�� ���
�
�
r!c��t|��}	|�|��S#t$rMt|���|��}t|||��}|�|��|cYSwxYwr6)rL�get_access_handle�KeyErrorr
rK�AccessHandle�set_access_handle)rO�obj�id_�access�handles     r�get_or_create_access_handlez2_InferenceStateProcess.get_or_create_access_handle[s�����g�g��	��)�)�#�.�.�.���	�	�	�'��(E�(E�(G�(G��M�M�F�!�$���4�4�F��"�"�6�*�*�*��M�M�M�		���s�&�AA=�<A=c��|j|Sr6)rN)rOrXs  rrSz(_InferenceStateProcess.get_access_handlees���}�S�!�!r!c�$�||j|j<dSr6)rNrL)rOrZs  rrVz(_InferenceStateProcess.set_access_handlehs��#)��
�f�i� � � r!N)�__name__�
__module__�__qualname__rQr[rSrV�r!rrGrGUsP���������
���"�"�"�*�*�*�*�*r!rGc��eZdZdZd�ZdS)�InferenceStateSameProcessz�
    Basically just an easy access to functions.py. It has the same API
    as InferenceStateSubprocess and does the same thing without using a subprocess.
    This is necessary for the Interpreter process.
    c�`�tt|��|�����Sr6)rr8rK�rOrs  r�__getattr__z%InferenceStateSameProcess.__getattr__rs&���}�T�*�*�D�,I�,I�,K�,K�L�L�Lr!N)r^r_r`�__doc__rfrar!rrcrcls2��������
M�M�M�M�Mr!rcc�0��eZdZ�fd�Zd�Zd�Zd�Z�xZS)�InferenceStateSubprocessc�f��t���|��d|_||_dS)NF)�superrQ�_used�_compiled_subprocess)rOrP�compiled_subprocess�	__class__s   �rrQz!InferenceStateSubprocess.__init__ws0���
������)�)�)���
�$7��!�!�!r!c�4���t|�����fd�}|S)Nc���d�_�j������||���}��|��S)NT)rr)rlrm�runrK�_convert_access_handles)rr�result�funcrOs   ��r�wrapperz5InferenceStateSubprocess.__getattr__.<locals>.wrappersU����D�J��.�2�2��-�-�/�/����	3���F��/�/��7�7�7r!)r8)rOrrvrus`  @rrfz$InferenceStateSubprocess.__getattr__|s6�����T�"�"��	8�	8�	8�	8�	8�	8��r!c�x��t|t��r)t��t|�����St|t��rt�fd�|D����St|t��r�fd�|D��St|t
��rV	��|j��}nv#t$r-|�	�����
|��Yn@wxYwt|t��r't��|j����S|S)Nc3�B�K�|]}��|��V��dSr6�rs��.0�orOs  �r�	<genexpr>zCInferenceStateSubprocess._convert_access_handles.<locals>.<genexpr>�s1�����F�F�Q��5�5�a�8�8�F�F�F�F�F�Fr!c�:��g|]}��|����Sraryrzs  �r�
<listcomp>zDInferenceStateSubprocess._convert_access_handles.<locals>.<listcomp>�s'���A�A�A��D�0�0��3�3�A�A�Ar!)
�
isinstancerrs�tuple�listrUrSrLrT�add_subprocessrVr�accesses)rOrWs` rrsz0InferenceStateSubprocess._convert_access_handles�sH����c�>�*�*�	J�!�4�#?�#?��c�
�
�#K�#K�L�L�
��U�
#�
#�	J��F�F�F�F�#�F�F�F�F�F�F�
��T�
"�
"�
	J�A�A�A�A�S�A�A�A�A�
��\�
*�
*�	J�
,��,�,�S�V�4�4�����
,�
,�
,��"�"�4�(�(�(��&�&�s�+�+�+�+�+�
,������Z�
(�
(�	J��d�:�:�3�<�H�H�I�I�I��
s�)C�4C;�:C;c�r�|jr-|jjs#|j�|j��dSdSdSr6)rlrm�
is_crashed�delete_inference_staterM�rOs r�__del__z InferenceStateSubprocess.__del__�sS���:�	W�d�7�B�	W��%�<�<�T�=U�V�V�V�V�V�	W�	W�	W�	Wr!)r^r_r`rQrfrsr��
__classcell__)ros@rririvsl�������8�8�8�8�8�
���&���$W�W�W�W�W�W�Wr!ric�`�eZdZdZdd�Zd�Zed���Zdifd�Zd�Z	d	�Z
difd
�Zd�ZdS)
�CompiledSubprocessFNc�b�||_||_tj��|_d�|_dS)Nc��dSr6rarar!r�<lambda>z-CompiledSubprocess.__init__.<locals>.<lambda>�s���r!)�_executable�	_env_vars�collections�deque�_inference_state_deletion_queue�_cleanup_callable)rO�
executable�env_varss   rrQzCompiledSubprocess.__init__�s2��%���!���/:�/@�/B�/B��,�!-�����r!c	�n�tj��}d|jj�d|j�d|j�d|�d�	S)N�<z
 _executable=z
, is_crashed=z, pid=�>)r�getpidror^r�r�)rO�pids  r�__repr__zCompiledSubprocess.__repr__�sC���i�k�k����N�#�#�#������O�O�O��C�C�	
�	
r!c	���tjd|j��tjdj}|jttj�	tj�	|����d�
d�tjdd�D����f}t|tjtjtj|j���}t!j��|_t't(|j|jf���x|_}d|_|���t3j|t6||��|_|S)	NzStart environment subprocess %s�parso�.c3�4K�|]}t|��V��dSr6)�str)r{�xs  rr}z2CompiledSubprocess._get_process.<locals>.<genexpr>�s(����:�:��S��V�V�:�:�:�:�:�:r!�)r>r?r@�env)�targetrT)r�dbgr�r�modules�__file__�
_MAIN_PATHr�path�dirnamer=�version_inforr�PIPEr�r1�Queue�
_stderr_queuerr(r@�_stderr_thread�daemon�startrI�finalizerEr�)rO�
parso_pathrrB�ts     r�_get_processzCompiledSubprocess._get_process�s*��
�	�3�T�5E�F�F�F��[��)�2�
�����G�O�O�B�G�O�O�J�7�7�8�8��H�H�:�:�S�%5�b�q�b�%9�:�:�:�:�:�	
��$���/��?��?���
�
�
��#�[�]�]���"(�"��.�$�"4�5�#
�#
�#
�	
���a����	���	�	�	�")�!1�$�2B�29�23�"5�"5����r!rac���		|j���}|�|d��n#t$rYnwxYw�Bt	|��sJ�|�t|��|||��Sr6)r��pop�_send�
IndexError�callablerL)rOrP�functionrr�inference_state_ids      rrrzCompiledSubprocess.run�s���	5�
5�%)�%I�%M�%M�%O�%O�"��
�
�-�t�4�4�4�4���
�
�
���
����	5���!�!�!�!�!��z�z�"�_�-�-�x��v�F�F�Fs�3�
A�Ac�F�|�dtjdi��S)Nra)r�r	�get_sys_pathr�s rr�zCompiledSubprocess.get_sys_path�s���z�z�$�	� 6��B�?�?�?r!c�<�d|_|���dS)NT)r�r�r�s r�_killzCompiledSubprocess._kill�s!�������� � � � � r!c
� �|jrtd|jz���||||f}	t||���jt��n9#t$r,|���td|jz���wxYw	t|���j
��\}}}n�#t$r�}		|���j�
���dd��}
n#t$r}d|z}
Yd}~nd}~wwxYw|���t!|j��td|j�d|	�d|
�d	����d}	~	wwxYwt!|j��|r
|f|_|�|S)
NzThe subprocess %s has crashed.z2The subprocess %s was killed. Maybe out of memory?r*r+z<empty/not available (%r)>zThe subprocess z has crashed (z	, stderr=z).)r�r
r�rr�r>�PICKLE_PROTOCOL�BrokenPipeErrorr�rr?�EOFErrorr@�readr.�	Exceptionr4r�r)rOr�r�rr�data�is_exception�	tracebackrt�	eof_errorr@�excs            rr�zCompiledSubprocess._send�s����?�	U�� @�4�CS� S�T�T�T�!�8�T�6�9��	4���d�/�/�1�1�7��I�I�I�I���	4�	4�	4��J�J�L�L�L�� T�"&�"2�!3�4�4�
4�	4����
	�.9�$�:K�:K�:M�:M�:T�.U�.U�+�L�)�V�V���	�	�	�
<��*�*�,�,�3�8�8�:�:�A�A�'�9�U�U�����
<�
<�
<�5��;�����������
<�����J�J�L�L�L� ��!3�4�4�4��-��$�$�$��I�I��F�F����
�����	����	�T�/�0�0�0��	�%�,�F�K��L��
sH�-A�6B
�*B9�9
E+�?D�E&�
D�D�E&�D�A	E&�&E+c�:�|j�|��dS)a0
        Currently we are not deleting inference_state instantly. They only get
        deleted once the subprocess is used again. It would probably a better
        solution to move all of this into a thread. However, the memory usage
        of a single inference_state shouldn't be that high.
        N)r��append)rOr�s  rr�z)CompiledSubprocess.delete_inference_states"��	
�,�3�3�4F�G�G�G�G�Gr!r6)
r^r_r`r�rQr�rr�rrr�r�r�r�rar!rr�r��s��������J�.�.�.�.�
�
�
�����^��>35�R�G�G�G�G�@�@�@�!�!�!�8:�"�#�#�#�#�JH�H�H�H�Hr!r�c�&�eZdZd�Zd�Zd�Zd�ZdS)�Listenerc�F�i|_tt��|_dSr6)�_inference_statesrGr��_processr�s rrQzListener.__init__s��!#���/�x�8�8��
�
�
r!c��ddlm}	|j|}n5#t$r(ddlm}|d|�����}||j|<YnwxYw|S)Nr)�InferenceState)�InterpreterEnvironment)�project�environment)�jedi.inferencer�r�rT�jedir�)rOr�r�r�rPr�s      r�_get_inference_statezListener._get_inference_state#s���1�1�1�1�1�1�
	I�"�4�5G�H�O�O���	I�	I�	I�3�3�3�3�3�3�,�n��2�2�4�4�	���O�:I�D�"�#5�6�6�6�	I�����s�
�/A�Ac���|�||i|��S|�
|j|=dS|�||��}t|��}t|��D]<\}}t	|t
��r"|j�|j��||<�=|�	��D]<\}}	t	|	t
��r"|j�|	j��||<�=||g|�Ri|��Sr6)
r�r�r��	enumerater�rUrnrSrL�items)
rOr�r�rrrP�i�arg�key�values
          r�_runz
Listener._run3s���%��8�T�,�V�,�,�,�
�
��&�'9�:�:�:�"�7�7��BT�U�U�O���:�:�D�#�D�/�/�
\�
\���3��c�<�0�0�\�-�A�S�S�TW�TZ�[�[�D��G��$�l�l�n�n�
b�
b�
��U��e�\�2�2�b�"1�"E�"W�"W�X]�X`�"a�"a�F�3�K���8�O�=�d�=�=�=�f�=�=�=r!c��tj}ttjd��t_tj}|j}|j}		t|��}n#t$rtd��YnwxYw	dd|j
|�f}n-#t$r }dtj
��|f}Yd}~nd}~wwxYwt||t����)N�wTrF)rr?�openr�devnullr>�bufferrr��exitr�r�r��
format_excrr�)rOr?r>�payloadrt�es      r�listenzListener.listenFs�������"�*�c�*�*��
��	��������	9�
�%�e�,�,�����
�
�
��Q������
����
9���i�d�i��&9�9�����
9�
9�
9��y�3�5�5�q�8�����������
9����
����8�8�8�	9s*�
A�A9�8A9�=
B�
B5�B0�0B5N)r^r_r`rQr�r�r�rar!rr�r�sP������9�9�9���� >�>�>�&9�9�9�9�9r!r�c�N�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	e
d���Zd	S)
rUc�0�||_||_||_dSr6)rY�_subprocessrL)rOrrYrXs    rrQzAccessHandle.__init___s�����%�������r!c��||_dSr6)r�)rOrs  rr�zAccessHandle.add_subprocessds��%����r!c��	|j}n'#t$rdt|j��z}YnwxYwd|jj�d|�d�S)N�#r�z of r�)rYrr�rLror^)rO�details  rr�zAccessHandle.__repr__gs\��	(��[�F�F���	(�	(�	(��3�t�w�<�<�'�F�F�F�	(�����#�~�6�6�6����?�?s�
�!.�.c��|jSr6�rLr�s r�__getstate__zAccessHandle.__getstate__ns	���w�r!c��||_dSr6r�)rO�states  r�__setstate__zAccessHandle.__setstate__qs
������r!c�|�|dvs|�d��rtd���t|j|��S)N)rLrY�_z$Something went wrong with unpickling)�
startswithrr�_workaroundres  rrfzAccessHandle.__getattr__tsC���#�#�#�t���s�';�';�#� �!G�H�H�H��t�'��.�.�.r!c��|r7t|dt��r|jj|j|g|�Ri|��S|j|g|�Ri|��S)z�
        TODO Currently we're passing slice objects around. This should not
        happen. They are also the only unhashable objects that we're passing
        around.
        r)r��slicer��get_compiled_method_returnrL�_cached_results�rOrrrs    rr�zAccessHandle._workaround{sq���	_�J�t�A�w��.�.�	_�>�4�#�>�t�w��^�t�^�^�^�W]�^�^�^�#�t�#�D�:�4�:�:�:�6�:�:�:r!c�:�|jj|j|g|�Ri|��Sr6)r�rrLrs    rrzAccessHandle._cached_results�s-��:�t��:�4�7�D�Z�4�Z�Z�Z�SY�Z�Z�Zr!N)r^r_r`rQr�r�r�r�rfr�rrrar!rrUrU^s����������
&�&�&�@�@�@�������/�/�/�;�;�;��[�[��^�[�[�[r!rU),rgr�rrr1rr�rI�	functoolsr�	threadingr�jedi._compatibilityrrr�r�
jedi.cacher�"jedi.inference.compiled.subprocessr	�jedi.inference.compiled.accessr
rr�jedi.api.exceptionsr
r�r=r�r�r�r�rr(r4r8rErGrcrir�r�rUrar!r�<module>r
s���������	�	�	�	�
�
�
�
�����������������������������8�8�8�8�8�8�8�8�������%�%�%�%�%�%�8�8�8�8�8�8�����������-�-�-�-�-�-��W�\�\�"�'�/�/�(�3�3�]�
C�
C�
���-�-�-����
	�	�	�$�$�$�
�
�
� *�*�*�*�*�*�*�*�.M�M�M�M�M� 6�M�M�M�-W�-W�-W�-W�-W�5�-W�-W�-W�`sH�sH�sH�sH�sH�sH�sH�sH�l?9�?9�?9�?9�?9�?9�?9�?9�D)[�)[�)[�)[�)[�)[�)[�)[�)[�)[r!

Youez - 2016 - github.com/yon3zu
LinuXploit