o
    yAfT                     @  s   d dl mZ d dlZd dlmZ g dZedg7 Zd d!d
dZd d"ddZd d!ddZ		d#d$ddZ	d d!ddZ
		d#d$ddZdejvr\eddg7 Z	d d%ddZ	d d%ddZdS dS )&    )annotationsN)Any)build_editablebuild_sdistbuild_wheelget_requires_for_build_editableget_requires_for_build_sdistget_requires_for_build_wheel__all__config_settingsdict[str, Any] | Nonereturn	list[str]c                 C      ddl m} |t }|jjS )zH
    https://peps.python.org/pep-0517/#get-requires-for-build-sdist
    r   SdistBuilder)hatchling.builders.sdistr   osgetcwdconfigdependencies)r   r   builder r   4/usr/lib/python3.10/site-packages/hatchling/build.pyr         r   sdist_directorystrc                 C  s4   ddl m} |t }tjt|j| dgdS )z7
    https://peps.python.org/pep-0517/#build-sdist
    r   r   standard	directoryversions)r   r   r   r   pathbasenamenextbuild)r   r   r   r   r   r   r   r      s   r   c                 C  r   )zH
    https://peps.python.org/pep-0517/#get-requires-for-build-wheel
    r   WheelBuilderhatchling.builders.wheelr&   r   r   r   r   r   r&   r   r   r   r   r	   %   r   r	   wheel_directorymetadata_directory
str | Nonec                 C  4   ddl m} |t }tjt|j| dgdS )z7
    https://peps.python.org/pep-0517/#build-wheel
    r   r%   r   r   r(   r&   r   r   r!   r"   r#   r$   r*   r   r+   r&   r   r   r   r   r   /      r   c                 C  r   )zK
    https://peps.python.org/pep-0660/#get-requires-for-build-editable
    r   r%   r'   r)   r   r   r   r   =   r   r   c                 C  r-   )z:
    https://peps.python.org/pep-0660/#build-editable
    r   r%   editabler   r.   r/   r   r   r   r   G   r0   r   PIP_BUILD_TRACKER#prepare_metadata_for_build_editable prepare_metadata_for_build_wheelc                 C  s   ddl m} |t }tj| |j d}tj|s"t| t	tj|dddd}|
|j|j W d   n1 sCw   Y  tj|S )	zT
        https://peps.python.org/pep-0517/#prepare-metadata-for-build-wheel
        r   r%   
.dist-infoMETADATAwutf-8encodingN)r(   r&   r   r   r!   joinartifact_project_idisdirmkdiropenwriter   core_metadata_constructormetadatar"   )r+   r   r&   r   r   fr   r   r   r4   d   s   
c                 C  s   ddl m}m} |t }tj| |j d}tj|s$t	| g }|j
js6|j
jr6|d|  ttj|dddd}||j
j|j|d	 W d
   n1 sYw   Y  tj|S )zW
        https://peps.python.org/pep-0660/#prepare-metadata-for-build-editable
        r   )EDITABLES_MINIMUM_VERSIONr&   r5   zeditables~=r6   r7   r8   r9   )extra_dependenciesN)r(   rD   r&   r   r   r!   r;   r<   r=   r>   r   Zdev_mode_dirsZdev_mode_exactappendr?   r@   rA   rB   r"   )r+   r   rD   r&   r   r   rE   rC   r   r   r   r3   x   s   
)N)r   r   r   r   )r   r   r   r   r   r   )NN)r*   r   r   r   r+   r,   r   r   )r+   r   r   r   r   r   )
__future__r   r   typingr   r
   r   r   r	   r   r   r   environr4   r3   r   r   r   r   <module>   s,    



