Remove support for the deprecated --install-options. ([#11358](https://github.com/pypa/pip/issues/11358) <https://github.com/pypa/pip/issues/11358>_)
--no-binary does not imply setup.py install anymore. Instead a wheel will be
built locally and installed. ([#11451](https://github.com/pypa/pip/issues/11451) <https://github.com/pypa/pip/issues/11451>_)
--no-binary does not disable the cache of locally built wheels anymore. It only
means "don't download wheels". ([#11453](https://github.com/pypa/pip/issues/11453) <https://github.com/pypa/pip/issues/11453>_)
Deprecate --build-option and --global-option. Users are invited to switch to
--config-settings. ([#11859](https://github.com/pypa/pip/issues/11859) <https://github.com/pypa/pip/issues/11859>_)
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. ([#11915](https://github.com/pypa/pip/issues/11915) <https://github.com/pypa/pip/issues/11915>_)
Remove setup.py install fallback when building a wheel failed for projects without
pyproject.toml. ([#8368](https://github.com/pypa/pip/issues/8368) <https://github.com/pypa/pip/issues/8368>_)
When the wheel package is not installed, pip now uses the default build backend
instead of setup.py install for project without pyproject.toml. ([#8559](https://github.com/pypa/pip/issues/8559) <https://github.com/pypa/pip/issues/8559>_)
Features
Specify egg-link location in assertion message when it does not match installed location to provide better error message for debugging. ([#10476](https://github.com/pypa/pip/issues/10476) <https://github.com/pypa/pip/issues/10476>_)
Present conflict information during installation after each choice that is rejected (pass -vv to pip install to show it) ([#10937](https://github.com/pypa/pip/issues/10937) <https://github.com/pypa/pip/issues/10937>_)
Display dependency chain on each Collecting/Processing log line. ([#11169](https://github.com/pypa/pip/issues/11169) <https://github.com/pypa/pip/issues/11169>_)
Support a per-requirement --config-settings option in requirements files. ([#11325](https://github.com/pypa/pip/issues/11325) <https://github.com/pypa/pip/issues/11325>_)
The --config-settings/-C option now supports using the same key multiple
times. When the same key is specified multiple times, all values are passed to
the build backend as a list, as opposed to the previous behavior, where pip would
only pass the last value if the same key was used multiple times. ([#11681](https://github.com/pypa/pip/issues/11681) <https://github.com/pypa/pip/issues/11681>_)
Add -C as a short version of the --config-settings option. ([#11786](https://github.com/pypa/pip/issues/11786) <https://github.com/pypa/pip/issues/11786>_)
Reduce the number of resolver rounds, since backjumping makes the resolver more efficient in finding solutions. This also makes pathological cases fail quicker. ([#11908](https://github.com/pypa/pip/issues/11908) <https://github.com/pypa/pip/issues/11908>_)
Warn if --hash is used on a line without requirement in a requirements file. ([#11935](https://github.com/pypa/pip/issues/11935) <https://github.com/pypa/pip/issues/11935>_)
Stop propagating CLI --config-settings to the build dependencies. They already did
not propagate to requirements provided in requirement files. To pass the same config
settings to several requirements, users should provide the requirements as CLI
arguments. ([#11941](https://github.com/pypa/pip/issues/11941) <https://github.com/pypa/pip/issues/11941>_)
Support wheel cache when using --require-hashes. ([#5037](https://github.com/pypa/pip/issues/5037) <https://github.com/pypa/pip/issues/5037>_)
Add --keyring-provider flag. See the Authentication page in the documentation for more info. ([#8719](https://github.com/pypa/pip/issues/8719) <https://github.com/pypa/pip/issues/8719>_)
In the case of virtual environments, configuration files are now also included from the base installation. ([#9752](https://github.com/pypa/pip/issues/9752) <https://github.com/pypa/pip/issues/9752>_)
Bug Fixes
Fix grammar by changing "A new release of pip available:" to "A new release of pip is available:" in the notice used for indicating that. ([#11529](https://github.com/pypa/pip/issues/11529) <https://github.com/pypa/pip/issues/11529>_)
Normalize paths before checking if installed scripts are on PATH. ([#11719](https://github.com/pypa/pip/issues/11719) <https://github.com/pypa/pip/issues/11719>_)
Correct the way to decide if keyring is available. ([#11774](https://github.com/pypa/pip/issues/11774) <https://github.com/pypa/pip/issues/11774>_)
More consistent resolution backtracking by removing legacy hack related to setuptools resolution ([#11837](https://github.com/pypa/pip/issues/11837) <https://github.com/pypa/pip/issues/11837>_)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Updates the requirements on pip to permit the latest version.
Changelog
Sourced from pip's changelog.
... (truncated)
Commits
6424ac4
Bump for release868338f
Update AUTHORS.txt4f3a4f7
Merge pull request #11919 from sbidoul/deprecate-legacy-ignore-config-setting...dbf4e68
Merge pull request #11897 from sbidoul/cache-hash-checking-sbiefe2d27
Further refactor is_wheel_from_cache4beca6b
Improve testbd746e3
Introduce ireq.cached_wheel_source_linkcaafe6e
Add a couple of assertsa6ef648
Rename original_link_is_in_wheel_cache to is_wheel_from_cacheff8c8e3
CosmeticsDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)