mirror of
https://github.com/pypa/pip
synced 2023-12-13 21:30:23 +01:00
Merge pull request #7771 from chrahunt/refactor/remove-extra-no-clean
Do not update `no_clean` option value in install/wheel
This commit is contained in:
commit
94c83c0766
|
@ -23,11 +23,7 @@ from pip._internal.cli import cmdoptions
|
||||||
from pip._internal.cli.cmdoptions import make_target_python
|
from pip._internal.cli.cmdoptions import make_target_python
|
||||||
from pip._internal.cli.req_command import RequirementCommand, with_cleanup
|
from pip._internal.cli.req_command import RequirementCommand, with_cleanup
|
||||||
from pip._internal.cli.status_codes import ERROR, SUCCESS
|
from pip._internal.cli.status_codes import ERROR, SUCCESS
|
||||||
from pip._internal.exceptions import (
|
from pip._internal.exceptions import CommandError, InstallationError
|
||||||
CommandError,
|
|
||||||
InstallationError,
|
|
||||||
PreviousBuildDirError,
|
|
||||||
)
|
|
||||||
from pip._internal.locations import distutils_scheme
|
from pip._internal.locations import distutils_scheme
|
||||||
from pip._internal.operations.check import check_install_conflicts
|
from pip._internal.operations.check import check_install_conflicts
|
||||||
from pip._internal.req import install_given_reqs
|
from pip._internal.req import install_given_reqs
|
||||||
|
@ -438,9 +434,6 @@ class InstallCommand(RequirementCommand):
|
||||||
logger.error(message, exc_info=show_traceback)
|
logger.error(message, exc_info=show_traceback)
|
||||||
|
|
||||||
return ERROR
|
return ERROR
|
||||||
except PreviousBuildDirError:
|
|
||||||
options.no_clean = True
|
|
||||||
raise
|
|
||||||
|
|
||||||
if options.target_dir:
|
if options.target_dir:
|
||||||
self._handle_target_dir(
|
self._handle_target_dir(
|
||||||
|
|
|
@ -12,7 +12,7 @@ import shutil
|
||||||
from pip._internal.cache import WheelCache
|
from pip._internal.cache import WheelCache
|
||||||
from pip._internal.cli import cmdoptions
|
from pip._internal.cli import cmdoptions
|
||||||
from pip._internal.cli.req_command import RequirementCommand, with_cleanup
|
from pip._internal.cli.req_command import RequirementCommand, with_cleanup
|
||||||
from pip._internal.exceptions import CommandError, PreviousBuildDirError
|
from pip._internal.exceptions import CommandError
|
||||||
from pip._internal.req.req_tracker import get_requirement_tracker
|
from pip._internal.req.req_tracker import get_requirement_tracker
|
||||||
from pip._internal.utils.misc import ensure_dir, normalize_path
|
from pip._internal.utils.misc import ensure_dir, normalize_path
|
||||||
from pip._internal.utils.temp_dir import TempDirectory
|
from pip._internal.utils.temp_dir import TempDirectory
|
||||||
|
@ -127,65 +127,61 @@ class WheelCommand(RequirementCommand):
|
||||||
with get_requirement_tracker() as req_tracker, TempDirectory(
|
with get_requirement_tracker() as req_tracker, TempDirectory(
|
||||||
options.build_dir, delete=build_delete, kind="wheel"
|
options.build_dir, delete=build_delete, kind="wheel"
|
||||||
) as directory:
|
) as directory:
|
||||||
try:
|
reqs = self.get_requirements(
|
||||||
reqs = self.get_requirements(
|
args, options, finder, session,
|
||||||
args, options, finder, session,
|
wheel_cache
|
||||||
wheel_cache
|
)
|
||||||
)
|
|
||||||
|
|
||||||
preparer = self.make_requirement_preparer(
|
preparer = self.make_requirement_preparer(
|
||||||
temp_build_dir=directory,
|
temp_build_dir=directory,
|
||||||
options=options,
|
options=options,
|
||||||
req_tracker=req_tracker,
|
req_tracker=req_tracker,
|
||||||
session=session,
|
session=session,
|
||||||
finder=finder,
|
finder=finder,
|
||||||
wheel_download_dir=options.wheel_dir,
|
wheel_download_dir=options.wheel_dir,
|
||||||
use_user_site=False,
|
use_user_site=False,
|
||||||
)
|
)
|
||||||
|
|
||||||
resolver = self.make_resolver(
|
resolver = self.make_resolver(
|
||||||
preparer=preparer,
|
preparer=preparer,
|
||||||
finder=finder,
|
finder=finder,
|
||||||
options=options,
|
options=options,
|
||||||
wheel_cache=wheel_cache,
|
wheel_cache=wheel_cache,
|
||||||
ignore_requires_python=options.ignore_requires_python,
|
ignore_requires_python=options.ignore_requires_python,
|
||||||
use_pep517=options.use_pep517,
|
use_pep517=options.use_pep517,
|
||||||
)
|
)
|
||||||
|
|
||||||
self.trace_basic_info(finder)
|
self.trace_basic_info(finder)
|
||||||
|
|
||||||
requirement_set = resolver.resolve(
|
requirement_set = resolver.resolve(
|
||||||
reqs, check_supported_wheels=True
|
reqs, check_supported_wheels=True
|
||||||
)
|
)
|
||||||
|
|
||||||
reqs_to_build = [
|
reqs_to_build = [
|
||||||
r for r in requirement_set.requirements.values()
|
r for r in requirement_set.requirements.values()
|
||||||
if should_build_for_wheel_command(r)
|
if should_build_for_wheel_command(r)
|
||||||
]
|
]
|
||||||
|
|
||||||
# build wheels
|
# build wheels
|
||||||
build_successes, build_failures = build(
|
build_successes, build_failures = build(
|
||||||
reqs_to_build,
|
reqs_to_build,
|
||||||
wheel_cache=wheel_cache,
|
wheel_cache=wheel_cache,
|
||||||
build_options=options.build_options or [],
|
build_options=options.build_options or [],
|
||||||
global_options=options.global_options or [],
|
global_options=options.global_options or [],
|
||||||
)
|
)
|
||||||
for req in build_successes:
|
for req in build_successes:
|
||||||
assert req.link and req.link.is_wheel
|
assert req.link and req.link.is_wheel
|
||||||
assert req.local_file_path
|
assert req.local_file_path
|
||||||
# copy from cache to target directory
|
# copy from cache to target directory
|
||||||
try:
|
try:
|
||||||
shutil.copy(req.local_file_path, options.wheel_dir)
|
shutil.copy(req.local_file_path, options.wheel_dir)
|
||||||
except OSError as e:
|
except OSError as e:
|
||||||
logger.warning(
|
logger.warning(
|
||||||
"Building wheel for %s failed: %s",
|
"Building wheel for %s failed: %s",
|
||||||
req.name, e,
|
req.name, e,
|
||||||
)
|
|
||||||
build_failures.append(req)
|
|
||||||
if len(build_failures) != 0:
|
|
||||||
raise CommandError(
|
|
||||||
"Failed to build one or more wheels"
|
|
||||||
)
|
)
|
||||||
except PreviousBuildDirError:
|
build_failures.append(req)
|
||||||
options.no_clean = True
|
if len(build_failures) != 0:
|
||||||
raise
|
raise CommandError(
|
||||||
|
"Failed to build one or more wheels"
|
||||||
|
)
|
||||||
|
|
Loading…
Reference in a new issue