§
    øyIf_  ã                  óÆ   — d Z ddlmZ ddlZddlZddlmZ ddlmZ ddl	m
Z
mZ ddlmZ ddlmZ dd	lmZ dd
lmZ  e ed¦  «        ¦  «        dz  Z G d„ d¦  «        ZdS )z1Provides configuration values from tox.ini files.é    )ÚannotationsN)ÚConfigParser)ÚPath)ÚAnyÚClassVar)Úuser_config_dir)ÚConfigLoadArgs)Ú	IniLoader)ÚCOREÚtoxz
config.inic                  óZ   — e Zd ZU dZddddœZded<   dd
„Zdd„Zdd„Ze	dd„¦   «         Z
dS )Ú	IniConfigÚTOX_USER_CONFIG_FILEzfailed to parseÚactiveÚmissing)NTFz ClassVar[dict[bool | None, str]]ÚSTATEÚreturnÚNonec                óø  — t           j                             | j        d ¦  «        }|d u| _        t          |�|nt          ¦  «        | _        i | _        | j         	                    ¦   «         | _
        d | _        | j
        rû| j                             ¦   «         | _        	 t          d ¬¦  «        }| j                             ¦   «         5 }|                     |¦  «         d d d ¦  «         n# 1 swxY w Y   |                     t"          j        ¦  «        | _        | j        r$t)          t"          |g t"          ¬¦  «        | _        d S d S # t*          $ r(}t-          j        d||¦  «         d | _
        Y d }~d S d }~ww xY wd S )N)Úinterpolation)Ú	overridesÚcore_sectionz(failed to read config file %s because %r)ÚosÚenvironÚgetÚTOX_CONFIG_FILE_ENV_VARÚ
is_env_varr   ÚDEFAULT_CONFIG_FILEÚconfig_fileÚ_cacheÚexistsÚhas_config_fileÚiniÚabsoluter   ÚopenÚ	read_fileÚhas_sectionr   ÚkeyÚhas_tox_sectionr
   Ú	ExceptionÚloggingÚerror)Úselfr   ÚparserÚfile_handlerÚ	exceptions        úF/var/www/piapp/venv/lib/python3.11/site-packages/tox/config/cli/ini.pyÚ__init__zIniConfig.__init__   s½  € Ý”j—n’n TÔ%AÀ4ÑHÔHˆØ%¨TÐ1ˆŒÝ¨{Ð/F  ÕL_Ñ`Ô`ˆÔØ8:ˆŒØ,0Ô,<×,CÒ,CÑ,EÔ,EˆÔØ%)ˆŒàÔð 	,Ø#Ô/×8Ò8Ñ:Ô:ˆDÔð	,Ý%°DÐ9Ñ9Ô9�ØÔ%×*Ò*Ñ,Ô,ð 3°Ø×$Ò$ \Ñ2Ô2Ð2ð3ð 3ð 3ñ 3ô 3ð 3ð 3ð 3ð 3ð 3ð 3øøøð 3ð 3ð 3ð 3à'-×'9Ò'9½$¼(Ñ'CÔ'C�Ô$ØÔ'ð XÝ(­¨vÀÕRVÐWÑWÔW�D”H�H�HðXð Xøåð ,ð ,ð ,Ý”ÐHÈ+ÐW`ÑaÔaÐaØ'+�Ô$Ð$Ð$Ð$Ð$Ð$Ð$øøøøð,øøøð	,ð 	,s=   Â)E ÃC)ÃE Ã)C-Ã-E Ã0C-Ã1AE Å
E7ÅE2Å2E7r(   ÚstrÚof_typeú	type[Any]r   c                ór  — ||f}|| j         v r| j         |         }n‘	 | j        €d }nBd}t          |gt          j        d ¬¦  «        }| j                             ||d d |¬¦  «        }||f}nC# t          $ r d }Y n5t          $ r)}t          j	        d| j
        |||¦  «         d }Y d }~nd }~ww xY w|| j         |<   |S )NÚfile)ÚchainÚnameÚenv_name)r4   ÚconfÚfactoryÚargsz#%s key %s as type %r failed with %r)r    r#   r	   r   ÚprefixÚloadÚKeyErrorr*   r+   Úwarningr   )	r-   r(   r4   Ú	cache_keyÚresultÚsourcer=   Úvaluer0   s	            r1   r   zIniConfig.get-   sü   € Ø˜�Lˆ	Ø˜œÐ#Ð#Ø”[ Ô+ˆFˆFðØ”8Ð#Ø!�F�Fà#�FÝ)°°½D¼KÐRVÐWÑWÔW�DØ œHŸMšM¨#°wÀTÐSWÐ^b˜MÑcÔc�EØ" F˜]�FøøÝð ð ð Ø���Ýð ð ð Ý”Ð EÀtÔGWÐY\Ð^eÐgpÑqÔqÐqØ������øøøøðøøøð "(ˆŒ�IÑØˆs   �AA* Á*B*Á8	B*ÂB%Â%B*Úboolc                óR   — t          | j        ¦  «        ot          | j        ¦  «        S )N)rF   r"   r)   ©r-   s    r1   Ú__bool__zIniConfig.__bool__B   s#   € Ý�DÔ(Ñ)Ô)ÐH­d°4Ô3GÑ.HÔ.HÐHó    c           
     ó˜   — t           j        › dt          | j        ¦  «        ›d| j        | j                 › d| j        rdnd› d| j        › d�
S )Nzconfig file ú z (changeÚdÚ z via env var ú))r   Úlinesepr3   r   r   r"   r   r   rH   s    r1   ÚepilogzIniConfig.epilogE   s}   € õ Œzð cð c¥s¨4Ô+;Ñ'<Ô'<ð cð cÀÄÈDÔL`ÔAað cð cØ!œ_Ð4�c�c°"ðcð cØCGÔC_ðcð cð cð	
rJ   N)r   r   )r(   r3   r4   r5   r   r   )r   rF   )r   r3   )Ú__name__Ú
__module__Ú__qualname__r   r   Ú__annotations__r2   r   rI   ÚpropertyrQ   © rJ   r1   r   r      s˜   € € € € € € Ø4ÐØ5FÈhÐ_hÐ.iÐ.i€EÐiÐiÐiÑið,ð ,ð ,ð ,ð*ð ð ð ð*Ið Ið Ið Ið ð
ð 
ð 
ñ „Xð
ð 
ð 
rJ   r   )Ú__doc__Ú
__future__r   r+   r   Úconfigparserr   Úpathlibr   Útypingr   r   Úplatformdirsr   Útox.config.loader.apir	   Útox.config.loader.inir
   Útox.config.source.ini_sectionr   r   r   rW   rJ   r1   ú<module>ra      s  ðØ 7Ð 7à "Ð "Ð "Ð "Ð "Ð "à €€€Ø 	€	€	€	Ø %Ð %Ð %Ð %Ð %Ð %Ø Ð Ð Ð Ð Ð Ø  Ð  Ð  Ð  Ð  Ð  Ð  Ð  à (Ð (Ð (Ð (Ð (Ð (à 0Ð 0Ð 0Ð 0Ð 0Ð 0Ø +Ð +Ð +Ð +Ð +Ð +Ø .Ð .Ð .Ð .Ð .Ð .à�d˜?˜?¨5Ñ1Ô1Ñ2Ô2°\ÑAÐ ð7
ð 7
ð 7
ð 7
ð 7
ñ 7
ô 7
ð 7
ð 7
ð 7
rJ   