$24 GRAYBYTE WORDPRESS FILE MANAGER $55

SERVER : vnpttt-amd7f72-h1.vietnix.vn #1 SMP Fri May 24 12:42:50 UTC 2024
SERVER IP : 103.200.23.149 | ADMIN IP 216.73.216.22
OPTIONS : CRL = ON | WGT = ON | SDO = OFF | PKEX = OFF
DEACTIVATED : NONE

/opt/imunify360/venv/lib/python3.11/site-packages/setuptools/

HOME
Current File : /opt/imunify360/venv/lib/python3.11/site-packages/setuptools//_entry_points.py
import functools
import operator
import itertools

from .errors import OptionError
from .extern.jaraco.text import yield_lines
from .extern.jaraco.functools import pass_none
from ._importlib import metadata
from ._itertools import ensure_unique
from .extern.more_itertools import consume


def ensure_valid(ep):
    """
    Exercise one of the dynamic properties to trigger
    the pattern match.
    """
    try:
        ep.extras
    except AttributeError as ex:
        msg = (
            f"Problems to parse {ep}.\nPlease ensure entry-point follows the spec: "
            "https://packaging.python.org/en/latest/specifications/entry-points/"
        )
        raise OptionError(msg) from ex


def load_group(value, group):
    """
    Given a value of an entry point or series of entry points,
    return each as an EntryPoint.
    """
    # normalize to a single sequence of lines
    lines = yield_lines(value)
    text = f'[{group}]\n' + '\n'.join(lines)
    return metadata.EntryPoints._from_text(text)


def by_group_and_name(ep):
    return ep.group, ep.name


def validate(eps: metadata.EntryPoints):
    """
    Ensure entry points are unique by group and name and validate each.
    """
    consume(map(ensure_valid, ensure_unique(eps, key=by_group_and_name)))
    return eps


@functools.singledispatch
def load(eps):
    """
    Given a Distribution.entry_points, produce EntryPoints.
    """
    groups = itertools.chain.from_iterable(
        load_group(value, group) for group, value in eps.items()
    )
    return validate(metadata.EntryPoints(groups))


@load.register(str)
def _(eps):
    r"""
    >>> ep, = load('[console_scripts]\nfoo=bar')
    >>> ep.group
    'console_scripts'
    >>> ep.name
    'foo'
    >>> ep.value
    'bar'
    """
    return validate(metadata.EntryPoints(metadata.EntryPoints._from_text(eps)))


load.register(type(None), lambda x: x)


@pass_none
def render(eps: metadata.EntryPoints):
    by_group = operator.attrgetter('group')
    groups = itertools.groupby(sorted(eps, key=by_group), by_group)

    return '\n'.join(f'[{group}]\n{render_items(items)}\n' for group, items in groups)


def render_items(eps):
    return '\n'.join(f'{ep.name} = {ep.value}' for ep in sorted(eps))

Current_dir [ NOT WRITEABLE ] Document_root [ WRITEABLE ]


[ Back ]
NAME
SIZE
LAST TOUCH
USER
CAN-I?
FUNCTIONS
..
--
16 Dec 2025 9.34 PM
root / root
0755
__pycache__
--
5 Aug 2025 4.30 AM
root / root
0755
_distutils
--
5 Aug 2025 4.30 AM
root / root
0755
_vendor
--
5 Aug 2025 4.30 AM
root / root
0755
command
--
5 Aug 2025 4.30 AM
root / root
0755
config
--
5 Aug 2025 4.30 AM
root / root
0755
extern
--
5 Aug 2025 4.30 AM
root / root
0755
__init__.py
8.998 KB
4 Jul 2025 8.31 PM
root / root
0644
_core_metadata.py
8.712 KB
4 Jul 2025 8.31 PM
root / root
0644
_entry_points.py
2.183 KB
4 Jul 2025 8.31 PM
root / root
0644
_imp.py
2.376 KB
4 Jul 2025 8.31 PM
root / root
0644
_importlib.py
1.434 KB
4 Jul 2025 8.31 PM
root / root
0644
_itertools.py
0.659 KB
4 Jul 2025 8.31 PM
root / root
0644
_normalization.py
4.115 KB
4 Jul 2025 8.31 PM
root / root
0644
_path.py
1.031 KB
4 Jul 2025 8.31 PM
root / root
0644
_reqs.py
1.094 KB
4 Jul 2025 8.31 PM
root / root
0644
archive_util.py
7.159 KB
4 Jul 2025 8.31 PM
root / root
0644
build_meta.py
18.232 KB
4 Jul 2025 8.31 PM
root / root
0644
cli-32.exe
11.5 KB
4 Jul 2025 8.31 PM
root / root
0644
cli-64.exe
14 KB
4 Jul 2025 8.31 PM
root / root
0644
cli-arm64.exe
13.5 KB
4 Jul 2025 8.31 PM
root / root
0644
cli.exe
11.5 KB
4 Jul 2025 8.31 PM
root / root
0644
dep_util.py
0.644 KB
4 Jul 2025 8.31 PM
root / root
0644
depends.py
5.451 KB
4 Jul 2025 8.31 PM
root / root
0644
discovery.py
20.651 KB
4 Jul 2025 8.31 PM
root / root
0644
dist.py
36.333 KB
4 Jul 2025 8.31 PM
root / root
0644
errors.py
2.606 KB
4 Jul 2025 8.31 PM
root / root
0644
extension.py
5.46 KB
4 Jul 2025 8.31 PM
root / root
0644
glob.py
4.754 KB
4 Jul 2025 8.31 PM
root / root
0644
gui-32.exe
11.5 KB
4 Jul 2025 8.31 PM
root / root
0644
gui-64.exe
14 KB
4 Jul 2025 8.31 PM
root / root
0644
gui-arm64.exe
13.5 KB
4 Jul 2025 8.31 PM
root / root
0644
gui.exe
11.5 KB
4 Jul 2025 8.31 PM
root / root
0644
installer.py
4.872 KB
4 Jul 2025 8.31 PM
root / root
0644
launch.py
0.793 KB
4 Jul 2025 8.31 PM
root / root
0644
logging.py
1.21 KB
4 Jul 2025 8.31 PM
root / root
0644
modified.py
0.186 KB
4 Jul 2025 8.31 PM
root / root
0644
monkey.py
4.671 KB
4 Jul 2025 8.31 PM
root / root
0644
msvc.py
46.311 KB
4 Jul 2025 8.31 PM
root / root
0644
namespaces.py
3.001 KB
4 Jul 2025 8.31 PM
root / root
0644
package_index.py
37.446 KB
4 Jul 2025 8.31 PM
root / root
0644
py312compat.py
0.322 KB
4 Jul 2025 8.31 PM
root / root
0644
sandbox.py
14.013 KB
4 Jul 2025 8.31 PM
root / root
0644
script (dev).tmpl
0.213 KB
4 Jul 2025 8.31 PM
root / root
0644
script.tmpl
0.135 KB
4 Jul 2025 8.31 PM
root / root
0644
unicode_utils.py
0.919 KB
4 Jul 2025 8.31 PM
root / root
0644
version.py
0.157 KB
4 Jul 2025 8.31 PM
root / root
0644
warnings.py
3.61 KB
4 Jul 2025 8.31 PM
root / root
0644
wheel.py
8.426 KB
4 Jul 2025 8.31 PM
root / root
0644
windows_support.py
0.703 KB
4 Jul 2025 8.31 PM
root / root
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2026 CONTACT ME
Static GIF