§
    øyIfù  ã                  óÀ   — d 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 dd	lmZ dd
lmZ ddlmZ erddlmZ ddlmZ  G d„ dee¦  «        ZdS )z7A tox run environment that handles the Python language.é    )Úannotations)Úpartial)ÚTYPE_CHECKINGÚSet©Úcanonicalize_name)Ú
StrConvert)ÚHandledError)ÚSkip)Ú
PythonDeps)Ú	RunToxEnvé   )ÚPython)ÚToxEnvCreateArgs)ÚPackagec                  óœ   ‡ — e Zd Zdˆ fd„Zdˆ fd„Zedd„¦   «         Zdˆ fd
„Zedd„¦   «         Zedd„¦   «         Z	dˆ fd„Z
dd„Zdd„Zˆ xZS )Ú	PythonRunÚcreate_argsr   ÚreturnÚNonec                óJ   •— t          ¦   «                              |¦  «         d S ©N)ÚsuperÚ__init__)Úselfr   Ú	__class__s     €úM/var/www/piapp/venv/lib/python3.11/site-packages/tox/tox_env/python/runner.pyr   zPythonRun.__init__   s!   ø€ Ý‰Œ×Ò˜Ñ%Ô%Ð%Ð%Ð%ó    c           	     óN  •‡ — t          ¦   «                              ¦   «          ‰ j        d         }‰ j                             dt
          t          t
          j        |¦  «        t          d|¦  «        d¬¦  «         dˆ fd	„}‰ j                             d
gdt          |d¬¦  «         d S )NÚ	toxinidirÚdepsÚ z7Name of the python dependencies as specified by PEP-440)ÚkeysÚof_typeÚfactoryÚdefaultÚdescÚvalueÚboolr   c                ó’   •— t          ‰j        dd¦  «        dk    r+t          ¦   «                              ‰j        j        ¦  «        S | S )NÚskip_missing_interpretersÚconfig)ÚgetattrÚoptionsr	   Úto_boolr+   )r(   r   s    €r   Ú&skip_missing_interpreters_post_processzIPythonRun.register_config.<locals>.skip_missing_interpreters_post_process&   s?   ø€ Ý�t”|Ð%@À(ÑKÔKÈxÒWÐWÝ!‘|”|×+Ò+¨D¬LÔ,RÑSÔSÐSØˆLr   r+   Tz!skip running missing interpreters)r#   r&   r$   Úpost_processr'   )r(   r)   r   r)   )	r   Úregister_configÚcoreÚconfÚ
add_configr   r   r%   r)   )r   Úrootr0   r   s   `  €r   r2   zPythonRun.register_config   sÆ   øø€ Ý‰Œ×ÒÑ!Ô!Ð!ØŒy˜Ô%ˆØŒ	×ÒØÝÝ�JÔ.°Ñ5Ô5Ý˜r 4Ñ(Ô(ØJð 	ñ 	
ô 	
ð 	
ð	ð 	ð 	ð 	ð 	ð 	ð
 	Œ	×ÒØ-Ð.ØÝØ?Ø4ð 	ñ 	
ô 	
ð 	
ð 	
ð 	
r   útuple[str, ...]c                ó   — dS )N)ÚwheelÚsdistÚeditablezeditable-legacyÚskipÚexternal© ©r   s    r   Ú_package_typeszPythonRun._package_types3   s   € àRÐRr   r)   c                óü  •— dd                      d„ | j        D ¦   «         ¦  «        › d�}t          ¦   «                              ¦   «         s| j                             dg|d¦  «         dS t          | j        dd ¦  «        �| j                             dg|d	¦  «         n�| j                             d
dgddt          ¬¦  «         | j        d
         pt          | j        dd¦  «        }|r| j                             dg|d¦  «         n(| j                             dt          | j        |¬¦  «         | j        }|dk    rdS dd„}| j                             dgt          t                   t          ¦   «         d|¬¦  «         dS )Nzpackage installation mode - z | c              3  ó   K  — | ]}|V — Œd S r   r>   )Ú.0Úis     r   ú	<genexpr>z3PythonRun._register_package_conf.<locals>.<genexpr>9   s"   è è € Ð8XÐ8X¸q¸Ð8XÐ8XÐ8XÐ8XÐ8XÐ8Xr   ú Úpackager<   FÚinstall_pkgr=   Úuse_developÚ
usedevelopzuse develop mode)r#   r'   r&   r$   Údevelopr;   )r#   r$   r&   r'   Úvaluesúset[str]r   c                ó   — d„ | D ¦   «         S )Nc                ó,   — h | ]}t          |¦  «        ’ŒS r>   r   )rC   Úvs     r   ú	<setcomp>zNPythonRun._register_package_conf.<locals>._normalize_extras.<locals>.<setcomp>S   s!   € Ð9Ð9Ð9¨QÕ% aÑ(Ô(Ð9Ð9Ð9r   r>   )rL   s    r   Ú_normalize_extrasz;PythonRun._register_package_conf.<locals>._normalize_extrasP   s   € ð :Ð9°&Ð9Ñ9Ô9Ð9r   Úextrasz'extras to install of the target package)r#   r$   r&   r'   r1   T)rL   rM   r   rM   )Újoinr@   r   Ú_register_package_confr4   Úadd_constantr-   r.   r5   r)   ÚstrÚdefault_pkg_typeÚpkg_typer   Úset)r   r'   Údevelop_moderY   rR   r   s        €r   rU   z PythonRun._register_package_conf7   s¦  ø€ à[¨e¯jªjÐ8XÐ8XÀDÔDWÐ8XÑ8XÔ8XÑ.XÔ.XÐ[Ð[Ð[ˆÝ‰wŒw×-Ò-Ñ/Ô/ð 	ØŒI×"Ò" I ;°°fÑ=Ô=Ð=Ø�5Ý�4”< °Ñ5Ô5ÐAØŒI×"Ò" I ;°°jÑAÔAÐAÐAàŒI× Ò Ø# \Ð2Ø'ØÝð	 !ñ ô ð ð  œ9 ]Ô3Ð^µw¸t¼|ÈYÐX]Ñ7^Ô7^ˆLØð lØ”	×&Ò&¨	 {°D¸*ÑEÔEÐEÐEà”	×$Ò$¨)½SÈ$ÔJ_ÐfjÐ$ÑkÔkÐkà”=ˆØ�vÒÐØ�5ð	:ð 	:ð 	:ð 	:ð
 	Œ	×ÒØ�Ý�”HÝ‘E”EØ:Ø*ð 	ñ 	
ô 	
ð 	
ð ˆtr   rW   c                ó   — dS )Nr:   r>   r?   s    r   rX   zPythonRun.default_pkg_type^   s   € àˆwr   c                ó”   — | j         d         }|| j        vr1d                     | j        ¦  «        }d|› d|› �}t          |¦  «        ‚|S )NrG   z, zinvalid package config type z requested, must be one of )r4   r@   rT   r
   )r   rY   rL   Úmsgs       r   rY   zPythonRun.pkg_typeb   sY   € àœ	 )Ô,ˆØ˜4Ô.Ð.Ð.Ø—Y’Y˜tÔ2Ñ3Ô3ˆFØ^°Ð^Ð^ÐV\Ð^Ð^ˆCÝ˜sÑ#Ô#Ð#Øˆr   c                óp   •— t          ¦   «                              ¦   «          |                      ¦   «          d S r   )r   Ú
_setup_envÚ_install_deps)r   r   s    €r   r`   zPythonRun._setup_envk   s1   ø€ Ý‰Œ×ÒÑÔÐØ×ÒÑÔÐÐÐr   c                ób   — | j         d         }|                      |t          j        d¦  «         d S )Nr!   )r4   Ú_installr   Ú__name__)r   Úrequirements_files     r   ra   zPythonRun._install_depso   s/   € Ø(,¬	°&Ô(9ÐØ�ŠÐ'­Ô);¸VÑDÔDÐDÐDÐDr   úlist[Package]c                ó8  — | j         }|€J ‚|                     | j        ¦  «        5  	 |                     | j        ¦  «        }n?# t
          $ r2}|j        d         › d|j        d         › �}t          |¦  «        |‚d }~ww xY w	 d d d ¦  «         n# 1 swxY w Y   |S )Nr   z for package environment Úenv_name)Úpackage_envÚdisplay_contextÚ_has_display_suspendedÚperform_packagingr4   r   Úargs)r   ri   ÚpackagesÚ	exceptionr^   s        r   Ú_build_packageszPythonRun._build_packagess   sú   € ØÔ&ˆØÐ&Ð&Ð&Ø×(Ò(¨Ô)DÑEÔEð 	/ð 	/ð/Ø&×8Ò8¸¼ÑCÔC��øÝð /ð /ð /Ø"œ¨Ô*ÐcÐcÀ[ÔEUÐV`ÔEaÐcÐc�Ý˜3‘i”i YÐ.øøøøð/øøøð ð	/ð 	/ð 	/ñ 	/ô 	/ð 	/ð 	/ð 	/ð 	/ð 	/ð 	/øøøð 	/ð 	/ð 	/ð 	/ð ˆs4   ¦B¨AÁBÁ
