403Webshell
Server IP : 127.0.0.1  /  Your IP : 216.73.216.109
Web Server : Apache/2.4.54 (Win64) OpenSSL/1.1.1q PHP/8.1.10
System : Windows NT DESKTOP-E5T4RUN 10.0 build 19045 (Windows 10) AMD64
User : SERVERWEB ( 0)
PHP Version : 8.1.10
Disable Function : NONE
MySQL : OFF |  cURL : ON |  WGET : OFF |  Perl : OFF |  Python : OFF |  Sudo : OFF |  Pkexec : OFF
Directory :  C:/cygwin64/lib/python3.9/site-packages/setuptools/command/__pycache__/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : C:/cygwin64/lib/python3.9/site-packages/setuptools/command/__pycache__/egg_info.cpython-39.pyc
a

��e�g�@s�dZddlmZddlmZddlmZddlm	Z	ddlZddlZddl
Z
ddlZddlZddl
Z
ddlZddlZddlmZdd	lmZmZd
dlmZddlmZdd
lmZddlmZddlmZddlmZddlm Z ddl!m"Z"ddl#m$Z$ddl%m&Z&dj'e
j(�Z)dd�Z*Gdd�d�Z+Gdd�de+e�Z,Gdd�de�ZGdd�de�Z-dd �Z.d!d"�Z/d#d$�Z0ej1Z1ej2Z2d%d&�Z3d'd(�Z4d2d*d+�Z5d,d-�Z6d3d.d/�Z7Gd0d1�d1e&�Z8dS)4zUsetuptools.command.egg_info

