diff options
author | Stéphane Bidoul <stephane.bidoul@gmail.com> | 2023-04-15 11:39:22 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-04-15 11:39:22 +0200 |
commit | 4f3a4f72697299da1a412cf10c919a989e0692f5 (patch) | |
tree | f60c44322c3242c8ea9bea017db926793a9fbfe6 | |
parent | dbf4e6842c9603792f6d3944a5c9cec17bd0a92a (diff) | |
parent | 2ff2d0e375e163792e5dec8ef48481074c86e90a (diff) | |
download | pip-4f3a4f72697299da1a412cf10c919a989e0692f5.tar.gz |
Merge pull request #11919 from sbidoul/deprecate-legacy-ignore-config-settings-sbi
Deprecate legacy projects ignoring config settings
-rw-r--r-- | news/11915.removal.rst | 3 | ||||
-rw-r--r-- | src/pip/_internal/pyproject.py | 2 | ||||
-rw-r--r-- | src/pip/_internal/req/req_install.py | 9 |
3 files changed, 13 insertions, 1 deletions
diff --git a/news/11915.removal.rst b/news/11915.removal.rst new file mode 100644 index 000000000..e54b5d574 --- /dev/null +++ b/news/11915.removal.rst @@ -0,0 +1,3 @@ +Using ``--config-settings`` with projects that don't have a ``pyproject.toml`` now print +a deprecation warning. In the future the presence of config settings will automatically +enable the default build backend for legacy projects and pass the setttings to it. diff --git a/src/pip/_internal/pyproject.py b/src/pip/_internal/pyproject.py index 57fef5707..eb8e12b2d 100644 --- a/src/pip/_internal/pyproject.py +++ b/src/pip/_internal/pyproject.py @@ -91,7 +91,7 @@ def load_pyproject_toml( # If we haven't worked out whether to use PEP 517 yet, # and the user hasn't explicitly stated a preference, # we do so if the project has a pyproject.toml file - # or if we cannot import setuptools. + # or if we cannot import setuptools or wheels. # We fallback to PEP 517 when without setuptools or without the wheel package, # so setuptools can be installed as a default build backend. diff --git a/src/pip/_internal/req/req_install.py b/src/pip/_internal/req/req_install.py index a0ea58bd1..d01b24a91 100644 --- a/src/pip/_internal/req/req_install.py +++ b/src/pip/_internal/req/req_install.py @@ -486,6 +486,15 @@ class InstallRequirement: ) if pyproject_toml_data is None: + if self.config_settings: + deprecated( + reason=f"Config settings are ignored for project {self}.", + replacement=( + "to use --use-pep517 or add a " + "pyproject.toml file to the project" + ), + gone_in="23.3", + ) self.use_pep517 = False return |