a
lj @ s d Z ddlZddlZddlmZ ddlmZ ddlmZ ddl m
Z
ddlmZ ddl
mZ eeZeed d
dZeeeeeedd
dZdS )z;Metadata generation logic for legacy source distributions.
N)BuildEnvironment)open_spinner)InstallationError)make_setuptools_egg_info_args)call_subprocess)
TempDirectory) directoryreturnc C sR dd t | D }|s&td| t|dkr@td| t j| |d S )z.Find an .egg-info subdirectory in `directory`.c S s g | ]}| d r|qS )z .egg-info)endswith).0f r
R/usr/lib/python3.9/site-packages/pip/_internal/operations/build/metadata_legacy.py
z"_find_egg_info..z No .egg-info directory found in z-More than one .egg-info directory found in {}r )oslistdirr lenformatpathjoin)r filenamesr
r
r _find_egg_info s r ) build_env
setup_py_path
source_dirisolateddetailsr c C s t d|| tdddj}t|||d}| H td }t||d|d W d n1 s^0 Y W d n1 s|0 Y t|S )
znGenerate metadata using setup.py-based defacto mechanisms.
Returns the generated metadata directory.
z2Running setup.py (path:%s) egg_info for package %szpip-egg-infoT)kindZglobally_managed)egg_info_dirZno_user_configzPreparing metadata (setup.py)zpython setup.py egg_info)cwdZcommand_descspinnerN)loggerdebugr r r r r r )r r r r r r argsr" r
r
r generate_metadata s(
Br&