§
    �’j'	  ã                  ó’   — d dl mZ d dlZd dlZd dlZd dlZ ej        e¦  «        Z ej	        d¦  «        Z
dd„Zdd„Zdd	„Zdd
„ZdS )é    )ÚannotationsNz8include-system-site-packages\s*=\s*(?P<value>true|false)ÚreturnÚboolc                 ó^   — t           j        t          t           dt           j        ¦  «        k    S )znChecks if sys.base_prefix and sys.prefix match.

    This handles PEP 405 compliant virtual environments.
    Úbase_prefix)ÚsysÚprefixÚgetattr© ó    úLC:\Projects\DSCons\.venv\Lib\site-packages\pip\_internal\utils\virtualenv.pyÚrunning_under_virtualenvr      s   € õ
 Œ:�¥ mµS´ZÑ@Ô@Ò@Ð@r   úlist[str] | Nonec                 ó  — t           j                             t          j        d¦  «        } 	 t          | d¬¦  «        5 }|                     ¦   «                              ¦   «         cddd¦  «         S # 1 swxY w Y   dS # t          $ r Y dS w xY w)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.cfgzutf-8)ÚencodingN)	ÚosÚpathÚjoinr   r	   ÚopenÚreadÚ
splitlinesÚOSError)Úpyvenv_cfg_fileÚfs     r   Ú_get_pyvenv_cfg_linesr      sÏ   € õ
 ”g—l’l¥3¤:¨|Ñ<Ô<€Oðõ �/¨GÐ4Ñ4Ô4ð 	)¸Ø—6’6‘8”8×&Ò&Ñ(Ô(ð	)ð 	)ð 	)ð 	)ñ 	)ô 	)ð 	)ð 	)ð 	)ð 	)ð 	)ð 	)øøøð 	)ð 	)ð 	)ð 	)ð 	)ð 	)øåð ð ð Øˆtˆtðøøøs4   ¬A= ½&A0Á#A= Á0A4Á4A= Á7A4Á8A= Á=
BÂ
Bc                 óØ   — t          ¦   «         } | €t                               d¦  «         dS | D ]:}t                               |¦  «        }|�|                     d¦  «        dk    r dS Œ;dS )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ÚvalueÚfalseF)r   ÚloggerÚwarningÚ#_INCLUDE_SYSTEM_SITE_PACKAGES_REGEXÚmatchÚgroup)Ú	cfg_linesÚliner"   s      r   Ú_no_global_under_venvr&   %   s„   € õ &Ñ'Ô'€IØÐõ 	�Šð#ñ	
ô 	
ð 	
ð
 ˆtàð ð ˆÝ3×9Ò9¸$Ñ?Ô?ˆØÐ §¢¨WÑ!5Ô!5¸Ò!@Ð!@Ø�4�4øØˆ5r   c                 ó>   — t          ¦   «         rt          ¦   «         S dS )zHReturns a boolean, whether running in venv with no system site-packages.F)r   r&   r   r   r   Úvirtualenv_no_globalr(   B   s!   € åÑ!Ô!ð 'Ý$Ñ&Ô&Ð&àˆ5r   )r   r   )r   r   )Ú
__future__r   Úloggingr   Úrer   Ú	getLoggerÚ__name__r   Úcompiler!   r   r   r&   r(   r   r   r   ú<module>r/      sÂ   ðØ "Ð "Ð "Ð "Ð "Ð "à €€€Ø 	€	€	€	Ø 	€	€	€	Ø 
€
€
€
à	ˆÔ	˜8Ñ	$Ô	$€Ø&0 b¤jØ?ñ'ô 'Ð #ð
Að Að Að Aðð ð ð ðð ð ð ð:ð ð ð ð ð r   