HEX
Server: Apache
System: Linux server2.voipitup.com.au 4.18.0-553.104.1.lve.el8.x86_64 #1 SMP Tue Feb 10 20:07:30 UTC 2026 x86_64
User: posscale (1027)
PHP: 8.2.29
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //opt/saltstack/salt/lib/python3.10/site-packages/setuptools/__pycache__/wheel.cpython-310.pyc
o

�N�g�!�@s�dZddlZddlZddlZddlZddlZddlZddlZddlZddl	m
Z
ddlZddlm
ZddlmZddlmZddlmZmZddlmZe�d	ej�jZd
Zejdd�dd
��Zdd�Zej dd��Z!Gdd�d�Z"dS)zWheels support.�N)�get_platform)�Version��sys_tags)�canonicalize_name)�write_requirements�
_egg_basename)�_unpack_zipfile_objz�^(?P<project_name>.+?)-(?P<version>\d.*?)
    ((-(?P<build>\d.*?))?-(?P<py_version>.+?)-(?P<abi>.+?)-(?P<platform>.+?)
    )\.whl$z8__import__('pkg_resources').declare_namespace(__name__)
)�maxsizecCsdd�t�D�S)NcSsh|]
}|j|j|jf�qS�)�interpreter�abi�platform��.0�trr�D/opt/saltstack/salt/lib/python3.10/site-packages/setuptools/wheel.py�	<setcomp>%sz&_get_supported_tags.<locals>.<setcomp>rrrrr�_get_supported_tags srcCs�t�|�D]Q\}}}tj�||�}|D]}tj�||�}tj�|||�}t�||�qttt|���D]"\}	}
tj�||
�}tj�|||
�}tj�	|�sUt�||�||	=q3qtj|dd�D]\}}}|rgJ�t�
|�q^dS)zDMove everything under `src_dir` to `dst_dir`, and delete the former.T)�topdownN)�os�walk�path�relpath�join�renames�reversed�list�	enumerate�exists�rmdir)Zsrc_dirZdst_dir�dirpath�dirnames�	filenames�subdir�f�src�dst�n�drrr�unpack(s$��	�r*c	cs>�ddlm}|�|j�}zdVW|�|�dS|�|�w)z*
    Temporarily disable info traces.
    r)�logN)�	distutilsr+Z
set_threshold�WARN)r+Zsavedrrr�disable_info_traces>s�r.c@sheZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	e
dd��Ze
dd��Ze
dd��Z
dS)�WheelcCsPttj�|��}|durtd|��||_|����D]
\}}t|||�qdS)Nzinvalid wheel name: %r)	�
WHEEL_NAMErr�basename�
ValueError�filename�	groupdict�items�setattr)�selfr3�match�k�vrrr�__init__Ms�zWheel.__init__cCs&t�|j�d�|j�d�|j�d��S)z>List tags (py_version, abi, platform) supported by this wheel.�.)�	itertools�productZ
py_version�splitr
r�r7rrr�tagsUs



