a
    0f                     @   s   d dl Z d dlZd dlmZmZ d dlmZ d dlm	Z	 d dl
mZmZ e eZee eedddZee eeee eee d	d
dZeeeee ee eee dddZdS )    N)ListOptional)open_spinner) make_setuptools_bdist_wheel_args)call_subprocessformat_command_args)command_argscommand_outputreturnc                 C   s^   t | }d| d}|s"|d7 }n8t tjkr:|d7 }n |dsL|d7 }|d| 7 }|S )z'Format command information for logging.zCommand arguments: 
zCommand output: Nonez'Command output: [use --verbose to show]zCommand output:
)r   loggergetEffectiveLevelloggingDEBUGendswith)r   r	   command_desctext r   d/var/www/ai-form-bot/venv/lib/python3.9/site-packages/pip/_internal/operations/build/wheel_legacy.pyformat_command_result   s    


r   )namestemp_dirnamer   r	   r
   c                 C   s|   t | } | s4d|d}|t||7 }t| dS t| dkrjd|d|  d}|t||7 }t| tj|| d S )z>Return the path to the wheel in the temporary build directory.zLegacy build of wheel for z created no files.
N   z9 created more than one file.
Filenames (choosing first): r   r   )sortedr   r   warninglenospathjoin)r   r   r   r   r	   msgr   r   r   get_legacy_build_wheel_path    s    	

r!   )r   setup_py_path
source_dirglobal_optionsbuild_optionstempdr
   c              	   C   s   t ||||d}d|  d}t|}td| zt|d||d}	W n6 ty|   |d td|  Y W d	   d	S 0 t	|}
t
|
|| ||	d
}|W  d	   S 1 s0    Y  d	S )zBuild one unpacked package using the "legacy" build process.

    Returns path to wheel if successfully built. Otherwise, returns None.
    )r$   r%   destination_dirzBuilding wheel for z (setup.py)zDestination directory: %szpython setup.py bdist_wheel)r   cwdspinnererrorzFailed building wheel for %sN)r   r   r   r   r	   )r   r   r   debugr   	Exceptionfinishr*   r   listdirr!   )r   r"   r#   r$   r%   r&   
wheel_argsspin_messager)   outputr   
wheel_pathr   r   r   build_wheel_legacy;   s:    



r3   )r   os.pathr   typingr   r   pip._internal.cli.spinnersr   $pip._internal.utils.setuptools_buildr   pip._internal.utils.subprocessr   r   	getLogger__name__r   strr   r!   r3   r   r   r   r   <module>   s2   
