mirror of
https://github.com/pypa/pip
synced 2023-12-13 21:30:23 +01:00
Deprecate --no-binary disabling the wheel cache
This commit is contained in:
parent
bad03ef931
commit
08eb492641
1
news/11454.removal.rst
Normal file
1
news/11454.removal.rst
Normal file
|
@ -0,0 +1 @@
|
|||
Deprecate ```--no-binary`` disabling the wheel cache.
|
|
@ -221,7 +221,11 @@ class WheelCache(Cache):
|
|||
when a certain link is not found in the simple wheel cache first.
|
||||
"""
|
||||
|
||||
def __init__(self, cache_dir: str, format_control: FormatControl) -> None:
|
||||
def __init__(
|
||||
self, cache_dir: str, format_control: Optional[FormatControl] = None
|
||||
) -> None:
|
||||
if format_control is None:
|
||||
format_control = FormatControl()
|
||||
super().__init__(cache_dir, format_control, {"binary"})
|
||||
self._wheel_cache = SimpleWheelCache(cache_dir, format_control)
|
||||
self._ephem_cache = EphemWheelCache(format_control)
|
||||
|
|
|
@ -1007,7 +1007,12 @@ use_new_feature: Callable[..., Option] = partial(
|
|||
metavar="feature",
|
||||
action="append",
|
||||
default=[],
|
||||
choices=["2020-resolver", "fast-deps", "truststore"],
|
||||
choices=[
|
||||
"2020-resolver",
|
||||
"fast-deps",
|
||||
"truststore",
|
||||
"no-binary-enable-wheel-cache",
|
||||
],
|
||||
help="Enable new functionality, that may be backward incompatible.",
|
||||
)
|
||||
|
||||
|
|
|
@ -29,7 +29,10 @@ from pip._internal.operations.check import ConflictDetails, check_install_confli
|
|||
from pip._internal.req import install_given_reqs
|
||||
from pip._internal.req.req_install import InstallRequirement
|
||||
from pip._internal.utils.compat import WINDOWS
|
||||
from pip._internal.utils.deprecation import LegacyInstallReasonFailedBdistWheel
|
||||
from pip._internal.utils.deprecation import (
|
||||
LegacyInstallReasonFailedBdistWheel,
|
||||
deprecated,
|
||||
)
|
||||
from pip._internal.utils.distutils_args import parse_distutils_args
|
||||
from pip._internal.utils.filesystem import test_writable_dir
|
||||
from pip._internal.utils.logging import getLogger
|
||||
|
@ -326,8 +329,6 @@ class InstallCommand(RequirementCommand):
|
|||
target_python=target_python,
|
||||
ignore_requires_python=options.ignore_requires_python,
|
||||
)
|
||||
wheel_cache = WheelCache(options.cache_dir, options.format_control)
|
||||
|
||||
build_tracker = self.enter_context(get_build_tracker())
|
||||
|
||||
directory = TempDirectory(
|
||||
|
@ -339,6 +340,25 @@ class InstallCommand(RequirementCommand):
|
|||
try:
|
||||
reqs = self.get_requirements(args, options, finder, session)
|
||||
|
||||
if "no-binary-enable-wheel-cache" in options.features_enabled:
|
||||
# TODO: remove format_control from WheelCache when the deprecation cycle
|
||||
# is over
|
||||
wheel_cache = WheelCache(options.cache_dir)
|
||||
else:
|
||||
if options.format_control.no_binary:
|
||||
deprecated(
|
||||
reason=(
|
||||
"--no-binary currently disables reading from "
|
||||
"the cache of locally built wheels. In the future "
|
||||
"--no-binary will not influence the wheel cache."
|
||||
),
|
||||
replacement="to use the --no-cache-dir option",
|
||||
feature_flag="no-binary-enable-wheel-cache",
|
||||
issue=11453,
|
||||
gone_in="23.1",
|
||||
)
|
||||
wheel_cache = WheelCache(options.cache_dir, options.format_control)
|
||||
|
||||
# Only when installing is it permitted to use PEP 660.
|
||||
# In other circumstances (pip wheel, pip download) we generate
|
||||
# regular (i.e. non editable) metadata and wheels.
|
||||
|
|
|
@ -11,6 +11,7 @@ from pip._internal.cli.status_codes import SUCCESS
|
|||
from pip._internal.exceptions import CommandError
|
||||
from pip._internal.operations.build.build_tracker import get_build_tracker
|
||||
from pip._internal.req.req_install import InstallRequirement
|
||||
from pip._internal.utils.deprecation import deprecated
|
||||
from pip._internal.utils.misc import ensure_dir, normalize_path
|
||||
from pip._internal.utils.temp_dir import TempDirectory
|
||||
from pip._internal.wheel_builder import build, should_build_for_wheel_command
|
||||
|
@ -120,6 +121,25 @@ class WheelCommand(RequirementCommand):
|
|||
|
||||
reqs = self.get_requirements(args, options, finder, session)
|
||||
|
||||
if "no-binary-enable-wheel-cache" in options.features_enabled:
|
||||
# TODO: remove format_control from WheelCache when the deprecation cycle
|
||||
# is over
|
||||
wheel_cache = WheelCache(options.cache_dir)
|
||||
else:
|
||||
if options.format_control.no_binary:
|
||||
deprecated(
|
||||
reason=(
|
||||
"--no-binary currently disables reading from "
|
||||
"the cache of locally built wheels. In the future "
|
||||
"--no-binary will not influence the wheel cache."
|
||||
),
|
||||
replacement="to use the --no-cache-dir option",
|
||||
feature_flag="no-binary-enable-wheel-cache",
|
||||
issue=11453,
|
||||
gone_in="23.1",
|
||||
)
|
||||
wheel_cache = WheelCache(options.cache_dir, options.format_control)
|
||||
|
||||
preparer = self.make_requirement_preparer(
|
||||
temp_build_dir=directory,
|
||||
options=options,
|
||||
|
|
Loading…
Reference in a new issue