�z
Wheel.tagscCstdd�|��D�d�S)z2Is the wheel compatible with the current platform?css�|]
}|t�vrdVqdS)TN)rrrrr�	<genexpr>_s�z&Wheel.is_compatible.<locals>.<genexpr>F)�nextrAr@rrr�
is_compatible]szWheel.is_compatiblecCs&t|j|j|jdkrdnt�d�dS)N�any)rz.egg)r�project_name�versionrrr@rrr�egg_nameas���zWheel.egg_namecCsF|��D]}t�|�}|�d�rt|��t|j��r|Sqtd��)Nz
.dist-infoz.unsupported wheel format. .dist-info not found)Znamelist�	posixpath�dirname�endswithr�
startswithrFr2)r7�zf�memberrJrrr�
get_dist_infoks
��zWheel.get_dist_infocCs>t�|j��}|�||�Wd�dS1swYdS)z"Install wheel as an egg directory.N)�zipfile�ZipFiler3�_install_as_egg)r7�destination_eggdirrMrrr�install_as_eggus"�zWheel.install_as_eggcCs\d|j|jf}|�|�}d|}tj�|d�}|�||||�|�||�|�||�dS)Nz%s-%sz%s.data�EGG-INFO)	rFrGrOrrr�_convert_metadata�_move_data_entries�_fix_namespace_packages)r7rSrMZ
dist_basename�	dist_info�	dist_data�egg_inforrrrRzs
zWheel._install_as_eggcsHddl}��fdd�}|d�}t|�d��}td�|ko#td�kn}|s.td|��t�|�tj�|���|jj	|�|�
|��d	��d
d��tt���
�������fdd
��jD�}	t��|�t�tj�|d�tj�|d��tjt�|	d�d�}
t��t|
�d�dtj�|d��Wd�dS1s�wYdS)NrcsT��t��|���}|���d�}tj���|�Wd�S1s#wYdS)Nzutf-8)	�openrIr�read�decode�email�parser�Parser�parsestr)�name�fp�value)rYrMrr�get_metadata�s$�z-Wheel._convert_metadata.<locals>.get_metadataZWHEELz
Wheel-Versionz1.0z2.0dev0z$unsupported wheel format version: %s)�metadatacSsd|_t|�S�N)Zmarker�str)�reqrrr�raw_req�sz(Wheel._convert_metadata.<locals>.raw_reqc	s.i|]}|�fdd�t���|f��D��qS)csg|]}|�vr|�qSrr)rrj)�install_requiresrr�
<listcomp>�s
�z6Wheel._convert_metadata.<locals>.<dictcomp>.<listcomp>)�map�requires)r�extra)�distrlrkrr�
<dictcomp>�s���z+Wheel._convert_metadata.<locals>.<dictcomp>ZMETADATAzPKG-INFO)rl�extras_require)Zattrsr[zrequires.txt)�
pkg_resources�
parse_version�getr2r	rrrZDistributionZ
from_locationZPathMetadatarrnro�extras�rename�
setuptools�dictr.rZget_command_obj)rMrSrYr[rtrfZwheel_metadataZ
wheel_versionZwheel_v1rsZ
setup_distr)rqrYrlrkrMrrV�sJ 

�	�����"�zWheel._convert_metadatacs�tj�|���tj��d�}tj�|�rNtj�|dd�}t�|�t�|�D]"}|�d�r8t�tj�||��q&t�tj�||�tj�||��q&t�	|�t
tjj�fdd�dD��D]}t||�q\tj���rqt�	��dSdS)z,Move data entries to their correct location.�scriptsrUz.pycc3s�|]
}tj��|�VqdSrh)rrr)rr)�rZrrrB�s
��
�z+Wheel._move_data_entries.<locals>.<genexpr>)�data�headers�purelib�platlibN)rrrr�mkdir�listdirrK�unlinkrxr �filterr*)rSrZZdist_data_scriptsZegg_info_scripts�entryr$rr|rrW�s.

�

���zWheel._move_data_entriesc	Cs�tj�|d�}tj�|�rkt|��}|����}Wd�n1s"wY|D]C}tjj|g|�d��R�}tj�|d�}tj�|�sJt�|�tj�|�sjt|d��
}|�t	�Wd�n1sewYq)dSdS)Nznamespace_packages.txtr<z__init__.py�w)
rrrrr\r]r?r��write�NAMESPACE_PACKAGE_INIT)r[rSZnamespace_packagesrd�modZmod_dirZmod_initrrrrX�s"
�
���zWheel._fix_namespace_packagesN)�__name__�
__module__�__qualname__r;rArDrHrOrTrR�staticmethodrVrWrXrrrrr/Ls



:
r/)#�__doc__r_r=�	functoolsrrI�rerP�
contextlibZdistutils.utilrryZ#setuptools.extern.packaging.versionrruZ setuptools.extern.packaging.tagsrZ!setuptools.extern.packaging.utilsrZsetuptools.command.egg_inforrZsetuptools.archive_utilr	�compile�VERBOSEr8r0r��	lru_cacherr*�contextmanagerr.r/rrrr�<module>s:��