§
    øyIf`  ã                  óš  — d Z ddlmZ ddlmZmZ ddlmZmZm	Z	m
Z
mZmZmZ ddlmZ ddlmZ ddlmZmZmZ dd	lmZmZ er$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$  G d„ de¦  «        Z% G d„ de¦  «        Z& G d„ de&¦  «        Z' G d„ de&¦  «        Z( G d„ de&¦  «        Z) G d„ de&¦  «        Z* G d„ deee¦  «        Z+dS )z5A tox build environment that handles Python packages.é    )Úannotations)ÚABCÚabstractmethod)ÚTYPE_CHECKINGÚAnyÚ	GeneratorÚIteratorÚListÚSequenceÚcast)ÚRequirement)ÚSkip)ÚPackageÚPackageToxEnvÚPathPackageé   )ÚNoInterpreterÚPython)ÚPath)ÚConfig)ÚEnvConfigSet)ÚToxEnvCreateArgs)Ú	RunToxEnv)Ú
PythonDepsc                  ó   — e Zd ZdZdS )ÚPythonPackagezpython package.N©Ú__name__Ú
__module__Ú__qualname__Ú__doc__© ó    úN/var/www/piapp/venv/lib/python3.11/site-packages/tox/tox_env/python/package.pyr   r      s   € € € € € ØÐÐÐr#   r   c                  ó    ‡ — e Zd Zdˆ fd„Zˆ xZS )	ÚPythonPathPackageWithDepsÚpathr   ÚdepsúSequence[Any]ÚreturnÚNonec                óZ   •— t          ¦   «                              |¬¦  «         || _        d S )N)r'   )ÚsuperÚ__init__r(   )Úselfr'   r(   Ú	__class__s      €r$   r.   z"PythonPathPackageWithDeps.__init__   s)   ø€ Ý‰Œ×Ò˜dÐÑ#Ô#Ð#Ø'+ˆŒ	ˆ	ˆ	r#   )r'   r   r(   r)   r*   r+   )r   r   r    r.   Ú__classcell__©r0   s   @r$   r&   r&      s=   ø€ € € € € ð,ð ,ð ,ð ,ð ,ð ,ð ,ð ,ð ,ð ,r#   r&   c                  ó   — e Zd ZdZdS )ÚWheelPackagezwheel package.Nr   r"   r#   r$   r4   r4   $   ó   € € € € € ØÐÐÐr#   r4   c                  ó   — e Zd ZdZdS )ÚSdistPackagezsdist package.Nr   r"   r#   r$   r7   r7   (   r5   r#   r7   c                  ó   — e Zd ZdZdS )ÚEditableLegacyPackagezlegacy editable package.Nr   r"   r#   r$   r9   r9   ,   s   € € € € € Ø"Ð"Ð"Ð"r#   r9   c                  ó   — e Zd ZdZdS )ÚEditablePackagezPEP-660 editable package.Nr   r"   r#   r$   r;   r;   0   s   € € € € € Ø#Ð#Ð#Ð#r#   r;   c                  ód   ‡ — e Zd Zdˆ fd„Zdˆ fd„Zedd„¦   «         Zdˆ fd„Zdd„Zdˆ fd„Z	ˆ xZ
S )ÚPythonPackageToxEnvÚcreate_argsr   r*   r+   c                óX   •— i | _         t          ¦   «                              |¦  «         d S ©N)Ú_wheel_build_envsr-   r.   )r/   r>   r0   s     €r$   r.   zPythonPackageToxEnv.__init__5   s)   ø€ ØACˆÔÝ‰Œ×Ò˜Ñ%Ô%Ð%Ð%Ð%r#   c                ó  •— t          ¦   «                              ¦   «          |                      |                      ¦   «         t          j        d¦  «         |                      | j        d         t          j        d¦  «         dS )zSetup the tox environment.Úrequiresr(   N)r-   Ú
_setup_envÚ_installrC   r=   r   Úconf)r/   r0   s    €r$   rD   zPythonPackageToxEnv._setup_env9   sb   ø€ å‰Œ×ÒÑÔÐØ�Š�d—m’m‘o”oÕ':Ô'CÀZÑPÔPÐPØ�Š�d”i Ô'Õ)<Ô)EÀvÑNÔNÐNÐNÐNr#   ú$tuple[Requirement, ...] | PythonDepsc                ó   — t           ‚r@   )ÚNotImplementedError)r/   s    r$   rC   zPythonPackageToxEnv.requires?   s   € å!Ð!r#   Úrun_envr   ú/Generator[tuple[str, str], PackageToxEnv, None]c              #  ó  •‡ ‡K  — t          ¦   «                              ‰¦  «        E d {V —† ‰j        d         dk    r7d‰ j        vr.‰ j                             dt          t
                   g d¬¦  «         t          ‰t          ¦  «        r‰j        d         dvs	d‰j        v rd S dˆˆ fd„}‰j                             dgt          |d¬¦  «         ‰j        d         }|‰j        d         fV —}t          t          |¦  «        ‰ j        |<   d S )NÚpackageÚskipr(   z7Name of the python dependencies as specified by PEP-440)ÚkeysÚof_typeÚdefaultÚdesc>   ÚwheelÚeditableÚwheel_build_envrF   r   Úenv_nameú
str | Noner*   Ústrc                ól  •— 	 t          t          ‰¦  «        j        }n# t          $ r d }Y nw xY w|€4d                     ‰j        d         ¦  «        }d|› �}t          |¦  «        ‚‰j        }|j        |j        k    r|j        |j        k    r‰j        j	        S ‰j        j	        › d|j        › |j        › �S )Nú,Úbase_pythonz#could not resolve base python with ú-)
r   r   r[   r   ÚjoinrF   r   Úversion_no_dotÚ
impl_lowerÚname)rF   rV   Úrun_pyÚbaseÚmsgÚdefault_pkg_pyrJ   r/   s         €€r$   Údefault_wheel_tagz?PythonPackageToxEnv.register_run_env.<locals>.default_wheel_tagT   sÎ   ø€ ðÝ�f gÑ.Ô.Ô:��øÝ ð ð ð Ø���ðøøøð ˆ~Ø—x’x ¤¨]Ô ;Ñ<Ô<�ØB¸DÐBÐB�Ý˜3‘i”i�à!Ô-ˆNàÔ-°Ô1FÒFÐFØ"Ô-°Ô1BÒBÐBà”y”~Ð%à”i”nÐQÐQ vÔ'8ÐQ¸&Ô:OÐQÐQÐQs   ƒ ž-¬-z*wheel tag to use for building applicationsÚpackage_tox_env_type)rF   r   rV   rW   r*   rX   )r-   Úregister_run_envrF   Ú
add_configr
   r   Ú
isinstancer   rX   r   r=   rA   )r/   rJ   re   Úpkg_envÚresultr0   s   ``   €r$   rg   z$PythonPackageToxEnv.register_run_envC   sY  øøøè è € Ý‘7”7×+Ò+¨GÑ4Ô4Ð4Ð4Ð4Ð4Ð4Ð4Ð4ØŒ<˜	Ô" fÒ,Ð,°¸t¼yÐ1HÐ1HØŒI× Ò ØÝ�[Ô)ØØNð	 !ñ ô ð õ ˜7¥FÑ+Ô+ð	àŒ|˜IÔ&Ð.CÐCÐCØ  G¤LÐ0Ð0àˆFð	Rð 	Rð 	Rð 	Rð 	Rð 	Rð 	Rð6 	Œ×ÒØ#Ð$ÝØ%Ø=ð	 	 ñ 	
ô 	
ð 	
ð ”,Ð0Ô1ˆØ ¤Ð-CÔ DÐDÐDÐDˆÝ*.Õ/BÀFÑ*KÔ*KˆÔ˜wÑ'Ð'Ð'r#   Úrun_confr   úIterator[PackageToxEnv]c              #  óš   K  — |d         dk    r8| j                              |d         ¦  «        }|�|j        | j        k    r
|V — d S d S d S d S )NrM   rS   rU   )rA   Úgetr`   )r/   rl   Úenvs      r$   Úchild_pkg_envsz"PythonPackageToxEnv.child_pkg_envsy   se   è è € Ø�IÔ 'Ò)Ð)ØÔ(×,Ò,¨XÐ6GÔ-HÑIÔIˆCØˆ 3¤8¨t¬yÒ#8Ð#8Ø�	�	�	�	�	ð *Ð)àˆÐ#8Ð#8r#   c                ó  •— | j                              ¦   «         D ]L}|| urF|                     | j        ¦  «        5  |                     ¦   «          d d d ¦  «         n# 1 swxY w Y   ŒMt          ¦   «                              ¦   «          d S r@   )rA   ÚvaluesÚdisplay_contextÚ_has_display_suspendedÚteardownr-   Ú	_teardown)r/   rp   r0   s     €r$   rw   zPythonPackageToxEnv._teardown   sÀ   ø€ ØÔ)×0Ò0Ñ2Ô2ð 	#ð 	#ˆCØ˜$ˆˆØ×(Ò(¨Ô)DÑEÔEð #ð #Ø—L’L‘N”N�Nð#ð #ð #ñ #ô #ð #ð #ð #ð #ð #ð #øøøð #ð #ð #ð #øå‰Œ×ÒÑÔÐÐÐs   »AÁA 	Á#A 	)r>   r   r*   r+   )r*   r+   )r*   rG   )rJ   r   r*   rK   )rl   r   r*   rm   )r   r   r    r.   rD   r   rC   rg   rq   rw   r1   r2   s   @r$   r=   r=   4   sØ   ø€ € € € € ð&ð &ð &ð &ð &ð &ðOð Oð Oð Oð Oð Oð ð"ð "ð "ñ „^ð"ð4Lð 4Lð 4Lð 4Lð 4Lð 4Lðlð ð ð ðð ð ð ð ð ð ð ð ð r#   r=   N),r!   Ú
__future__r   Úabcr   r   Útypingr   r   r   r	   r
   r   r   Úpackaging.requirementsr   Útox.tox_env.errorsr   Útox.tox_env.packager   r   r   Úapir   r   Úpathlibr   Útox.config.mainr   Útox.config.setsr   Útox.tox_env.apir   Útox.tox_env.runnerr   Úpip.req_filer   r   r&   r4   r7   r9   r;   r=   r"   r#   r$   ú<module>r…      s{  ðØ ;Ð ;à "Ð "Ð "Ð "Ð "Ð "à #Ð #Ð #Ð #Ð #Ð #Ð #Ð #Ø PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ Pà .Ð .Ð .Ð .Ð .Ð .à #Ð #Ð #Ð #Ð #Ð #Ø CÐ CÐ CÐ CÐ CÐ CÐ CÐ CÐ CÐ Cà &Ð &Ð &Ð &Ð &Ð &Ð &Ð &àð )ØÐÐÐÐÐà&Ð&Ð&Ð&Ð&Ð&Ø,Ð,Ð,Ð,Ð,Ð,Ø0Ð0Ð0Ð0Ð0Ð0Ø,Ð,Ð,Ð,Ð,Ð,à(Ð(Ð(Ð(Ð(Ð(ðð ð ð ð �Gñ ô ð ð,ð ,ð ,ð ,ð , ñ ,ô ,ð ,ðð ð ð ð Ð,ñ ô ð ðð ð ð ð Ð,ñ ô ð ð#ð #ð #ð #ð #Ð5ñ #ô #ð #ð$ð $ð $ð $ð $Ð/ñ $ô $ð $ðPð Pð Pð Pð P˜& -°ñ Pô Pð Pð Pð Pr#   