o
    LK&h4                     @   sx   d Z ddlZddlZddlZddlmZ ddlmZ ddlm	Z	 ddl
mZ G dd	 d	eZd
d Zdd Zdd ZdS )z
distutils.command.install_egg_info

Implements the Distutils 'install_egg_info' command, for installing
a package's PKG-INFO metadata.
    N)ClassVar   )dir_util)log)Commandc                   @   sb   e Zd ZU dZdZdgZeeee	e	e	f   e
d< dd Zedd Zd	d
 Zdd Zdd ZdS )install_egg_infoz)Install an .egg-info file for the packagez8Install package's PKG-INFO metadata as an .egg-info file)zinstall-dir=dzdirectory to install touser_optionsc                 C   s
   d | _ d S N)install_dirself r   a/var/www/html/venv/lib/python3.10/site-packages/setuptools/_distutils/command/install_egg_info.pyinitialize_options   s   
z#install_egg_info.initialize_optionsc                 C   sH   t t| j }t t| j }| d| dtjj dtjj	 dS )z_
        Allow basename to be overridden by child class.
        Ref pypa/distutils#2.
        -z-py.z	.egg-info)
to_filename	safe_namedistributionget_namesafe_versionget_versionsysversion_infomajorminor)r   nameversionr   r   r   basename   s   $zinstall_egg_info.basenamec                 C   s.   |  dd tj| j| j| _| jg| _d S )Ninstall_lib)r   r   )set_undefined_optionsospathjoinr   r   targetoutputsr   r   r   r   finalize_options'   s   z!install_egg_info.finalize_optionsc                 C   s   | j }tj|rtj|stj|| jd n'tj|r+| 	tj
| j fd|  ntj| js?| 	tj| jfd| j  td| | jsit|ddd}| jj| W d    d S 1 sbw   Y  d S d S )N)dry_runz	Removing z	Creating z
Writing %swzUTF-8)encoding)r%   r"   r#   isdirislinkr   remove_treer(   existsexecuteunlinkr   makedirsr   infoopenr   metadatawrite_pkg_file)r   r%   fr   r   r   run,   s   "zinstall_egg_info.runc                 C   s   | j S r
   )r&   r   r   r   r   get_outputs;   s   zinstall_egg_info.get_outputsN)__name__
__module____qualname____doc__descriptionr	   r   listtuplestr__annotations__r   propertyr   r'   r7   r8   r   r   r   r   r      s   
 
	r   c                 C   s   t dd| S )zConvert an arbitrary string to a standard distribution name

    Any runs of non-alphanumeric/. characters are replaced with a single '-'.
    [^A-Za-z0-9.]+r   )resubr   r   r   r   r   D   s   r   c                 C   s   |  dd} tdd| S )zConvert an arbitrary string to a standard version string

    Spaces become dots, and all other non-alphanumeric characters become
    dashes, with runs of multiple dashes condensed to a single dash.
     r   rC   r   )replacerD   rE   )r   r   r   r   r   L   s   r   c                 C   s   |  ddS )z|Convert a project or version name to its filename-escaped form

    Any '-' characters are currently replaced with '_'.
    r   _)rH   rF   r   r   r   r   V   s   r   )r<   r"   rD   r   typingr    r   _logr   cmdr   r   r   r   r   r   r   r   r   <module>   s    2
