HEX
Server: Apache
System: Linux zacp120.webway.host 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User: govancoz (1003)
PHP: 8.3.26
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //usr/local/lib/python3.7/site-packages/setuptools/__pycache__/__init__.cpython-37.pyc
B

N��g)$�@sVdZddlZddlZddlZddlZddlZddlm	Z	ddl
mZddl
mZddlZddlmZddlmZdd	lmZdd
lmZmZddlmZddlmZd
dddddddgZejjZdZ ej!Z"ej!Z#dd�Z$dd�Z%dd
�Z&ej'j&je&_e�(ej'j)�Z*Gdd�de*�Z)dd�Z+ej,fdd�Z-e�.e�dd ��ZGd!d"�d"e/�Z0e�1�dS)#z@Extensions to the 'distutils' for large or complex distributions�N)�DistutilsOptionError)�convert_path�)�SetuptoolsDeprecationWarning)�	Extension)�Distribution)�Require)�
PackageFinder�PEP420PackageFinder)�monkey)�logging�setupr�Commandrrr�
find_packages�find_namespace_packagescCs:Gdd�dtjj�}||�}|jdd�|jr6t|�dS)Ncs6eZdZdZ�fdd�Zd	�fdd�	Zdd�Z�ZS)
z4_install_setup_requires.<locals>.MinimalDistributionzl
        A minimal version of a distribution for supporting the
        fetch_build_eggs interface.
        cs<d}�fdd�t|�t��@D�}t��|�|j��dS)N)Zdependency_links�setup_requirescsi|]}�||�qS�r)�.0�k)�attrsr�7/tmp/pip-unpacked-wheel-yrlplx0q/setuptools/__init__.py�
<dictcomp>7szQ_install_setup_requires.<locals>.MinimalDistribution.__init__.<locals>.<dictcomp>)�set�super�__init__�set_defaultsZ_disable)�selfrZ_incl�filtered)�	__class__)rrr5sz=_install_setup_requires.<locals>.MinimalDistribution.__init__Ncs6yt��|�\}}|dfStk
r0|dfSXdS)zAIgnore ``pyproject.toml``, they are not related to setup_requiresrN)rZ _split_standard_project_metadata�	Exception)r�	filenames�cfg�toml)rrr�_get_project_config_files<s
zN_install_setup_requires.<locals>.MinimalDistribution._get_project_config_filescSsdS)zl
            Disable finalize_options to avoid building the working set.
            Ref #2158.
            Nr)rrrr�finalize_optionsDszE_install_setup_requires.<locals>.MinimalDistribution.finalize_options)N)�__name__�
__module__�__qualname__�__doc__rr#r$�
__classcell__rr)rr�MinimalDistribution/sr*T)Zignore_option_errors)�	distutils�corer�parse_config_filesr�_fetch_build_eggs)rr*�distrrr�_install_setup_requires,s
r0c
Csry|�|j�Wn\tk
rl}z>d}d|jjkrZt|d�rH|�|�n|�d|�d���Wdd}~XYnXdS)Na�
        It is possible a package already installed in your system
        contains an version that is invalid according to PEP 440.
        You can try `pip install --use-pep517` as a workaround for this problem,
        or rely on a new virtual environment.

        If the problem refers to a package that is not installed yet,
        please contact that package's maintainers or distributors.
        �InvalidVersion�add_note�
)Zfetch_build_eggsrrrr%�hasattrr2�announce)r/�ex�msgrrrr.Rs	
r.cKst��t|�tjjf|�S)N)r�	configurer0r+r,r
)rrrrr
gscs@eZdZdZdZ�fdd�Zd
dd�Zdd	�Zddd�Z�Z	S)ra�

    Setuptools internal actions are organized using a *command design pattern*.
    This means that each action (or group of closely related actions) executed during
    the build should be implemented as a ``Command`` subclass.

    These commands are abstractions and do not necessarily correspond to a command that
    can (or should) be executed via a terminal, in a CLI fashion (although historically
    they would).

    When creating a new command from scratch, custom defined classes **SHOULD** inherit
    from ``setuptools.Command`` and implement a few mandatory methods.
    Between these mandatory methods, are listed:

    .. method:: initialize_options(self)

        Set or (reset) all options/attributes/caches used by the command
        to their default values. Note that these values may be overwritten during
        the build.

    .. method:: finalize_options(self)

        Set final values for all options/attributes used by the command.
        Most of the time, each option/attribute/cache should only be set if it does not
        have any value yet (e.g. ``if self.attr is None: self.attr = val``).

    .. method:: run(self)

        Execute the actions intended by the command.
        (Side effects **SHOULD** only take place when ``run`` is executed,
        for example, creating new files or writing to the terminal output).

    A useful analogy for command classes is to think of them as subroutines with local
    variables called "options".  The options are "declared" in ``initialize_options()``
    and "defined" (given their final values, aka "finalized") in ``finalize_options()``,
    both of which must be defined by every command class. The "body" of the subroutine,
    (where it does all the work) is the ``run()`` method.
    Between ``initialize_options()`` and ``finalize_options()``, ``setuptools`` may set
    the values for options/attributes based on user's input (or circumstance),
    which means that the implementation should be careful to not overwrite values in
    ``finalize_options`` unless necessary.

    Please note that other commands (or other parts of setuptools) may also overwrite
    the values of the command's options/attributes multiple times during the build
    process.
    Therefore it is important to consistently implement ``initialize_options()`` and
    ``finalize_options()``. For example, all derived attributes (or attributes that
    depend on the value of other attributes) **SHOULD** be recomputed in
    ``finalize_options``.

    When overwriting existing commands, custom defined classes **MUST** abide by the
    same APIs implemented by the original class. They also **SHOULD** inherit from the
    original class.
    Fcst��|�t|��|�dS)zj
        Construct the command for dist, updating
        vars(self) with any keyword parameters.
        N)rr�vars�update)rr/�kw)rrrr�szCommand.__init__NcCsBt||�}|dkr"t|||�|St|t�s>td|||f��|S)Nz'%s' must be a %s (got `%s`))�getattr�setattr�
isinstance�strr)r�option�what�default�valrrr�_ensure_stringlike�s

zCommand._ensure_stringlikecCspt||�}|dkrdSt|t�r6t||t�d|��n6t|t�rTtdd�|D��}nd}|sltd||f��dS)a�Ensure that 'option' is a list of strings.  If 'option' is
        currently a string, we split it either on /,\s*/ or /\s+/, so
        "foo bar baz", "foo,bar,baz", and "foo,   bar baz" all become
        ["foo", "bar", "baz"].

        ..
           TODO: This method seems to be similar to the one in ``distutils.cmd``
           Probably it is just here for backward compatibility with old Python versions?

        :meta private:
        Nz,\s*|\s+css|]}t|t�VqdS)N)r>r?)r�vrrr�	<genexpr>�sz-Command.ensure_string_list.<locals>.<genexpr>Fz''%s' must be a list of strings (got %r))	r<r>r?r=�re�split�list�allr)rr@rC�okrrr�ensure_string_list�s


zCommand.ensure_string_listrcKs t�|||�}t|��|�|S)N)�_Command�reinitialize_commandr9r:)r�command�reinit_subcommandsr;�cmdrrrrN�szCommand.reinitialize_command)N)r)
r%r&r'r(Zcommand_consumes_argumentsrrDrLrNr)rr)rrrts5
cCs&dd�tj|dd�D�}ttjj|�S)z%
    Find all files under 'path'
    css,|]$\}}}|D]}tj�||�VqqdS)N)�os�path�join)r�base�dirs�files�filerrrrF�sz#_find_all_simple.<locals>.<genexpr>T)�followlinks)rR�walk�filterrS�isfile)rS�resultsrrr�_find_all_simple�sr^cCs6t|�}|tjkr.tjtjj|d�}t||�}t|�S)z�
    Find all files under 'dir' and return the list of full filenames.
    Unless dir is '.', return full filenames with dir prepended.
    )�start)	r^rR�curdir�	functools�partialrS�relpath�maprI)�dirrWZmake_relrrr�findall�s


rfcCstjdddd�t|�S)NzAccess to implementation detaila
        The function `convert_path` is not provided by setuptools itself,
        and therefore not part of the public API.

        Its direct usage by 3rd-party packages is considered improper and the function
        may be removed in the future.
        )i���
)Zdue_date)r�emit�
_convert_path)�pathnamerrrr�s
rc@seZdZdZdS)�sicz;Treat this string as-is (https://en.wikipedia.org/wiki/Sic)N)r%r&r'r(rrrrrl	srl)2r(rarRrGZ_distutils_hack.overrideZ_distutils_hack�distutils.corer+�distutils.errorsr�distutils.utilrrj�warningsrZsetuptools.version�
setuptoolsZsetuptools.extensionrZsetuptools.distrZsetuptools.dependsrZsetuptools.discoveryr	r
�rr�__all__�version�__version__Zbootstrap_install_from�findrrr0r.r
r,Z
get_unpatchedrrMr^r`rf�wrapsr?rlZ	patch_allrrrr�<module>sL&m