관리-도구
편집 파일: virtualenv.cpython-39.opt-1.pyc
a ����[��f� ����������������������@���s����d�dl�Z�d�dlZd�dlZd�dlZd�dlZd�dlmZmZ�e��e �Z e�d�Ze d�dd�Ze d�dd�Ze d�d d �Zeee��d�dd�Ze d�d d�Ze d�dd�Ze d�dd�ZdS�)�����N)�List�Optionalz8include-system-site-packages\s*=\s*(?P<value>true|false))�returnc�������������������C���s���t�jtt�dt�j�kS�)znChecks if sys.base_prefix and sys.prefix match. This handles PEP 405 compliant virtual environments. �base_prefix)�sys�prefix�getattr��r ���r ����B/usr/lib/python3.9/site-packages/pip/_internal/utils/virtualenv.py�_running_under_venv���s����r���c�������������������C���s ���t�td�S�)zmChecks if sys.real_prefix is set. This handles virtual environments created with pypa's virtualenv. Zreal_prefix)�hasattrr���r ���r ���r ���r ����!_running_under_regular_virtualenv���s����r ���c�������������������C���s���t���p t��S�)zBReturn True if we're running inside a virtualenv, False otherwise.)r���r ���r ���r ���r ���r ����running_under_virtualenv���s����r���c������������������C���sh���t�j�tjd�}�z>t|�dd��}|������W��d����W�S�1�sB0����Y��W�n�tyb���Y�dS�0�dS�)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�joinr���r����open�read� splitlines�OSError)Zpyvenv_cfg_file�fr ���r ���r ����_get_pyvenv_cfg_lines$���s����0r���c������������������C���sP���t���}�|�du�rt�d��dS�|�D�]*}t�|�}|dur |�d�dkr �dS�q dS�)aZ��Check `{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. Nz�Could not access 'pyvenv.cfg' despite a virtual environment being active. Assuming global site-packages is not accessible in this environment.T�valueZfalseF)r����loggerZwarning�#_INCLUDE_SYSTEM_SITE_PACKAGES_REGEX�match�group)Z cfg_lines�liner���r ���r ���r ����_no_global_under_venv3���s����� r���c������������������C���s0���t�j�t�j�tj��}�t�j�|�d�}t�j�|�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)r���r����dirname�abspath�site�__file__r����exists)Zsite_mod_dirZno_global_site_packages_filer ���r ���r ����#_no_global_under_regular_virtualenvP���s�����r%���c�������������������C���s���t���rt��S�t��rt��S�dS�)zHReturns a boolean, whether running in venv with no system site-packages.F)r���r���r ���r%���r ���r ���r ���r ����virtualenv_no_global^���s ����r&���)Zloggingr����rer"���r����typingr���r���Z getLogger�__name__r����compiler����boolr���r ���r����strr���r���r%���r&���r ���r ���r ���r ����<module>���s ��� �