U
    cUh                     @   s`   d dl Z d dlZd dlmZ d dlmZmZ d dlmZ e 	e
Zeeeeee dddZdS )    N)Optional)BuildBackendHookCallerHookMissing)runner_with_spinner_message)namebackendmetadata_directorytempdreturnc                 C   s   |dk	st ztd| td|  d}||\ z|j||d}W nB tk
r } z$td| | W Y W 5 Q R  W dS d}~X Y nX W 5 Q R X W n" tk
r   td|  Y dS X t	j
||S )zBuild one InstallRequirement using the PEP 660 build process.

    Returns path to wheel if successfully built. Otherwise, returns None.
    NzDestination directory: %szBuilding editable for z (pyproject.toml))r   zLCannot build editable %s because the build backend does not have the %s hookzFailed building editable for %s)AssertionErrorloggerdebugr   subprocess_runnerbuild_editabler   error	Exceptionospathjoin)r   r   r   r	   runner
wheel_namee r   m/opt/bot/vods_filmes/script/venv/lib/python3.8/site-packages/pip/_internal/operations/build/wheel_editable.pybuild_wheel_editable   s.    


2r   )loggingr   typingr   pip._vendor.pyproject_hooksr   r   pip._internal.utils.subprocessr   	getLogger__name__r   strr   r   r   r   r   <module>   s   
