CasperSecurity

Current Path : /lib/python3/dist-packages/setuptools/__pycache__/
Upload File :
Current File : //lib/python3/dist-packages/setuptools/__pycache__/wheel.cpython-310.pyc

o

�_�a` �@s�dZddlmZddlmZddlZddlZddlZddlZddl	Z	ddl
Z
ddlZddlZddlm
Z
ddlmZddlmZddlmZe	�d	e	j�jZd
Zdd�ZGd
d�d�ZdS)zWheels support.�)�get_platform)�logN)�
parse_version)�sys_tags)�canonicalize_name)�write_requirementsz�^(?P<project_name>.+?)-(?P<version>\d.*?)
    ((-(?P<build>\d.*?))?-(?P<py_version>.+?)-(?P<abi>.+?)-(?P<platform>.+?)
    )\.whl$z8__import__('pkg_resources').declare_namespace(__name__)
cCs�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)�src_dir�dst_dir�dirpath�dirnames�	filenames�subdir�f�src�dst�n�d�r�2/usr/lib/python3/dist-packages/setuptools/wheel.py�unpacks$��	�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_NAMEr	r�basename�
ValueError�filename�	groupdict�items�setattr)�selfr&�match�k�vrrr �__init__6s�zWheel.__init__cCs&t�|j�d�|j�d�|j�d��S)z>List tags (py_version, abi, platform) supported by this wheel.�.)�	itertools�product�
py_version�split�abi�platform�r*rrr �tags>s



�z
Wheel.tagscs0tdd�t�D���t�fdd�|��D�d�S)z5Is the wheel is compatible with the current platform?css �|]}|j|j|jfVqdS�N)�interpreterr4r5��.0�trrr �	<genexpr>Hs�
�z&Wheel.is_compatible.<locals>.<genexpr>c3s�|]	}|�vrdVqdS)TNrr:��supported_tagsrr r=Js�F)�setr�nextr7r6rr>r �
is_compatibleFs�zWheel.is_compatiblecCs,tj|j|j|jdkr
dnt�d���dS)N�any)�project_name�versionr5z.egg)�
pkg_resources�DistributionrDrEr5r�egg_namer6rrr rHLs��zWheel.egg_namecCsF|��D]}t�|�}|�d�rt|��t|j��r|Sqtd��)Nz
.dist-infoz.unsupported wheel format. .dist-info not found)�namelist�	posixpath�dirname�endswithr�
startswithrDr%)r*�zf�memberrKrrr �
get_dist_infoRs

���zWheel.get_dist_infocCs>t�|j��}|�||�Wd�dS1swYdS)z"Install wheel as an egg directory.N)�zipfile�ZipFiler&�_install_as_egg)r*�destination_eggdirrNrrr �install_as_egg\s"�zWheel.install_as_eggcCs\d|j|jf}|�|�}d|}tj�|d�}|�||||�|�||�|�||�dS)Nz%s-%sz%s.data�EGG-INFO)	rDrErPr	rr
�_convert_metadata�_move_data_entries�_fix_namespace_packages)r*rTrN�
dist_basename�	dist_info�	dist_data�egg_inforrr rSas
zWheel._install_as_eggc	sT��fdd�}|d�}t|�d��}td�|kotd�kn}|s*td|��t�|���|�tj�|���tj	j
|�t�|��d��d	d
��tt
t�����������fdd��jD�}t��|�t�tj�|d
�tj�|d��tj	t�|d�d�}	tjj}
t�tj�zt|	�d�dtj�|d��Wt�|
�dSt�|
�w)NcsT��t��|���}|���d�}tj���|�Wd�S1s#wYdS)Nzutf-8)	�openrJr
�read�decode�email�parser�Parser�parsestr)�name�fp�value)r[rNrr �get_metadatams$�z-Wheel._convert_metadata.<locals>.get_metadata�WHEELz
Wheel-Versionz1.0z2.0dev0z$unsupported wheel format version: %s)�metadatacSsd|_t|�Sr8)�marker�str)�reqrrr �raw_req�sz(Wheel._convert_metadata.<locals>.raw_reqc
s2i|]}|t�fdd�t���|f��D���qS)c3s�|]	}|�vr|VqdSr8r)r;rm)�install_requiresrr r=�s���z5Wheel._convert_metadata.<locals>.<dictcomp>.<genexpr>)�sorted�map�requires)r;�extra)�distrornrr �
<dictcomp>�s���z+Wheel._convert_metadata.<locals>.<dictcomp>�METADATAzPKG-INFO)ro�extras_require)�attrsr]zrequires.txt)r�getr%r	�mkdir�
extractallrr
rFrG�
from_location�PathMetadatarrprqrr�extras�rename�
setuptools�dictr�_global_log�	threshold�
set_threshold�WARNr�get_command_obj)rNrTr[r]rh�wheel_metadata�
wheel_version�wheel_v1rw�
setup_dist�
log_thresholdr)rtr[rornrNr rWksR��


������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.�scriptsrVz.pycc3s�|]
}tj��|�VqdSr8)r	rr
)r;r�r\rr r=�s
��
�z+Wheel._move_data_entries.<locals>.<genexpr>)�data�headers�purelib�platlibN)r	rr
rrz�listdirrL�unlinkrr�filterr!)rTr\�dist_data_scripts�egg_info_scripts�entryrrr�r rX�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)
r	rr
rr^r_r3rz�write�NAMESPACE_PACKAGE_INIT)r]rT�namespace_packagesrf�mod�mod_dir�mod_initrrr rY�s&�
�
���zWheel._fix_namespace_packagesN)�__name__�
__module__�__qualname__r.r7rBrHrPrUrS�staticmethodrWrXrYrrrr r"4s


?
r")�__doc__�distutils.utilr�	distutilsrrar0r	rJ�rerQrFr�r� setuptools.extern.packaging.tagsr�!setuptools.extern.packaging.utilsr�setuptools.command.egg_infor�compile�VERBOSEr+r#r�r!r"rrrr �<module>s2���
Hacker Blog, Shell İndir, Sql İnjection, XSS Attacks, LFI Attacks, Social Hacking, Exploit Bot, Proxy Tools, Web Shell, PHP Shell, Alfa Shell İndir, Hacking Training Set, DDoS Script, Denial Of Service, Botnet, RFI Attacks, Encryption
Telegram @BIBIL_0DAY