Create a distribution's .egg-info directory and contents�)�FileList)�DistutilsInternalError)�convert_path)�logN�)�metadata)�
_entry_points�_normalization�)�_requirestxt)�Command)�sdist)�walk_revctrl)�edit_config)�	bdist_egg)�glob)�	packaging)�SetuptoolsDeprecationWarningz{}.{}cCs�d}|�tjj�}t�tj�}d|f}t|�D�]�\}}|t|�dk}|dkrr|r`|d7}q0|d||f7}q0d}t|�}	||	k�r�||}
|
dkr�||d7}�n|
d	kr�||7}n�|
d
k�r�|d}||	kr�||dkr�|d}||	k�r||dk�r|d}||	k�r,||dk�r,|d}�q||	k�rF|t�|
�7}nR||d|�}d}
|ddk�rxd
}
|dd�}|
t�|�7}
|d|
f7}|}n|t�|
�7}|d7}q~|s0||7}q0|d7}tj|tj	tj
Bd�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]r
�**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�r/�?/usr/lib/python3.9/site-packages/setuptools/command/egg_info.py�translate_pattern%sV







r1c@sdeZdZdZdZedd��Zdd�Zdd�Ze	e
d�d	d
�Ze	d�dd
�Ze	d�dd�Z
ee
�ZdS)�
InfoCommonNcCst�|j���S�N)r	�	safe_name�distributionZget_name��selfr/r/r0�name|szInfoCommon.namecCs|�|j���}t�|�Sr3)�
_maybe_tagr5Zget_versionr	�safe_version)r7Ztaggedr/r/r0�tagged_version�szInfoCommon.tagged_versioncCs|jr|�|�r|S||jS)z�
        egg_info may be called more than once for a distribution,
        in which case the version string already contains all tags.
        )�vtags�_already_tagged�r7�versionr/r/r0r9�s���zInfoCommon._maybe_tag)r?�returncCs|�|j�p|�|���Sr3)�endswithr<�
_safe_tagsr>r/r/r0r=�szInfoCommon._already_tagged)r@c	CsLzt�d|j���dd�WStjjyFt�|j�dd��YS0dS)N�0r
� �.)r	r:r<rr?ZInvalidVersionr4�replacer6r/r/r0rB�szInfoCommon._safe_tagscCs,d}|jr||j7}|jr(|t�d�7}|S)Nrz%Y%m%d)�	tag_build�tag_date�time�strftimer>r/r/r0�tags�s
zInfoCommon.tags)�__name__�
__module__�__qualname__rGrH�propertyr8r;r9�str�boolr=rBrKr<r/r/r/r0r2xs
r2c@s�eZdZdZgd�ZdgZddiZdd�Zedd��Z	e	j
d	d��Z	d
d�Zdd
�Ze
dfdd�Zddd�Zdd�Zdd�Zdd�Zdd�ZdS)�egg_infoz+create a distribution's .egg-info directory))z	egg-base=�ezLdirectory containing .egg-info directories (default: top of the source tree))�tag-date�dz0Add date stamp (e.g. 20050528) to version number)z
tag-build=�bz-Specify explicit tag to add to version number)�no-date�Dz"Don't include date stamp [default]rTrWcCs"d|_d|_d|_d|_d|_dS)NF)�egg_base�egg_namerR�egg_version�ignore_egg_info_in_manifestr6r/r/r0�initialize_options�s
zegg_info.initialize_optionscCsdSr3r/r6r/r/r0�tag_svn_revision�szegg_info.tag_svn_revisioncCsdSr3r/)r7�valuer/r/r0r^�scCs0t��}|��|d<d|d<t|t|d��dS)z�
        Materialize the value of date into the
        build tag. Install build keys in a deterministic order
        to avoid arbitrary reordering on subsequent builds.
        rGrrH)rRN)�collections�OrderedDictrKr�dict)r7�filenamerRr/r/r0�save_version_info�szegg_info.save_version_infoc
Csd|j|_|��|_tj�|j�}z6t|tjj�}|r8dnd}tj�	||j|jf�Wn>t
y�}z&tj�
d|j|jf�|�WYd}~n
d}~00|jdur�|jj}|p�i�dtj�|_|�d�t�|j�d|_|jtjkr�tj�|j|j�|_|j|jj_|jj}t|dd��p$t|dd�}|du�r`||j��k�r`|j|_tj�|j�|_d|j_dS)	Nz%s==%sz%s===%sz2Invalid distribution name or version syntax: %s-%srrY�	.egg-info�keyr8) r8rZr;r[rr?ZVersion�
isinstanceZrequirementsZRequirement�
ValueError�	distutils�errorsZDistutilsOptionErrorrYr5Zpackage_dir�getr�curdirZensure_dirnamer	�filename_componentrRr�joinrZ
_patched_dist�getattr�lowerZ_versionZ_parsed_version)r7Zparsed_versionZ
is_version�specrS�dirs�pdrfr/r/r0�finalize_options�s:

���

zegg_info.finalize_optionsNcCst|j|j||�S)�0Compute filename of the output egg. Private API.)�
_egg_basenamerZr[)r7�
py_version�platformr/r/r0�_get_egg_basenameszegg_info._get_egg_basenameFcCsL|r|�|||�n4tj�|�rH|dur>|s>t�d||�dS|�|�dS)a�Write `data` to `filename` or delete if empty

        If `data` is non-empty, this routine is the same as ``write_file()``.
        If `data` is empty but not ``None``, this is the same as calling
        ``delete_file(filename)`.  If `data` is ``None``, then this is a no-op
        unless `filename` exists, in which case a warning is issued about the
        orphaned file (if `force` is false), or deleted (if `force` is true).
        Nz$%s not set in setup(), but %s exists)�
write_filerr�existsr�warn�delete_file)r7�whatrc�data�forcer/r/r0�write_or_delete_files	zegg_info.write_or_delete_filecCs>t�d||�|�d�}|js:t|d�}|�|�|��dS)z�Write `data` to `filename` (if not a dry run) after announcing it

        `what` is used in a log message to identify what is being written
        to the file.
        zwriting %s to %s�utf-8�wbN)r�info�encode�dry_run�open�write�close)r7r~rcr�fr/r/r0rzs


zegg_info.write_filecCs t�d|�|jst�|�dS)z8Delete `filename` (if not a dry run) after announcing itzdeleting %sN)rr�r�r�unlink)r7rcr/r/r0r}+szegg_info.delete_filec
Cs�|�|j�zt�|jd�Wn@ty^}z(d|j�d�}tj�|�|�WYd}~n
d}~00tj	dd�D](}|�
�}|||jtj�
|j|j��qltj�
|jd�}tj�|�r�|�|�|��dS)Nz'Cannot update time stamp of directory '�'zegg_info.writers)�groupznative_libs.txt)ZmkpathrRr�utime�OSErrorrirjZDistutilsFileErrorr�entry_points�loadr8rrnr{r}�find_sources)r7rS�msgZep�writer�nlr/r/r0�run1s$
zegg_info.runcCs<tj�|jd�}t|j�}|j|_||_|�	�|j
|_
dS)z"Generate SOURCES.txt manifest filezSOURCES.txtN)rrrnrR�manifest_makerr5r\�ignore_egg_info_dir�manifestr��filelist)r7Zmanifest_filenameZmmr/r/r0r�Cs
zegg_info.find_sources)F)rLrMrN�descriptionZuser_optionsZboolean_optionsZnegative_optr]rOr^�setterrdrt�PY_MAJORryr�rzr}r�r�r/r/r/r0rR�s$�



