Sindbad~EG File Manager

Current Path : /usr/local/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/
Upload File :
Current File : //usr/local/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/virtualenv.cpython-312.pyc

�

4Μg�
����ddlZddlZddlZddlZddlZddlmZmZeje	�Z
ejd�Zde
fd�Zde
fd�Zde
fd�Zdeeefd�Zde
fd	�Zde
fd
�Zde
fd�Zy)�N)�List�Optionalz8include-system-site-packages\s*=\s*(?P<value>true|false)�returnc�b�tjttdtj�k7S)znChecks if sys.base_prefix and sys.prefix match.

    This handles PEP 405 compliant virtual environments.
    �base_prefix)�sys�prefix�getattr���I/usr/local/lib/python3.12/site-packages/pip/_internal/utils/virtualenv.py�_running_under_venvrs ��
�:�:���m�S�Z�Z�@�@�@rc�"�ttd�S)zmChecks if sys.real_prefix is set.

    This handles virtual environments created with pypa's virtualenv.
    �real_prefix)�hasattrrrrr
� _running_under_legacy_virtualenvrs���3�
�&�&rc�.�t�xs
t�S)zDTrue if we're running inside a virtual environment, False otherwise.)rrrrr
�running_under_virtualenvrs��� �F�$D�$F�Frc��tjjtjd�}	t|d��5}|j
�j�cddd�S#1swYyxYw#t$rYywxYw)z�Reads {sys.prefix}/pyvenv.cfg and returns its contents as list of lines

    Returns None, if it could not read/access the file.
    z
pyvenv.cfgzutf-8)�encodingN)	�os�path�joinrr	�open�read�
splitlines�OSError)�pyvenv_cfg_file�fs  r
�_get_pyvenv_cfg_linesr $s^��
�g�g�l�l�3�:�:�|�<�O���/�G�
4���6�6�8�&�&�(�5�
4�
4������s.�
A1�A%�	A1�%A.�*A1�.A1�1	A=�<A=c��t�}|�tjd�y|D]0}tj	|�}|��|jd�dk(s�0yy)aZCheck `{sys.prefix}/pyvenv.cfg` for system site-packages inclusion

    PEP 405 specifies that when system site-packages are not supposed to be
    visible from a virtual environment, `pyvenv.cfg` must contain the following
    line:

        include-system-site-packages = false

    Additionally, log a warning if accessing the file fails.
    z�Could not access 'pyvenv.cfg' despite a virtual environment being active. Assuming global site-packages is not accessible in this environment.T�value�falseF)r �logger�warning�#_INCLUDE_SYSTEM_SITE_PACKAGES_REGEX�match�group)�	cfg_lines�liner's   r
�_no_global_under_venvr+3sb��&�'�I���	���
#�	
�
���3�9�9�$�?�������W�!5��!@���rc��tjjtjjtj
��}tjj
|d�}tjj|�S)z�Check if "no-global-site-packages.txt" exists beside site.py

    This mirrors logic in pypa/virtualenv for determining whether system
    site-packages are visible in the virtual environment.
    zno-global-site-packages.txt)rr�dirname�abspath�site�__file__r�exists)�site_mod_dir�no_global_site_packages_files  r
�"_no_global_under_legacy_virtualenvr4PsV���7�7�?�?�2�7�7�?�?�4�=�=�#A�B�L�#%�7�7�<�<��%�$� ��7�7�>�>�6�7�7rc�T�t�r
t�St�r
t�Sy)zHReturns a boolean, whether running in venv with no system site-packages.F)rr+rr4rrr
�virtualenv_no_globalr6^s%����$�&�&�'�)�1�3�3�r)�loggingr�rer/r�typingrr�	getLogger�__name__r$�compiler&�boolrrr�strr r+r4r6rrr
�<module>r?s����	�	��
�!�	��	�	�8�	$��&0�b�j�j�?�'�#�
A�T�A�'�$�'�G�$�G�
�x��S�	�2���t��:8�D�8�
�d�
r

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists