Sindbad~EG File Manager
�
(Μg�)���ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl m
Z
mZejdd��Z
d�Zd�Zd�Zdd d
�d�Zd�Zejdd
��Zejdd��Zdddd�d�ZGd�de�ZGd�de�Zd�Zd�Zejd��Zd�Zejdd��Zy)�N�)�unlink�temp_dirc#�K� |r=tj�5tjddt�d��ddd�yd��y#1swYyxYw�w)N�ignorez.+ (module|package))�warnings�catch_warnings�filterwarnings�DeprecationWarning)rs �7/usr/local/lib/python3.12/test/support/import_helper.py�_ignore_deprecated_importsr
sJ�����
�
�
$�
$�
&��#�#�H�.C�$6�
8��'�
&�
�'�
&�s�A� A�A�A�
Ac�F� tj|=y#t$rYywxYw�N)�sys�modules�KeyError)�names r�unloadrs%��
��K�K�����
��
�s�� � c�
� t|�tjD]d}tjj ||dz�}t|dz�dD],}ttjj||����.�fy)Nz.py�c)�r�)�optimization) rr�path�os�joinr� importlib�util�cache_from_source)�modname�dirname�source�opts r�forgetr$%sj���
�7�O��8�8�������g�w���7�� �v��|���C��9�>�>�3�3�F��3�M�N���c�0� tjj|�}tjjtjj
|��}tjj||dz�}tj||�|S)Nr)
rrrrrr!�abspathr�shutil�move)r"�pyc_file�up_one�
legacy_pycs r�make_legacy_pycr-5sh����~�~�/�/��7�H�
�W�W�_�_�R�W�W�_�_�V�4�
5�F������f�f�s�l�3�J�
�K�K��*�%��r%F�)�required_onc�"� t|�5 tj|�cddd�S#t$rL}tj
j
t|��r�tjt|���d}~wwxYw#1swYyxYwr)r
r�
import_module�ImportErrorr�platform�
startswith�tuple�unittest�SkipTest�str)r�
deprecatedr/�msgs rr1r1Csv���
$�J� /� .��*�*�4�0�
0� /��� .��|�|�&�&�u�[�'9�:���#�#�C��H�-�-�� .��
0� /�s&�B�-� B�AA=�=B�B�Bc���i}td�|D��}ttj�D]:}||vs|j |�s�tjj|�||<�<|S)Nc3�&K�|] }|dz���y�w)�.Nr.)�.0rs r� <genexpr>z+_save_and_remove_modules.<locals>.<genexpr>Ws����2�E�D�T�C�Z�E�s�)r5�listrrr4�pop)�names�orig_modules�prefixesr s r�_save_and_remove_modulesrEUs^���L��2�E�2�2�H�����$���e��w�1�1�(�;�$'�K�K�O�O�G�$<�L��!�%��r%c#�K� tj|rdnd� d��tjd�y#tjd�wxYw�w)Nr���r)�_imp�"_override_frozen_modules_for_tests)�enableds r�frozen_modulesrK^sC�����
�+�+��A�b�A�3�
��/�/��2���/�/��2���A�8�A�A�Ac#�K� tj|rdnd�} d��tj|�y#tj|�wxYw�w)NrrG)rH�'_override_multi_interp_extensions_check)rJ�olds r�multi_interp_extensions_checkrPlsE����
��
6�
6�G�q��
L�C�:�
��4�4�S�9���4�4�S�9�rL)r9� usefrozenc�� t|�5t|�}t|�}|h|�|�}t|�}|D]}dtj|<� t|�5 |D]
}t
|�� tj|�cddd�t|�tjj|�cddd�S#t$r=Yddd�t|�tjj|�ddd�ywxYw#1swYnxYw t|�tjj|�n/#t|�tjj|�wxYw ddd�y#1swYyxYwr)r
r@rErrrK�
__import__r2�updaterr1)r�fresh�blockedr9rQrBrCr s r�import_fresh_modulerW�sK���<
$�J� /��U����w�-���(��(��(��/��6���G�#'�C�K�K�� �� -�� �*� �#(��"�7�+�$)�!�.�.�t�4�+�*�
%�U�+��K�K���|�,�+
0� /�� #� ��
+�
%�U�+��K�K���|�,�+
0� /� ��+�*��*�
%�U�+��K�K���|�,��
%�U�+��K�K���|�,��,�+
0� /� /�sr�AE<�E�D�C�0D� E�*E<� D�D�E�*E<�D�D�D �E�+E<�,E/�/E<�<Fc�&�eZdZ dd�d�Zd�Zd�Zy)�CleanImportF)rQc�:�tjj�|_|D]c}|tjvs�tj|}|j|k7rtj|j=tj|=�et|�|_yr)rr�copy�original_modules�__name__rK�_frozen_modules)�selfrQ�module_names�module_name�modules r�__init__zCleanImport.__init__�st�� #��� 0� 0� 2���'�K��c�k�k�)����[�1��
�?�?�k�1����F�O�O�4��K�K��,�(� .�i�8��r%c�:�|jj�|Sr)r^� __enter__�r_s rrezCleanImport.__enter__�s�����&�&�(��r%c��tjj|j�|jj
|�yr)rrrTr\r^�__exit__�r_�
ignore_excs rrhzCleanImport.__exit__�s0�������4�0�0�1�%����%�%�z�2r%N�r]�
__module__�__qualname__rcrerhr.r%rrYrY�s���16�9��3r%rYc� �eZdZ d�Zd�Zd�Zy)�
DirsOnSysPathc��tjdd|_tj|_tjj |�yr)rr�original_value�original_object�extend)r_�pathss rrczDirsOnSysPath.__init__�s.��!�h�h�q�k���"�x�x���������r%c��|Srr.rfs rrezDirsOnSysPath.__enter__�s���r%c�h�|jt_|jtjddyr)rrrrrqris rrhzDirsOnSysPath.__exit__�s"���'�'����)�)�����r%Nrkr.r%rroro�s�� ��
�*r%roc�@�tjj�fSr)rrr[r.r%r�
modules_setuprx�s���;�;�����r%c�N�tjj�D��cgc]\}}|jd�r||f��}}}tjj �tjj|�tjj|�ycc}}w)Nz
encodings.)rr�itemsr4�clearrT)�
oldmodules�k�v� encodingss r�modules_cleanupr��s}��%(�K�K�$5�$5�$7�0�$7�D�A�q��L�L��.��Q��$7�I�0��K�K�����K�K���y�!��K�K���z�"��0s�B!c#�fK� t�\} d��t|�y#t|�wxYw�wr)rxr�)�saveds r�isolated_modulesr�s.�������H�U��
��������s�1�!�1�
.�1c�@�ddlm}|jdd��|�S)Nr)�mockzos.register_at_forkT)�create)r6r��patch)�funcr�s r�mock_register_at_forkr�s"���9�4�:�:�+�D�:�9�$�?�?r%c#�8K�ddlm}|xsd}t�5}|j|||�}tj
j
|d�} tjjd|�||f��tjj|�|�|tj
|<n!tj
j
|d� ddd�y#|�|tj
|<wtj
j
|d�wxYw#1swYyxYw�w)Nr)�
script_helper�spam)
�test.supportr�r�make_scriptrrrAr�insert�remove)rr"r��tempdirr�
old_modules r�ready_to_importr�#s�����*��>�6�D� ��w��(�(��$��?���[�[�_�_�T�4�0�
� ,��H�H�O�O�A�w�'���*���H�H�O�O�G�$��%�$.����D�!�������d�+�
����%�$.����D�!�������d�+��
��s5�D�4D�AC�7D�
D�8D�D�D�D)T)F)r.r.)Nr)�
contextlibrHr�importlib.utilrr(rr6r� os_helperrr�contextmanagerr
rr$r-r1rErKrPrW�objectrYrorxr�r�r�r�r.r%r�<module>r�s������ �
�
���'�������
�
O� �.��.�$����
3��
3����:��:�&7-�#(�"'�7-�t#3�&�#3�L*�F�*�2�#�$������@����,��,r%
Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists