SILENT KILLERPanel

Current Path: > > opt > alt > python311 > lib > python3.11 > site-packages > > > setuptools


Operation   : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
Software     : Apache
Server IP    : 162.0.232.56 | Your IP: 216.73.216.111
Domains      : 1034 Domain(s)
Permission   : [ 0755 ]

Files and Folders in: //opt/alt/python311/lib/python3.11/site-packages///setuptools

NameTypeSizeLast ModifiedActions
__pycache__ Directory - -
_distutils Directory - -
_vendor Directory - -
command Directory - -
config Directory - -
extern Directory - -
__init__.py File 8429 bytes November 13 2023 22:03:24.
_deprecation_warning.py File 218 bytes November 13 2023 22:03:24.
_entry_points.py File 2282 bytes November 13 2023 22:03:24.
_imp.py File 2392 bytes November 13 2023 22:03:24.
_importlib.py File 1311 bytes November 13 2023 22:03:24.
_itertools.py File 675 bytes November 13 2023 22:03:24.
_path.py File 749 bytes November 13 2023 22:03:24.
_reqs.py File 501 bytes November 13 2023 22:03:24.
archive_util.py File 7346 bytes November 13 2023 22:03:24.
build_meta.py File 19595 bytes November 13 2023 22:03:24.
dep_util.py File 949 bytes November 13 2023 22:03:24.
depends.py File 5499 bytes November 13 2023 22:03:24.
discovery.py File 20799 bytes November 13 2023 22:03:24.
dist.py File 45252 bytes November 13 2023 22:03:24.
errors.py File 2464 bytes November 13 2023 22:03:24.
extension.py File 5591 bytes November 13 2023 22:03:24.
glob.py File 4873 bytes November 13 2023 22:03:24.
installer.py File 3824 bytes November 13 2023 22:03:24.
launch.py File 812 bytes November 13 2023 22:03:24.
logging.py File 1232 bytes November 13 2023 22:03:24.
monkey.py File 4857 bytes November 13 2023 22:03:24.
msvc.py File 47724 bytes November 13 2023 22:03:24.
namespaces.py File 3093 bytes November 13 2023 22:03:24.
package_index.py File 40329 bytes November 13 2023 22:03:24.
py34compat.py File 245 bytes November 13 2023 22:03:24.
sandbox.py File 14348 bytes November 13 2023 22:03:24.
script (dev).tmpl File 218 bytes November 13 2023 22:03:24.
script.tmpl File 138 bytes November 13 2023 22:03:24.
unicode_utils.py File 941 bytes November 13 2023 22:03:24.
version.py File 144 bytes November 13 2023 22:03:24.
wheel.py File 8376 bytes November 13 2023 22:03:24.
windows_support.py File 718 bytes November 13 2023 22:03:24.

Reading File: //opt/alt/python311/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)
    )

SILENT KILLER Tool