Current File : //lib/python3.9/site-packages/setuptools/command/__pycache__/egg_info.cpython-39.pyc |
a
��kh�b � @ s� d Z ddlmZ ddlmZ ddlmZ ddlm Z ddlZddlZddl
Z
ddlZddlZddl
Z
ddlZddlZddlZddlZddlmZ ddlmZ dd lmZ dd
lmZ ddlmZ ddlmZmZmZmZm Z m!Z!m"Z"m#Z# ddl$m%Z% dd
l&m'Z' ddl(m)Z) ddlm*Z* dd� Z+G dd� d�Z,G dd� de,e�Z-G dd� de�ZG dd� de�Z.dd� Z/dd� Z0dd� Z1d d!� Z2d"d#� Z3d$d%� Z4d&d'� Z5d(d)� Z6d3d+d,�Z7d-d.� Z8d/d0� Z9G d1d2� d2e*�Z:dS )4zUsetuptools.command.egg_info
Create a distribution's .egg-info directory and contents� )�FileList)�DistutilsInternalError)�convert_path)�logN)�Command)�sdist)�walk_revctrl)�edit_config)� bdist_egg)�parse_requirements� safe_name�
parse_version�safe_version�yield_lines�
EntryPoint�iter_entry_points�to_filename)�glob)� packaging)�SetuptoolsDeprecationWarningc C s� d}| � tjj�}t�tj�}d|f }t|�D �]�\}}|t|�d k}|dkrr|r`|d7 }q0|d||f 7 }q0d}t|�} || k �r�|| }
|
dkr�||d 7 }�n |
d kr�||7 }n�|
d
k�r�|d }|| k r�|| dkr�|d }|| k �r|| dk�r|d }|| k �r,|| dk�r,|d }�q|| k�rF|t�|
�7 }nR||d |� }d}
|d dk�rxd
}
|dd� }|
t�|�7 }
|d|
f 7 }|}n|t�|
�7 }|d7 }q~|s0||7 }q0|d7 }tj|tj tj
B d�S )z�
Translate a file path glob like '*.txt' in to a regular expression.
This differs from fnmatch.translate which allows wildcards to match
directory separators. It also knows about '**/' which matches any number of
directories.
� z[^%s]� �**z.*z
(?:%s+%s)*r �*�?�[�!�]�^Nz[%s]z\Z)�flags)�split�os�path�sep�re�escape� enumerate�len�compile� MULTILINE�DOTALL)r �pat�chunksr# Z
valid_char�c�chunkZ
last_chunk�iZ chunk_len�charZinner_i�innerZ
char_class� r2 �?/usr/lib/python3.9/site-packages/setuptools/command/egg_info.py�translate_pattern# sV
r4 c @ s@ e Zd ZdZdZedd� �Zdd� Zdd� Zdd � Z ee �Z
dS )
�
InfoCommonNc C s t | j�� �S �N)r �distributionZget_name��selfr2 r2 r3 �namez s zInfoCommon.namec C s t | �| j�� ��S r6 )r �
_maybe_tagr7 Zget_versionr8 r2 r2 r3 �tagged_version~ s zInfoCommon.tagged_versionc C s | j r|�| j �r|S || j S )z�
egg_info may be called more than once for a distribution,
in which case the version string already contains all tags.
)�vtags�endswith�r9 �versionr2 r2 r3 r; � s �zInfoCommon._maybe_tagc C s, d}| j r|| j 7 }| jr(|t�d�7 }|S )Nr z-%Y%m%d)� tag_build�tag_date�time�strftimer? r2 r2 r3 �tags� s
zInfoCommon.tags)�__name__�
__module__�__qualname__rA rB �propertyr: r<