404

[ Avaa Bypassed ]




Upload:

Command:

elspacio@3.145.172.24: ~ $
import glob
import os
import subprocess
import sys
import tempfile
import warnings
from distutils import log
from distutils.errors import DistutilsError

import pkg_resources
from setuptools.wheel import Wheel
from ._deprecation_warning import SetuptoolsDeprecationWarning


def _fixup_find_links(find_links):
    """Ensure find-links option end-up being a list of strings."""
    if isinstance(find_links, str):
        return find_links.split()
    assert isinstance(find_links, (tuple, list))
    return find_links


def fetch_build_egg(dist, req):  # noqa: C901  # is too complex (16)  # FIXME
    """Fetch an egg needed for building.

    Use pip/wheel to fetch/build a wheel."""
    warnings.warn(
        "setuptools.installer is deprecated. Requirements should "
        "be satisfied by a PEP 517 installer.",
        SetuptoolsDeprecationWarning,
    )
    # Warn if wheel is not available
    try:
        pkg_resources.get_distribution('wheel')
    except pkg_resources.DistributionNotFound:
        dist.announce('WARNING: The wheel package is not available.', log.WARN)
    # Ignore environment markers; if supplied, it is required.
    req = strip_marker(req)
    # Take easy_install options into account, but do not override relevant
    # pip environment variables (like PIP_INDEX_URL or PIP_QUIET); they'll
    # take precedence.
    opts = dist.get_option_dict('easy_install')
    if 'allow_hosts' in opts:
        raise DistutilsError('the `allow-hosts` option is not supported '
                             'when using pip to install requirements.')
    quiet = 'PIP_QUIET' not in os.environ and 'PIP_VERBOSE' not in os.environ
    if 'PIP_INDEX_URL' in os.environ:
        index_url = None
    elif 'index_url' in opts:
        index_url = opts['index_url'][1]
    else:
        index_url = None
    find_links = (
        _fixup_find_links(opts['find_links'][1])[:] if 'find_links' in opts
        else []
    )
    if dist.dependency_links:
        find_links.extend(dist.dependency_links)
    eggs_dir = os.path.realpath(dist.get_egg_cache_dir())
    environment = pkg_resources.Environment()
    for egg_dist in pkg_resources.find_distributions(eggs_dir):
        if egg_dist in req and environment.can_add(egg_dist):
            return egg_dist
    with tempfile.TemporaryDirectory() as tmpdir:
        cmd = [
            sys.executable, '-m', 'pip',
            '--disable-pip-version-check',
            'wheel', '--no-deps',
            '-w', tmpdir,
        ]
        if quiet:
            cmd.append('--quiet')
        if index_url is not None:
            cmd.extend(('--index-url', index_url))
        for link in find_links or []:
            cmd.extend(('--find-links', link))
        # If requirement is a PEP 508 direct URL, directly pass
        # the URL to pip, as `req @ url` does not work on the
        # command line.
        cmd.append(req.url or str(req))
        try:
            subprocess.check_call(cmd)
        except subprocess.CalledProcessError as e:
            raise DistutilsError(str(e)) from e
        wheel = Wheel(glob.glob(os.path.join(tmpdir, '*.whl'))[0])
        dist_location = os.path.join(eggs_dir, wheel.egg_name())
        wheel.install_as_egg(dist_location)
        dist_metadata = pkg_resources.PathMetadata(
            dist_location, os.path.join(dist_location, 'EGG-INFO'))
        dist = pkg_resources.Distribution.from_filename(
            dist_location, metadata=dist_metadata)
        return dist


def strip_marker(req):
    """
    Return a new requirement without the environment marker to avoid
    calling pip with something like `babel; extra == "i18n"`, which
    would always be ignored.
    """
    # create a copy to avoid mutating the input
    req = pkg_resources.Requirement.parse(str(req))
    req.marker = None
    return req

Filemanager

Name Type Size Permission Actions
__pycache__ Folder 0755
_distutils Folder 0755
_vendor Folder 0755
command Folder 0755
config Folder 0755
extern Folder 0755
__init__.py File 8.23 KB 0644
_deprecation_warning.py File 218 B 0644
_entry_points.py File 2.23 KB 0644
_imp.py File 2.34 KB 0644
_importlib.py File 1.28 KB 0644
_itertools.py File 675 B 0644
_path.py File 749 B 0644
_reqs.py File 501 B 0644
archive_util.py File 7.17 KB 0644
build_meta.py File 19.14 KB 0644
dep_util.py File 949 B 0644
depends.py File 5.37 KB 0644
discovery.py File 20.31 KB 0644
dist.py File 44.19 KB 0644
errors.py File 2.41 KB 0644
extension.py File 5.46 KB 0644
glob.py File 4.76 KB 0644
installer.py File 3.73 KB 0644
launch.py File 812 B 0644
logging.py File 1.2 KB 0644
monkey.py File 4.74 KB 0644
msvc.py File 46.61 KB 0644
namespaces.py File 3.02 KB 0644
package_index.py File 39.38 KB 0644
py34compat.py File 245 B 0644
sandbox.py File 14.01 KB 0644
script (dev).tmpl File 218 B 0644
script.tmpl File 138 B 0644
unicode_utils.py File 941 B 0644
version.py File 144 B 0644
wheel.py File 8.18 KB 0644
windows_support.py File 718 B 0644