o Xaib @ 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 dZ,G dd de,eZ-G dd deZG dd deZ.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_versionsafe_versionyield_lines EntryPointiter_entry_pointsto_filename)glob) packaging)SetuptoolsDeprecationWarningc C s d}| tjj}ttj}d|f }t|D ]\}}|t|d k}|dkr8|r/|d7 }n|d||f 7 }qd}t|} || k r|| } | dkrQ||d 7 }n| d krZ||7 }nx| d kr|d }|| k rp|| dkrp|d }|| k r~|| dkr~|d }|| k r|| dkr|d }|| k r|| dks|| kr|t| 7 }n0||d | }d} |d dkrd } |dd }| t|7 } |d| f 7 }|}n|t| 7 }|d7 }|| k sB|s||7 }q|d7 }tj|tj tj B dS )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)splitospathsepreescape enumeratelencompile MULTILINEDOTALL)r patchunksr# Z valid_charcchunk last_chunkiZ chunk_lencharZinner_iinner char_class r4 /builddir/build/BUILDROOT/alt-python310-setuptools-58.3.0-4.el8.x86_64/opt/alt/python310/lib/python3.10/site-packages/setuptools/command/egg_info.pytranslate_pattern# s\ -r6 c @ s@ e Zd ZdZdZedd Zdd Zdd Zdd Z ee Z dS ) InfoCommonNc C s t | j S N)r distributionget_nameselfr4 r4 r5 namez s zInfoCommon.namec C s t | | j S r8 )r _maybe_tagr9 get_versionr; r4 r4 r5 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. )vtagsendswithr<