[ Avaa Bypassed ]




Upload:

Command:

hmhc3928@3.145.45.223: ~ $


�V.a�N@s�dZyddlZWnek
r*YnXddlZddlZddlZddlZddlZddlm	Z	ddl
ZddlmZddl
mZmZmZddlmZddlmZddlmZyddlZWnek
rddlZYnXdd	lmZddlZejd
�ZddXd
dYddZdd[dd\dd]dd^dd_dd`ddaddbddcdddddeddfd dgd"dhd$did&djd)dkd*dld+dmd,dnd-dod.dpd0dqd3drd5dsd6dtd7dud8dviZdwZdxZ dyZ!d9d:�Z"d;d<d=�Z#d>d?�Z$d@dA�Z%dBdC�Z&dDdE�Z'dFdG�Z(dHdI�Z)dJdK�Z*dLdM�Z+dNdO�Z,dPdQ�Z-dRdS�Z.GdTdU�dUe	�Z/GdVdW�dWe0�Z1dS)za�The code in this module is mostly copy/pasted out of the distutils2 source
code, as recommended by Tarek Ziade.  As such, it may be subject to some change
as distutils2 development continues, and will have to be kept up to date.

I didn't want to use it directly from distutils2 itself, since I do not want it
to be an installation dependency for our packages yet--it is still too unstable
(the latest version on PyPI doesn't even install).
�N)�defaultdict)�log)�DistutilsOptionError�DistutilsModuleError�DistutilsFileError)�manifest_maker)�Distribution)�	Extension)�extra_filesz\s*(.*?)\s*\((.*)\)\s*$�name�metadata�versionZauthorZauthor_emailZ
maintainerZmaintainer_emailZurl�	home_page�description�summary�keywords�long_descriptionzdownload-url�classifiers�
classifier�	platforms�platform�license�install_requires�
requires_dist�setup_requires�setup_requires_dist�provides�
provides_dist�	obsoletes�obsoletes_dist�package_dir�files�
packages_root�packages�package_data�namespace_packages�
data_files�scripts�
py_modules�modules�cmdclass�global�commands�use_2to3�backwards_compat�zip_safe�
tests_require�dependency_links�include_package_datacCs|jd�}t|�d}|d|�}|d}x�|dkr�y#tdj|�d|g�}PWq<tk
r�|dkr��|d8}|d|�}||}d}Yq<Xq<WxL||d�D]:}yt||�}Wq�tk
rt|��Yq�Xq�W|S)z�Resolve a name like ``module.object`` to an object and return it.

    Raise ImportError if the module or name is not found.
    �.�Nr�fromlist����)�split�len�
__import__�join�ImportError�getattr�AttributeError)r�partsZcursor�module_nameZ	attr_nameZret�part�rB�/util.py�resolve_name�s*




rDz	setup.cfgc
CsOtj�}tjj|�s:tdtjj|���|j|�i}x-|j�D]}t	|j
|��||<qZWt|dd�}t|dd�}|r�tjj|�}tjj
d|�ze|r�dd�t|�D�}x�|D]�}t|�}y||�Wq�tk
r6tjd	�Yq�tj�d
}tjd||f�tjtj��tjd
�Yq�Xq�Wtjj|�t|�}	d|	d
<d|	d<t|�t|�}
|
r�|
|	d<t|�}|r�||	d<t|	�t|dd�}|r0tj t|��Wd|rJtjj!d�X|	S)aP Distutils2 to distutils1 compatibility util.

        This method uses an existing setup.cfg to generate a dictionary of
        keywords that can be used by distutils.core.setup(kwargs**).

        :param file:
            The setup.cfg path.
        :raises DistutilsFileError:
            When the setup.cfg file is not found.

    zfile '%s' does not existr+�setup_hooksr!r"rcSs"g|]}|dkr|�qS)zpbr.hooks.setup_hookrB)�.0�hookrBrBrC�
<listcomp>�s	zcfg_to_args.<locals>.<listcomp>z)setup hook %s terminated the installationr4z#setup hook %s raised exception: %s
Tr2Fr/�ext_modules�entry_pointsr
N)"�configparserZSafeConfigParser�os�path�existsr�abspath�readZsections�dict�items�has_get_option�sys�insert�split_multilinerD�
SystemExitr�error�exc_info�	traceback�
format_exc�exit�pbr�hooksZ
setup_hook�setup_cfg_to_setup_kwargs�register_custom_compilers�get_extension_modules�get_entry_points�
wrap_commandsr
Zset_extra_files�pop)
rM�parser�config�sectionrEr rGZhook_fn�e�kwargsrIrJZfiles_extra_filesrBrBrC�cfg_to_args�s\


	





rjc"Cs�i}i}x�tD]�}tt|�dkrBt|\}}n*tt|�dkrlt|d}|}t|||�}|s|dkrt||d�}|rt|�}d}xF|D]>}t|�}	z||	j�j�d7}Wd|	j�Xq�W|}nq|tkr't	|�}|t
krBt|�}n-|tkro|j�d!krid}nd}|r�|d"kr�dd�|D�}|dkrg}
d}x]|D]U}t
j||�}
|
jd�j�}|
jd�j�}|
j||f�q�W|
|d<n�|dkr4d|i}nh|d#krBi}d}d}x�|D]�}d|kr�|jdd�\}}|j�|j�}}||kr�||}|j|j��q|j�}||j�<n2|r�td|��n|j|j�j��d}qYW|dkr9|j�}|}nZ|dkr�i}t�}x6|D].}t|�}||�}|||j�<qdW|}|||<qWd|krQd}|d}x�|D]�}g}t||�}xW|D]O}t
j||�}
|
jd�j�}|
jd�}|j||f�q�W|||<q�Wi}xa|D]Y} xP|| D]D\}}|r�d| |f}!n| }!|j|!g�j|�qoWq^W|jdg�|d<||d <|S)$zqProcesses the setup.cfg options and converts them to arguments accepted
    by setuptools' setup() function.
    �r4rr�description_filer6z

N�true�t�1�yes�yTFrr0cSs"g|]}tjd|��qS)z\1\2)�_VERSION_SPEC_RE�sub)rFZpredrBrBrCrHKs	z-setup_cfg_to_setup_kwargs.<locals>.<listcomp>z6(?P<package>[^;]*);?(?P<env_marker>[^#]*?)(?:\s*#.*)?$�package�
env_markerr r$r&�=z1malformed package_data first line %r (misses "=")r*�extrasz6(?P<package>[^:]*):?(?P<env_marker>[^#]*?)(?:\s*#.*)?$z%s:(%s)�extras_require)ztruernrozyesrq)zinstall_requiresr0)r$z
data_files)�D1_D2_SETUP_ARGSr9rSrV�openrP�strip�close�
CSV_FIELDS�	split_csv�MULTI_FIELDS�BOOL_FIELDS�lower�re�match�group�appendr8�extendrrRrrD�get_command_name�
setdefaultrd)"rfriZall_requirements�argrg�optionZin_cfg_value�value�filenamerlrZrequirement_patternZrequirement�mZrequirement_packagerur&�	firstline�prev�line�keyr*�distZcls_name�cls�cmdrw�extraZextra_requirementsZrequirementsZextras_valuerxZ	req_groupZ
extras_keyrBrBrCr_s�
		
			






		






!
r_cCs�t|dd�}|r�t|�}x�|D]�}t|�}t|d�rX|j}n	|j}t|d�r||j}n
d|}|j}tj	j
}||j|f||<tj|tjd|<q+WdS)z�Handle custom compilers; this has no real equivalent in distutils, where
    additional compilers could only be added programmatically, so we have to
    hack it in somehow.
    r+�	compilersrrzcustom compiler %sz
distutils.N)
rSrVrD�hasattrr�__name__r�
__module__�	distutilsZ	ccompilerZcompiler_classrTr))rfr�ZcompilerrZdescr@ZccrBrBrCr`�s
	
	r`c

Cs�d}g}x�|D]�}d|kr:|jdd�}n|jdd�}dd�|D�}t|�dkr|ddkri}x�|D]�}t|||�}|s�q�t|�}|dkrNg}xx|D]p}	|	jdd�}	t|	�dkr|	dj�df}	n |	dj�|	dj�f}	|j|	�q�W|}|||<q�W|rd|kr||d|d<|jt|jd�|��qW|S)zHandle extension modules�sources�include_dirs�
define_macros�undef_macros�library_dirs�	libraries�runtime_library_dirs�
extra_objects�extra_compile_args�extra_link_args�export_symbols�	swig_opts�depends�:r4rvcSsg|]}|j��qSrB)r{)rF�lrBrBrCrH�s	z)get_extension_modules.<locals>.<listcomp>rkr�	extensionNr)
r�r�r�r�r�r�r�r�r�r�r�r�r�)r8r9rSrVr{r�r	rd)
rfZEXTENSION_FIELDSrIrgZlabelsZext_argsZfieldr�ZmacrosZmacrorBrBrCra�sT
"

 racCs1d|kriStdd�|dj�D��S)aProcess the [entry_points] section of setup.cfg to handle setuptools
    entry points.  This is, of course, not a standard feature of
    distutils2/packaging, but as there is not currently a standard alternative
    in packaging, we provide support for them.
    rJcss'|]\}}|t|�fVqdS)N)rV)rFr�r�rBrBrC�	<genexpr>sz#get_entry_points.<locals>.<genexpr>)rQrR)rfrBrBrCrbsrbcCs)t�}|j�x|j�D]\}}i}x|j|�j�D]h\}}|d}|jd�s||jd�rH|jdd�\}}|j|i�}	||	|<qHW|s�q d|kr�||dkr�|d|}
n|j|�}
t	||
|�}||jdi�|<q WdS)Nr4z	pre_hook.z
post_hook.r3r*)
rZparse_config_filesZget_command_listZget_option_dictrR�
startswithr8r�Zget_command_class�wrap_command)rir�r��_r^�opt�valZ	hook_type�aliasZ	hook_dictr*Znew_cmdclassrBrBrCrcs"	
"
rccCsO|dd�}t||tfd|dtd|jd�d|jd�i�S)NcSs+|jd�|j|�|jd�dS)N�pre_hook�	post_hook)�run_command_hooks�run)�selfr*rBrBrCr�2s

zwrap_command.<locals>.runr�r�r�r�)�type�objectr��get)r�r*r^r�rBrBrCr�1s
r�cCsW|dkrtd|��t||d�}|dkr>dSx|j�D]}t|t�r�yt|�}Wq�tk
r�tj�d}t	d||f��Yq�Xn|}t
|d�s�td|��tj
d	|||j��y||�WqKtj�d}tjd
||f�tjtj��tjd�YqKXqKWdS)z�Run hooks registered for that command and phase.

    *cmd_obj* is a finalized command object; *hook_kind* is either
    'pre_hook' or 'post_hook'.
    r�r�zinvalid hook kind: %rNr4zcannot find hook %s: %s�__call__zhook %r is not callablezrunning %s %s for command %szhook %s raised exception: %s
)zpre_hookz	post_hook)�
ValueErrorr=�values�
isinstance�strrDr<rTrYrr�rr�infor�rXrZr[r\)Zcmd_objZ	hook_kindr^rGZhook_obj�errrhrBrBrCr�=s2
	r�cCsp||kr(|||kr(|||S||krh|jdd�||krh|||jdd�SdSdS)Nr��-F)�replace)rfrgr�rBrBrCrSfs
(rScCs-dd�dd�|jd�D�D�}|S)z3Special behaviour when we have a multi line optionscSsg|]}|r|�qSrBrB)rF�elementrBrBrCrHrs	z#split_multiline.<locals>.<listcomp>css|]}|j�VqdS)N)r{)rFr�rBrBrCr�ssz"split_multiline.<locals>.<genexpr>�
)r8)r�rBrBrCrVos	 rVcCs-dd�dd�|jd�D�D�}|S)z8Special behaviour when we have a comma separated optionscSsg|]}|r|�qSrBrB)rFr�rBrBrCrH{s	zsplit_csv.<locals>.<listcomp>css|]}|j�VqdS)N)r{)rF�chunkrBrBrCr�|szsplit_csv.<locals>.<genexpr>�,)r8)r�rBrBrCr~xs	 r~cs�fdd�}|S)z[A function decorator to monkey-patch a method of the same name on the
    given class.
    csRt�|jd�}|rNt|d�rNt|d|�t�|j|�|S)NZ_orig)r=r�r��setattr)�funcZorig)r�rBrC�wrapper�s
z#monkeypatch_method.<locals>.wrapperrB)r�r�rB)r�rC�monkeypatch_method�sr�cs+eZdZdZd�fdd�Z�S)�DefaultGetDictzXLike defaultdict, but the get() method also sets and returns the default
    value.
    Ncs1|dkr|j�}tt|�j||�S)N)�default_factory�superr�r�)r�r��default)�	__class__rBrCr��szDefaultGetDict.get)r�r��__qualname__�__doc__r�rBrB)r�rCr��sr�cs4eZdZdZdd�Z�fdd�Z�S)�
IgnoreDictz�A dictionary that ignores any insertions in which the key is a string
    matching any string in `ignore`.  The ignore list can also contain wildcard
    patterns using '*'.
    cCs0tjddjdd�|D���|_dS)Nz(%s)�|cSs"g|]}|jdd��qS)�*z.*)r�)rF�patrBrBrCrH�s	z'IgnoreDict.__init__.<locals>.<listcomp>)r��compiler;�_IgnoreDict__ignore)r��ignorerBrBrC�__init__�s	zIgnoreDict.__init__cs3|jj|�rdStt|�j||�dS)N)r�r�r�r��__setitem__)r�r�r�)r�rBrCr��szIgnoreDict.__setitem__)r�r�r�r�r�r�rBrB)r�rCr��sr�)r)r)r)r)r)r)rr)rr)r)rzdescription)r)rr)rzplatform)r)rr)rr)rr)rr)�filesz
packages_root)r�)r�)r�)r�)r�)r�zmodules)zglobalzcommands)r.r-)r.�zip_safe)r.�
tests_require)r.)r.)rrzinstall_requiresrrr%r#zpackage_dataz
data_fileszscriptsr(r1rr�zcmdclass)r-r�zinclude_package_data)zkeywords)2r��multiprocessingr<�loggingrLr�rTrZ�collectionsrZdistutils.ccompilerr�rZdistutils.errorsrrrZsetuptools.command.egg_inforZsetuptools.distrZsetuptools.extensionr	�ConfigParserrKr]r
Z	pbr.hooksr�rrryrr�r}rDrjr_r`rarbrcr�r�rSrVr~r�r�rQr�rBrBrBrC�<module>5s�

 V�"5)			

Filemanager

Name Type Size Permission Actions
__init__.cpython-35.opt-1.pyc File 95 B 0644
__init__.cpython-35.pyc File 95 B 0644
builddoc.cpython-35.opt-1.pyc File 6.58 KB 0644
builddoc.cpython-35.pyc File 6.58 KB 0644
core.cpython-35.opt-1.pyc File 2.94 KB 0644
core.cpython-35.pyc File 2.94 KB 0644
extra_files.cpython-35.opt-1.pyc File 620 B 0644
extra_files.cpython-35.pyc File 620 B 0644
find_package.cpython-35.opt-1.pyc File 721 B 0644
find_package.cpython-35.pyc File 721 B 0644
git.cpython-35.opt-1.pyc File 8.13 KB 0644
git.cpython-35.pyc File 8.13 KB 0644
options.cpython-35.opt-1.pyc File 412 B 0644
options.cpython-35.pyc File 412 B 0644
packaging.cpython-35.opt-1.pyc File 20.16 KB 0644
packaging.cpython-35.pyc File 20.16 KB 0644
pbr_json.cpython-35.opt-1.pyc File 632 B 0644
pbr_json.cpython-35.pyc File 632 B 0644
testr_command.cpython-35.opt-1.pyc File 4.63 KB 0644
testr_command.cpython-35.pyc File 4.63 KB 0644
util.cpython-35.opt-1.pyc File 15.43 KB 0644
util.cpython-35.pyc File 15.43 KB 0644
version.cpython-35.opt-1.pyc File 15.17 KB 0644
version.cpython-35.pyc File 15.17 KB 0644