,

rRcs�eZdZd!�fdd�	Zdd�Zdd�Zd	d
�Zdd�Zd
d�Zdd�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd �Z�ZS)"rNFcst��||�||_dSr3)�super�__init__r�)r7r|�debug_printr���	__class__r/r0r�PszFileList.__init__c	Cs|�|�\}}}}|j|j|j|jt�|j|�t�|j|�|j	|j
d�}dddddddd	d�}z||}Wn,ty�d
|�d|��}	t|	�d�Yn0|�
d�}
|d
vr�|g}|
r�|fnd}||}|�d�|g|
r�|gng|��|D] }
||
�s�tj||
g|�R�q�dS)N)�include�excludezglobal-includezglobal-excludezrecursive-includezrecursive-exclude�graft�prunez%warning: no files found matching '%s'z9warning: no previously-included files found matching '%s'z>warning: no files found matching '%s' anywhere in distributionzRwarning: no previously-included files matching '%s' found anywhere in distributionz:warning: no files found matching '%s' under directory '%s'zNwarning: no previously-included files matching '%s' found under directory '%s'z+warning: no directories found matching '%s'z6no previously-included directories found matching '%s'z$Invalid MANIFEST.in: unknown action z in z
recursive->r�r�r/rD)Z_parse_template_liner�r��global_include�global_exclude�	functools�partial�recursive_include�recursive_excluder�r��KeyErrorr�
startswithr�rnrr|)r7�line�action�patterns�dirZdir_patternZ
action_mapZlog_mapZprocess_actionr�Zaction_is_recursiveZextra_log_argsZlog_tmpl�patternr/r/r0�process_template_lineTsV����
��zFileList.process_template_linecCsRd}tt|j�ddd�D]2}||j|�r|�d|j|�|j|=d}q|S)z�
        Remove all files from the file list that match the predicate.
        Return True if any matching files were removed
        Fr
���z
 removing T)�ranger$�filesr�)r7�	predicate�foundr,r/r/r0�
_remove_files�szFileList._remove_filescCs$dd�t|�D�}|�|�t|�S)z#Include files that match 'pattern'.cSsg|]}tj�|�s|�qSr/�rr�isdir��.0r�r/r/r0�
<listcomp>��z$FileList.include.<locals>.<listcomp>�r�extendrQ�r7r�r�r/r/r0r��s
zFileList.includecCst|�}|�|j�S)z#Exclude files that match 'pattern'.)r1r��match�r7r�r�r/r/r0r��szFileList.excludecCs8tj�|d|�}dd�t|dd�D�}|�|�t|�S)zN
        Include all files anywhere in 'dir/' that match the pattern.
        rcSsg|]}tj�|�s|�qSr/r�r�r/r/r0r��r�z.FileList.recursive_include.<locals>.<listcomp>T)�	recursive)rrrnrr�rQ)r7r�r�Zfull_patternr�r/r/r0r��s
zFileList.recursive_includecCs ttj�|d|��}|�|j�S)zM
        Exclude any file anywhere in 'dir/' that match the pattern.
        r�r1rrrnr�r�)r7r�r�r�r/r/r0r��szFileList.recursive_excludecCs$dd�t|�D�}|�|�t|�S)zInclude all files from 'dir/'.cSs"g|]}tj�|�D]}|�qqSr/)rir��findall)r�Z	match_dir�itemr/r/r0r��s�z"FileList.graft.<locals>.<listcomp>r�)r7r�r�r/r/r0r��s
�
zFileList.graftcCsttj�|d��}|�|j�S)zFilter out files from 'dir/'.rr�)r7r�r�r/r/r0r��szFileList.prunecsJ|jdur|��ttj�d|����fdd�|jD�}|�|�t|�S)z�
        Include all files anywhere in the current directory that match the
        pattern. This is very inefficient on large file trees.
        Nrcsg|]}��|�r|�qSr/�r�r�r�r/r0r��r�z+FileList.global_include.<locals>.<listcomp>)Zallfilesr�r1rrrnr�rQr�r/r�r0r��s

