403Webshell
Server IP : 121.121.20.254  /  Your IP : 216.73.217.51
Web Server : Microsoft-IIS/10.0
System : Windows NT WEB-SERVER 10.0 build 20348 (Windows Server 2022) AMD64
User : IUSR ( 0)
PHP Version : 8.3.28
Disable Function : NONE
MySQL : ON  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  C:/Python27/Lib/site-packages/setuptools/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : C:/Python27/Lib/site-packages/setuptools/config.pyc
�
Ps$gc@@sJddlmZmZddlZddlZddlZddlZddlZddlm	Z	ddlm
Z
ddlmZddlm
Z
ddlmZmZddlmZmZdd	lmZmZeZeed
�Zd�Zd�Zed
�Zdfd��YZdefd��YZdefd��YZ dS(i(tabsolute_importtunicode_literalsN(tdefaultdict(tpartial(twraps(t
import_module(tDistutilsOptionErrortDistutilsFileError(t
LegacyVersiontparse(tstring_typestPY3c	C@s�ddlm}m}tjj|�}tjj|�sMtd|��ntj�}tj	tjj
|��zl|�}|r�|j�ng}||kr�|j|�n|j
|d|�t||jd|�}Wdtj	|�Xt|�S(u,Read given configuration file and returns options from it as a dict.

    :param str|unicode filepath: Path to configuration file
        to get options from.

    :param bool find_others: Whether to search for other configuration files
        which could be on in various places.

    :param bool ignore_option_errors: Whether to silently ignore
        options, values of which could not be resolved (e.g. due to exceptions
        in directives such as file:, attr:, etc.).
        If False exceptions are propagated as expected.

    :rtype: dict
    i(tDistributiont
_Distributionu%Configuration file %s does not exist.t	filenamestignore_option_errorsN(tsetuptools.distRR
tostpathtabspathtisfileRtgetcwdtchdirtdirnametfind_config_filestappendtparse_config_filestparse_configurationtcommand_optionstconfiguration_to_dict(	tfilepathtfind_othersRRR
tcurrent_directorytdistRthandlers((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pytread_configurations$	
cC@s@djt��}tjt||�}t|||�}|�S(u�
    Given a target object and option key, get that option from
    the target object, either through a get_{key} method or
    from an attribute directly.
    u	get_{key}(tformattlocalst	functoolsRtgetattr(t
target_objtkeytgetter_nametby_attributetgetter((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyt_get_optionDscC@sXtt�}xE|D]=}x4|jD])}t|j|�}|||j|<q#WqW|S(u�Returns configuration data gathered by given handlers as a dict.

    :param list[ConfigHandler] handlers: Handlers list,
        usually from parse_configuration()

    :rtype: dict
    (Rtdicttset_optionsR-R(tsection_prefix(R"tconfig_dictthandlertoptiontvalue((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyRPs
cC@sKt|||�}|j�t|j|||j�}|j�||fS(u�Performs additional parsing of configuration options
    for a distribution.

    Returns a list of used option handlers.

    :param Distribution distribution:
    :param dict command_options:
    :param bool ignore_option_errors: Whether to silently ignore
        options, values of which could not be resolved (e.g. due to exceptions
        in directives such as file:, attr:, etc.).
        If False exceptions are propagated as expected.
    :rtype: list
    (tConfigOptionsHandlerR	tConfigMetadataHandlertmetadatatpackage_dir(tdistributionRRtoptionstmeta((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyRbs

t
ConfigHandlercB@s�eZdZdZiZed�Zed��Z	d�Z
edd��Zed��Z
ed��Zed��Zed	��Zed
��Zed��Zedd��Zed
��Zedd��Zd�Zd�Zd�ZRS(u1Handles metadata supplied in configuration files.cC@s�i}|j}xT|j�D]F\}}|j|�s=qn|j|d�jd�}|||<qW||_||_||_g|_dS(Nuu.(	R0titemst
startswithtreplacetstripRR(tsectionsR/(tselfR(R:RRAR0tsection_nametsection_options((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyt__init__�s				cC@std|jj��dS(u.Metadata item name to parser function mapping.u!%s must provide .parsers propertyN(tNotImplementedErrort	__class__t__name__(RB((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pytparsers�sc	C@st�}|j}|jj||�}t|||�}||krTt|��n|r^dSt}|jj|�}|r�y||�}Wq�tk
r�t	}|j
s��q�q�Xn|r�dSt|d|d�}|dkr�t|||�n
||�|j
j|�dS(Nuset_%s(ttupleR(taliasestgetR'tKeyErrortFalseRIt	ExceptiontTrueRtNonetsetattrR/R(	RBtoption_nameR4tunknownR(t
current_valuetskip_optiontparsertsetter((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyt__setitem__�s0		
	

u,cC@sft|t�r|Sd|kr.|j�}n|j|�}g|D]}|j�rD|j�^qDS(u�Represents value as a list.

        Value is split either by separator (defaults to comma) or by lines.

        :param value:
        :param separator: List items separator character.
        :rtype: list
        u
(t
isinstancetlistt
splitlinestsplitR@(tclsR4t	separatortchunk((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyt_parse_list�s
cC@swd}i}xd|j|�D]S}|j|�\}}}||krYtd|��n|j�||j�<qW|S(uPRepresents value as a dict.

        :param value:
        :rtype: dict
        u=u(Unable to parse option value to dict: %s(Rat	partitionRR@(R^R4R_tresulttlineR)tseptval((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyt_parse_dict�scC@s|j�}|dkS(uQRepresents value as boolean.

        :param value:
        :rtype: bool
        u1utrueuyes(u1utrueuyes(tlower(R^R4((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyt_parse_bool�sc@s�fd�}|S(u�Returns a parser function to make sure field inputs
        are not files.

        Parses a value after getting the key so error messages are
        more informative.

        :param key:
        :rtype: callable
        c@s1d}|j|�r-tdj����n|S(Nufile:uCOnly strings are accepted for the {0} field, files are not accepted(R>t
ValueErrorR$(R4texclude_directive(R)(sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyRWs((R^R)RW((R)sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyt_exclude_files_parser�sc@srd}t|t�s|S|j|�s,|S|t|�}d�|jd�D�}dj�fd�|D��S(uORepresents value as a string, allowing including text
        from nearest files using `file:` directive.

        Directive is sandboxed and won't reach anything outside
        directory with setup.py.

        Examples:
            file: README.rst, CHANGELOG.md, src/file.txt

        :param str value:
        :rtype: str
        ufile:cs@s'|]}tjj|j��VqdS(N(RRRR@(t.0R((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pys	<genexpr>$su,u
c3@sE|];}�j|�strtjj|�r�j|�VqdS(N(t
_assert_localRPRRRt
_read_file(RmR(R^(sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pys	<genexpr>&s(RZR
R>tlenR]tjoin(R^R4tinclude_directivetspect	filepaths((R^sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyt_parse_file
scC@s,|jtj��s(td|��ndS(Nu#`file:` directive can not access %s(R>RRR(R((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyRn,scC@s,tj|dd��}|j�SWdQXdS(Ntencodinguutf-8(tiotopentread(Rtf((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyRo2scC@sed}|j|�s|S|j|d�j�jd�}|j�}dj|�}|p^d}tj�}|r|d|kr�||d}|jdd�}	t	|	�dkr�tj
jtj�|	d�}|	d}q|}qd|krtj
jtj�|d�}qntj
jd|�zt
|�}
t|
|�}Wdtj
dt_
X|S(	u�Represents value as a module attribute.

        Examples:
            attr: package.attr
            attr: package.module.attr

        :param str value:
        :rtype: str
        uattr:uu.u__init__iu/iN(R>R?R@R]tpopRqRRtrsplitRpRtsystinsertRR'(R^R4R8tattr_directivet
attrs_patht	attr_nametmodule_nametparent_pathtcustom_pathtpartstmodule((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyt_parse_attr7s0!
	%c@s�fd�}|S(u�Returns parser function to represents value as a list.

        Parses a value applying given methods one after another.

        :param parse_methods:
        :rtype: callable
        c@s'|}x�D]}||�}q
W|S(N((R4tparsedtmethod(t
parse_methods(sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyR	ms
((R^R�R	((R�sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyt_get_parser_compoundds	cC@sLi}|pd�}x0|j�D]"\}\}}||�||<q"W|S(u�Parses section options into a dictionary.

        Optionally applies a given parser to values.

        :param dict section_options:
        :param callable values_parser:
        :rtype: dict
        cS@s|S(N((Rf((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyt<lambda>�t(R=(R^RDt
values_parserR4R)t_Rf((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyt_parse_section_to_dictws

cC@sIxB|j�D]4\}\}}y|||<Wq
tk
r@q
Xq
WdS(uQParses configuration file section.

        :param dict section_options:
        N(R=RM(RBRDtnameR�R4((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyt
parse_section�s

cC@s�x�|jj�D]y\}}d}|r5d|}nt|d|jdd�d�}|dkrtd|j|f��n||�qWdS(uTParses configuration file items from one
        or more related sections.

        uu_%suparse_section%su.u__u0Unsupported distribution option section: [%s.%s]N(RAR=R'R?RQRR0(RBRCRDtmethod_postfixtsection_parser_method((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyR	�s
	c@s%t�����fd��}|S(u� this function will wrap around parameters that are deprecated

        :param msg: deprecation message
        :param warning_class: class of warning exception to be raised
        :param func: function to be wrapped around
        c@stj����||�S(N(twarningstwarn(targstkwargs(tfunctmsgt
warning_class(sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pytconfig_handler�s(R(RBR�R�R�R�((R�R�R�sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyt_deprecated_config_handler�s!N(RHt
__module__t__doc__RQR0RKRNREtpropertyRIRYtclassmethodRaRgRiRlRutstaticmethodRnRoR�R�R�R�R	R�(((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyR<}s,	&
,		R6cB@s]eZdZidd6dd6dd6dd6ZeZedd	�Zed
��Z	d�Z
RS(
umetadatauurlu	home_pageudescriptionusummaryuclassifiersu
classifieru	platformsuplatformcC@s)tt|�j|||�||_dS(N(tsuperR6RER8(RBR(R:RR8((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyRE�scC@s�|j}|j}|j}|j}i|d6|d6|d6|j|dt�d6|d6|j||�d6|d�d6|d	6|d
6|jd6|d6S(
u.Metadata item name to parser function mapping.u	platformsukeywordsuprovidesu[The requires parameter is deprecated, please use install_requires for runtime dependencies.urequiresu	obsoletesuclassifiersulicenseudescriptionulong_descriptionuversionuproject_urls(RaRuRgRlR�tDeprecationWarningR�t_parse_version(RBt
parse_listt
parse_filet
parse_dicttexclude_files_parser((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyRI�s&				


cC@s�|j|�}||kra|j�}tt|�t�r]d}t|jt����n|S|j||j	�}t
|�r�|�}nt|t�s�t|d�r�dj
tt|��}q�d|}n|S(uSParses `version` option value.

        :param value:
        :rtype: str

        uCVersion loaded from {value} does not comply with PEP 440: {version}u__iter__u.u%s(RuR@RZR	RRR$R%R�R8tcallableR
thasattrRqtmaptstr(RBR4tversionttmpl((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyR��s
N(RHR�R0RKRNtstrict_modeRQRER�RIR�(((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyR6�s
R5cB@seeZdZed��Zd�Zd�Zd�Zd�Zd�Z	d�Z
d�Zd	�ZRS(
uoptionscC@s�|j}t|jdd�}|j}|j}i|d6|d6|d6|d6|d6|d6|d	6|d
6|d6|d6|d
6|d6|d6|d6|jd6|jd6|d6S(u.Metadata item name to parser function mapping.R_u;uzip_safeuuse_2to3uinclude_package_dataupackage_diruuse_2to3_fixersuuse_2to3_exclude_fixersuconvert_2to3_doctestsuscriptsueager_resourcesudependency_linksunamespace_packagesuinstall_requiresusetup_requiresu
tests_requireupackagesuentry_pointsu
py_modules(RaRRiRgt_parse_packagesRu(RBR�tparse_list_semicolont
parse_boolR�((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyRIs,			

cC@s�ddg}|j�}||kr1|j|�S||dk}|r]tr]td��n|j|jjdi��}|r�ddlm}nddlm	}||�S(	uTParses `packages` option value.

        :param value:
        :rtype: list
        ufind:ufind_namespace:iu8find_namespace: directive is unsupported on Python < 3.3u
packages.findi(tfind_namespace_packages(t
find_packages(
R@RaRRtparse_section_packages__findRARLt
setuptoolsR�R�(RBR4tfind_directivest
trimmed_valuetfindnstfind_kwargsR�((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyR�/s

cC@s�|j||j�}dddg}tg|j�D]*\}}||kr4|r4||f^q4�}|jd�}|dk	r�|d|d<n|S(u�Parses `packages.find` configuration file section.

        To be used in conjunction with _parse_packages().

        :param dict section_options:
        uwhereuincludeuexcludeiN(R�RaR.R=RLRQ(RBRDtsection_datat
valid_keystktvR�twhere((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyR�Ks@cC@s#|j||j�}||d<dS(u`Parses `entry_points` configuration file section.

        :param dict section_options:
        uentry_pointsN(R�Ra(RBRDR�((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pytparse_section_entry_points`scC@sB|j||j�}|jd�}|r>||d<|d=n|S(Nu*u(R�RaRL(RBRDR�troot((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyt_parse_package_datahs

cC@s|j|�|d<dS(u`Parses `package_data` configuration file section.

        :param dict section_options:
        upackage_dataN(R�(RBRD((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pytparse_section_package_datarscC@s|j|�|d<dS(uhParses `exclude_package_data` configuration file section.

        :param dict section_options:
        uexclude_package_dataN(R�(RBRD((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyt"parse_section_exclude_package_datayscC@s/t|jdd�}|j||�|d<dS(ubParses `extras_require` configuration file section.

        :param dict section_options:
        R_u;uextras_requireN(RRaR�(RBRDR�((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pytparse_section_extras_require�scC@sH|j||j�}g|j�D]\}}||f^q"|d<dS(u^Parses `data_files` configuration file section.

        :param dict section_options:
        u
data_filesN(R�RaR=(RBRDR�R�R�((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pytparse_section_data_files�s(
RHR�R0R�RIR�R�R�R�R�R�R�R�(((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyR5s				
				(!t
__future__RRRwRR}R�R&tcollectionsRRRt	importlibRtdistutils.errorsRRt#setuptools.extern.packaging.versionRR	tsetuptools.extern.sixR
Rttypet
__metaclass__RNR#R-RRR<R6R5(((sWc:\users\admini~1\appdata\local\temp\pip-install-lymszv\setuptools\setuptools\config.pyt<module>s*.		�>U

Youez - 2016 - github.com/yon3zu
LinuXploit