A?Á-A:Á:A?Á?BÂBÂB)r   r   r   r   )r   r   )r   r7   )r   r)   )r   rW   )r   rf   )rd   Ú
__module__Ú__qualname__r   r2   Úpropertyr@   rU   rX   rY   r`   ra   rp   Ú__classcell__)r   s   @r   r   r      s(  ø€ € € € € ð&ð &ð &ð &ð &ð &ð
ð 
ð 
ð 
ð 
ð 
ð0 ðSð Sð Sñ „XðSð%ð %ð %ð %ð %ð %ðN ðð ð ñ „Xðð ðð ð ñ „Xððð ð ð ð ð ðEð Eð Eð Eð	ð 	ð 	ð 	ð 	ð 	ð 	ð 	r   r   N)Ú__doc__Ú
__future__r   Ú	functoolsr   Útypingr   r   Úpackaging.utilsr   Útox.config.loader.str_convertr	   Ú
tox.reportr
   Útox.tox_env.errorsr   Útox.tox_env.python.pip.req_filer   Útox.tox_env.runnerr   Úapir   Útox.tox_env.apir   Útox.tox_env.packager   r   r>   r   r   ú<module>r‚      s1  ðØ =Ð =à "Ð "Ð "Ð "Ð "Ð "à Ð Ð Ð Ð Ð Ø %Ð %Ð %Ð %Ð %Ð %Ð %Ð %à -Ð -Ð -Ð -Ð -Ð -à 4Ð 4Ð 4Ð 4Ð 4Ð 4Ø #Ð #Ð #Ð #Ð #Ð #Ø #Ð #Ð #Ð #Ð #Ð #Ø 6Ð 6Ð 6Ð 6Ð 6Ð 6Ø (Ð (Ð (Ð (Ð (Ð (à Ð Ð Ð Ð Ð àð ,Ø0Ð0Ð0Ð0Ð0Ð0Ø+Ð+Ð+Ð+Ð+Ð+ðeð eð eð eð e�˜	ñ eô eð eð eð er   