zFileList.global_includecCsttj�d|��}|�|j�S)zD
        Exclude all files anywhere that match the pattern.
        rr�r�r/r/r0r��szFileList.global_excludecCs8|�d�r|dd�}t|�}|�|�r4|j�|�dS)N�
r�)rAr�
_safe_pathr��append)r7r�rr/r/r0r��s


zFileList.appendcCs|j�t|j|��dSr3)r�r��filterr�)r7�pathsr/r/r0r��szFileList.extendcCstt|j|j��|_dS)z�
        Replace self.files with only safe paths

        Because some owners of FileList manipulate the underlying
        ``files`` attribute directly, this method must be called to
        repair those paths.
        N)�listr�r�r�r6r/r/r0�_repair�szFileList._repairc	Cs�d}t�|�}|dur(t�d|�dSt�|d�}|durNt�||d�dSzBd|vp^d|v}|jrp|rpWdStj�|�s�tj�|�r�WdSWn$t	y�t�||t
���Yn0dS)Nz!'%s' not %s encodable -- skippingz''%s' in unexpected encoding -- skippingFr�res	.egg-infoT)�
unicode_utils�filesys_decoderr|Z
try_encoder�rrr{�UnicodeEncodeError�sys�getfilesystemencoding)r7rZenc_warnZu_pathZ	utf8_pathZis_egg_infor/r/r0r��s"


zFileList._safe_path)NNF)rLrMrNr�r�r�r�r�r�r�r�r�r�r�r�r�r�r��
__classcell__r/r/r�r0rMsF
	

rc@steZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Z	e
dd��Zdd�Zdd�Z
dd�Zdd�Zdd�ZdS)r�zMANIFEST.incCs"d|_d|_d|_d|_d|_dS)Nr
F)Zuse_defaultsr�Z
manifest_onlyZforce_manifestr�r6r/r/r0r]s
z!manifest_maker.initialize_optionscCsdSr3r/r6r/r/r0rtszmanifest_maker.finalize_optionscCszt|jd�|_tj�|j�s$|��|��tj�|j	�rB|�
�|��|��|�
�|j��|j��|��dS)N)r�)rr�r�rrr{r��write_manifest�add_defaults�templateZ
read_template�add_license_files�_add_referenced_files�prune_file_list�sortZremove_duplicatesr6r/r/r0r�"s

zmanifest_maker.runcCst�|�}|�tjd�S)N�/)r�r�rFrr )r7rr/r/r0�_manifest_normalize0s
z"manifest_maker._manifest_normalizecsB�j���fdd��jjD�}d�j}��t�j|f|�dS)zo
        Write the file list in 'self.filelist' to the manifest file
        named by 'self.manifest'.
        csg|]}��|��qSr/)r�r�r6r/r0r�<r�z1manifest_maker.write_manifest.<locals>.<listcomp>zwriting manifest file '%s'N)r�r�r�r�Zexecuterz)r7r�r�r/r6r0r�4s

zmanifest_maker.write_manifestcCs|�|�st�||�dSr3)�_should_suppress_warningr
r|)r7r�r/r/r0r|@s
zmanifest_maker.warncCst�d|�S)z;
        suppress missing-file warnings from sdist
        zstandard file .*not found)r!r�)r�r/r/r0r�Dsz'manifest_maker._should_suppress_warningcCs�t�|�|j�|j�|j�|j�tt��}|rB|j�|�nt	j
�|j�rX|��t	j
�d�rp|j�d�|�
d�}|j�|j�dS)Nzsetup.pyrR)r
r�r�r�r�r�r�rr�rrr{Z
read_manifest�get_finalized_commandr�rR)r7ZrcfilesZei_cmdr/r/r0r�Ks


zmanifest_maker.add_defaultscCs4|jjjpg}|D]}t�d|�q|j�|�dS)Nzadding license file '%s')r5r�
license_filesrr�r�r�)r7r�Zlfr/r/r0r�]sz manifest_maker.add_license_filescCs4t|jdg�}|D]}t�d|�q|j�|�dS)zGAdd files referenced by the config (e.g. `file:` directive) to filelistZ_referenced_filesz%adding file referenced by config '%s'N)ror5r�debugr�r�)r7Z
referencedZrfr/r/r0r�csz$manifest_maker._add_referenced_filescCsZ|�d�}|j��}|j�|j�|j�|�t�tj	�}|jj
d|d|dd�dS)N�buildz(^|z)(RCS|CVS|\.svn)r
)Zis_regex)r�r5Zget_fullnamer�r�Z
build_baser!r"rr Zexclude_pattern)r7r��base_dirr r/r/r0r�ks

