diff --git a/src/pip/_internal/commands/install.py b/src/pip/_internal/commands/install.py index df21e7ceca2..20df6c25ce7 100644 --- a/src/pip/_internal/commands/install.py +++ b/src/pip/_internal/commands/install.py @@ -359,9 +359,6 @@ def run(self, options, args): # If we're using PEP 517, we cannot do a direct install # so we fail here. - # We don't care about failures building legacy - # requirements, as we'll fall through to a direct - # install for those. pep517_build_failures = [ r for r in build_failures if r.use_pep517 ] @@ -371,6 +368,26 @@ def run(self, options, args): " PEP 517 and cannot be installed directly".format( ", ".join(r.name for r in pep517_build_failures))) + # For now, we just warn about failures building legacy + # requirements, as we'll fall through to a direct + # install for those. + legacy_build_failures = [ + r for r in build_failures if not r.use_pep517 + ] + if legacy_build_failures: + deprecated( + reason=( + "Could not build wheels for {} which do not use " + "PEP 517. pip will fall back to legacy setup.py " + "install for these.".format( + ", ".join(r.name for r in legacy_build_failures) + ) + ), + replacement="to fix the wheel build issue reported above", + gone_in="20.3", + issue=8368, + ) + to_install = resolver.get_installation_order( requirement_set )