[ Avaa Bypassed ]




Upload:

Command:

hmhc3928@3.139.102.136: ~ $
# -*- coding: utf-8 -*-

from __future__ import absolute_import

import logging
import os
import shutil

from pip._internal.cache import WheelCache
from pip._internal.cli import cmdoptions
from pip._internal.cli.req_command import RequirementCommand, with_cleanup
from pip._internal.cli.status_codes import SUCCESS
from pip._internal.exceptions import CommandError
from pip._internal.req.req_tracker import get_requirement_tracker
from pip._internal.utils.misc import ensure_dir, normalize_path
from pip._internal.utils.temp_dir import TempDirectory
from pip._internal.utils.typing import MYPY_CHECK_RUNNING
from pip._internal.wheel_builder import build, should_build_for_wheel_command

if MYPY_CHECK_RUNNING:
    from optparse import Values
    from typing import List


logger = logging.getLogger(__name__)


class WheelCommand(RequirementCommand):
    """
    Build Wheel archives for your requirements and dependencies.

    Wheel is a built-package format, and offers the advantage of not
    recompiling your software during every install. For more details, see the
    wheel docs: https://wheel.readthedocs.io/en/latest/

    Requirements: setuptools>=0.8, and wheel.

    'pip wheel' uses the bdist_wheel setuptools extension from the wheel
    package to build individual wheels.

    """

    usage = """
      %prog [options] <requirement specifier> ...
      %prog [options] -r <requirements file> ...
      %prog [options] [-e] <vcs project url> ...
      %prog [options] [-e] <local project path> ...
      %prog [options] <archive url/path> ..."""

    def add_options(self):
        # type: () -> None

        self.cmd_opts.add_option(
            '-w', '--wheel-dir',
            dest='wheel_dir',
            metavar='dir',
            default=os.curdir,
            help=("Build wheels into <dir>, where the default is the "
                  "current working directory."),
        )
        self.cmd_opts.add_option(cmdoptions.no_binary())
        self.cmd_opts.add_option(cmdoptions.only_binary())
        self.cmd_opts.add_option(cmdoptions.prefer_binary())
        self.cmd_opts.add_option(
            '--build-option',
            dest='build_options',
            metavar='options',
            action='append',
            help="Extra arguments to be supplied to 'setup.py bdist_wheel'.",
        )
        self.cmd_opts.add_option(cmdoptions.no_build_isolation())
        self.cmd_opts.add_option(cmdoptions.use_pep517())
        self.cmd_opts.add_option(cmdoptions.no_use_pep517())
        self.cmd_opts.add_option(cmdoptions.constraints())
        self.cmd_opts.add_option(cmdoptions.editable())
        self.cmd_opts.add_option(cmdoptions.requirements())
        self.cmd_opts.add_option(cmdoptions.src())
        self.cmd_opts.add_option(cmdoptions.ignore_requires_python())
        self.cmd_opts.add_option(cmdoptions.no_deps())
        self.cmd_opts.add_option(cmdoptions.build_dir())
        self.cmd_opts.add_option(cmdoptions.progress_bar())

        self.cmd_opts.add_option(
            '--global-option',
            dest='global_options',
            action='append',
            metavar='options',
            help="Extra global options to be supplied to the setup.py "
            "call before the 'bdist_wheel' command.")

        self.cmd_opts.add_option(
            '--pre',
            action='store_true',
            default=False,
            help=("Include pre-release and development versions. By default, "
                  "pip only finds stable versions."),
        )

        self.cmd_opts.add_option(cmdoptions.require_hashes())

        index_opts = cmdoptions.make_option_group(
            cmdoptions.index_group,
            self.parser,
        )

        self.parser.insert_option_group(0, index_opts)
        self.parser.insert_option_group(0, self.cmd_opts)

    @with_cleanup
    def run(self, options, args):
        # type: (Values, List[str]) -> int
        cmdoptions.check_install_build_global(options)

        session = self.get_default_session(options)

        finder = self._build_package_finder(options, session)
        build_delete = (not (options.no_clean or options.build_dir))
        wheel_cache = WheelCache(options.cache_dir, options.format_control)

        options.wheel_dir = normalize_path(options.wheel_dir)
        ensure_dir(options.wheel_dir)

        req_tracker = self.enter_context(get_requirement_tracker())

        directory = TempDirectory(
            options.build_dir,
            delete=build_delete,
            kind="wheel",
            globally_managed=True,
        )

        reqs = self.get_requirements(args, options, finder, session)

        preparer = self.make_requirement_preparer(
            temp_build_dir=directory,
            options=options,
            req_tracker=req_tracker,
            session=session,
            finder=finder,
            wheel_download_dir=options.wheel_dir,
            use_user_site=False,
        )

        resolver = self.make_resolver(
            preparer=preparer,
            finder=finder,
            options=options,
            wheel_cache=wheel_cache,
            ignore_requires_python=options.ignore_requires_python,
            use_pep517=options.use_pep517,
        )

        self.trace_basic_info(finder)

        requirement_set = resolver.resolve(
            reqs, check_supported_wheels=True
        )

        reqs_to_build = [
            r for r in requirement_set.requirements.values()
            if should_build_for_wheel_command(r)
        ]

        # build wheels
        build_successes, build_failures = build(
            reqs_to_build,
            wheel_cache=wheel_cache,
            build_options=options.build_options or [],
            global_options=options.global_options or [],
        )
        for req in build_successes:
            assert req.link and req.link.is_wheel
            assert req.local_file_path
            # copy from cache to target directory
            try:
                shutil.copy(req.local_file_path, options.wheel_dir)
            except OSError as e:
                logger.warning(
                    "Building wheel for %s failed: %s",
                    req.name, e,
                )
                build_failures.append(req)
        if len(build_failures) != 0:
            raise CommandError(
                "Failed to build one or more wheels"
            )

        return SUCCESS

Filemanager

Name Type Size Permission Actions
__pycache__ Folder 0755
.__init__.pyo.40009 File 3.48 KB 0644
.cache.pyo.40009 File 5.45 KB 0644
.check.pyo.40009 File 1.91 KB 0644
.completion.pyo.40009 File 3.51 KB 0644
.configuration.pyo.40009 File 9.52 KB 0644
.debug.pyo.40009 File 7.9 KB 0644
.download.pyo.40009 File 4.7 KB 0644
.freeze.pyo.40009 File 3.69 KB 0644
.hash.pyo.40009 File 2.67 KB 0644
.help.pyo.40009 File 1.68 KB 0644
.list.pyo.40009 File 10.33 KB 0644
.show.pyo.40009 File 6.59 KB 0644
.uninstall.pyo.40009 File 3.47 KB 0644
__init__.py File 4 KB 0644
__init__.pyc File 3.48 KB 0644
__init__.pyo File 3.48 KB 0644
cache.py File 5.54 KB 0644
cache.pyc File 5.45 KB 0644
cache.pyo File 5.45 KB 0644
check.py File 1.64 KB 0644
check.pyc File 1.91 KB 0644
check.pyo File 1.91 KB 0644
completion.py File 3.01 KB 0644
completion.pyc File 3.51 KB 0644
completion.pyo File 3.51 KB 0644
configuration.py File 9.13 KB 0644
configuration.pyc File 9.52 KB 0644
configuration.pyo File 9.52 KB 0644
debug.py File 7.14 KB 0644
debug.pyc File 7.9 KB 0644
debug.pyo File 7.9 KB 0644
download.py File 4.8 KB 0644
download.pyc File 4.7 KB 0644
download.pyo File 4.7 KB 0644
freeze.py File 3.37 KB 0644
freeze.pyc File 3.69 KB 0644
freeze.pyo File 3.69 KB 0644
hash.py File 1.8 KB 0644
hash.pyc File 2.67 KB 0644
hash.pyo File 2.67 KB 0644
help.py File 1.24 KB 0644
help.pyc File 1.68 KB 0644
help.pyo File 1.68 KB 0644
install.py File 28.05 KB 0644
install.pyc File 20.44 KB 0644
install.pyo File 20.38 KB 0644
list.py File 11.05 KB 0644
list.pyc File 10.33 KB 0644
list.pyo File 10.33 KB 0644
search.py File 5.62 KB 0644
search.pyc File 5.81 KB 0644
search.pyo File 5.77 KB 0644
show.py File 6.83 KB 0644
show.pyc File 6.59 KB 0644
show.pyo File 6.59 KB 0644
uninstall.py File 3.23 KB 0644
uninstall.pyc File 3.47 KB 0644
uninstall.pyo File 3.47 KB 0644
wheel.py File 6.27 KB 0644
wheel.pyc File 5.8 KB 0644
wheel.pyo File 5.72 KB 0644