�zmanifest_maker.prune_file_listcCs*t|d�r|��Stjdddd�|��S)a0
        The parent class implementation of this method
        (``sdist``) will try to include data files, which
        might cause recursion problems when
        ``include_package_data=True``.

        Therefore, avoid triggering any attempt of
        analyzing/building the manifest again.
        �get_data_files_without_manifestz@`build_py` command does not inherit from setuptools' `build_py`.z�
            Custom 'build_py' does not implement 'get_data_files_without_manifest'.
            Please extend command classes from setuptools instead of distutils.
            z!https://peps.python.org/pep-0632/)Zsee_url)�hasattrr�r�emitZget_data_files)r7Zbuild_pyr/r/r0�_safe_data_filesus

�	zmanifest_maker._safe_data_filesN)rLrMrNr�r]rtr�r�r�r|�staticmethodr�r�r�r�r�r�r/r/r/r0r�s

r�cCsLd�|�}|�d�}t|d��}|�|�Wd�n1s>0YdS)z{Create a file with the specified name and write 'contents' (a
    sequence of strings without line terminators) to it.
    �
r�r�N)rnr�r�r�)rc�contentsr�r/r/r0rz�s

rzc	Cs�t�d|�|js�|jj}|j|j|_}|j|j|_}z|�	|j
�W|||_|_n|||_|_0t|jdd�}t�
|j
|�dS)Nz
writing %sZzip_safe)rr�r�r5rr[r?rZr8�write_pkg_inforRrorZwrite_safety_flag)�cmd�basenamercrZoldverZoldname�safer/r/r0r��s r�cCsdS)aj
    Unused: left to avoid errors when updating (from source) from <= 67.8.
    Old installations have a .dist-info directory with the entry-point
    ``depends.txt = setuptools.command.egg_info:warn_depends_obsolete``.
    This may trigger errors when running the first egg_info in build_meta.
    TODO: Remove this function in a version sufficiently > 68.
    Nr/�r�r�rcr/r/r0�warn_depends_obsolete�sr�cCs:t�dd�|j��D��}|�d|d�t|��d�dS)NcSsg|]}|�dd�d�qS)rEr
r)r)r��kr/r/r0r��sz(write_toplevel_names.<locals>.<listcomp>ztop-level namesr�)rb�fromkeysr5Ziter_distribution_namesrzrn�sorted)r�r�rcZpkgsr/r/r0�write_toplevel_names�s
�r�cCst|||d�dS)NT)�	write_argr�r/r/r0�
overwrite_arg�sr�FcCsHtj�|�d}t|j|d�}|dur4d�|�d}|�||||�dS)Nrr�)rr�splitextror5rnr�)r�r�rcr��argnamer_r/r/r0r��s
r�cCs,t�|jj�}t�|�}|�d||d�dS)Nzentry pointsT)rr�r5r�Zrenderr�)r�r�rcZepsZdefnr/r/r0�
write_entries�s
r�cCsBt�|�}t�|�}|�d|�d|p&t��}|r>|d|��7}|S)ru�-z-py)r	rmr�)rZr[rwrxr8r?Zeggr/r/r0rv�s

rvc@seZdZdZdS)�EggInfoDeprecationWarningz?Deprecated behavior warning for EggInfo, bypassing suppression.N)rLrMrN�__doc__r/r/r/r0r��sr�)F)NN)9r�Zdistutils.filelistrZ	_FileListZdistutils.errorsrZdistutils.utilrrirr�rr!r�rIr`Z
_importlibrrrr	rZ
setuptoolsrZsetuptools.command.sdistr
rZsetuptools.command.setoptrZsetuptools.commandrZsetuptools.unicode_utilsr�Zsetuptools.globrZsetuptools.externr�warningsr�format�version_infor�r1r2rRr�rzr�r�Zwrite_requirementsZwrite_setup_requirementsr�r�r�r�rvr�r/r/r/r0�<module>sVS/'Iy




Youez - 2016 - github.com/yon3zu
LinuXploit