diff --git a/AUTHORS.txt b/AUTHORS.txt index 0f0fb3caf98..e9d3c38916f 100644 --- a/AUTHORS.txt +++ b/AUTHORS.txt @@ -143,6 +143,7 @@ Clay McClure Cody Cody Soyland Colin Watson +Collin Anderson Connor Osborn Cooper Lees Cooper Ry Lees @@ -212,6 +213,7 @@ Dominic Davis-Foster Donald Stufft Dongweiming doron zarhi +Dos Moonen Douglas Thor DrFeathers Dustin Ingram @@ -274,6 +276,7 @@ gpiks Greg Roodt Greg Ward Guilherme Espada +Guillaume Seguin gutsytechster Guy Rozendorn Guy Tuval @@ -288,6 +291,7 @@ Henrich Hartzer Henry Schreiner Herbert Pfennig Holly Stotelmyer +Honnix Hsiaoming Yang Hugo Lopes Tavares Hugo van Kemenade @@ -358,6 +362,7 @@ Joseph Long Josh Bronson Josh Hansen Josh Schneier +Juan Luis Cano Rodríguez Juanjo Bazán Judah Rand Julian Berman @@ -399,6 +404,7 @@ Leon Sasson Lev Givon Lincoln de Sousa Lipis +lorddavidiii Loren Carvalho Lucas Cimon Ludovic Gasc @@ -432,6 +438,7 @@ Matt Maker Matt Robenolt matthew Matthew Einhorn +Matthew Feickert Matthew Gilliard Matthew Iversen Matthew Trumbell @@ -451,6 +458,7 @@ Michael Michael Aquilina Michael E. Karpeles Michael Klich +Michael Mintz Michael Williamson michaelpacer Michał Górny @@ -482,6 +490,7 @@ Nick Timkovich Nicolas Bock Nicole Harris Nikhil Benesch +Nikhil Ladha Nikita Chepanov Nikolay Korolev Nipunn Koorapati @@ -539,6 +548,7 @@ Philip Molloy Philippe Ombredanne Pi Delport Pierre-Yves Rofes +Pieter Degroote pip Prabakaran Kumaresshan Prabhjyotsing Surjit Singh Sodhi @@ -546,6 +556,7 @@ Prabhu Marappan Pradyun Gedam Prashant Sharma Pratik Mallya +pre-commit-ci[bot] Preet Thakkar Preston Holmes Przemek Wrzos @@ -576,6 +587,7 @@ robin elisha robinson Roey Berman Rohan Jain Roman Bogorodskiy +Roman Donchenko Romuald Brunet ronaudinho Ronny Pfannschmidt @@ -584,6 +596,7 @@ Ross Brattain Roy Wellington Ⅳ Ruairidh MacLeod Russell Keith-Magee +Ryan Shepherd Ryan Wooden ryneeverett Sachi King @@ -652,6 +665,7 @@ Tim Harder Tim Heap tim smith tinruufu +Tobias Hermann Tom Forbes Tom Freudenheim Tom V @@ -685,6 +699,7 @@ Vladimir Rutsky W. Trevor King Wil Tan Wilfred Hughes +William Edwards William ML Leslie William T Olson William Woodruff diff --git a/NEWS.rst b/NEWS.rst index 5169dad1d43..4ac7fed4a6c 100644 --- a/NEWS.rst +++ b/NEWS.rst @@ -9,6 +9,97 @@ .. towncrier release notes start +23.1 (2023-04-15) +================= + +Deprecations and Removals +------------------------- + +- Remove support for the deprecated ``--install-options``. (`#11358 `_) +- ``--no-binary`` does not imply ``setup.py install`` anymore. Instead a wheel will be + built locally and installed. (`#11451 `_) +- ``--no-binary`` does not disable the cache of locally built wheels anymore. It only + means "don't download wheels". (`#11453 `_) +- Deprecate ``--build-option`` and ``--global-option``. Users are invited to switch to + ``--config-settings``. (`#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 `_) +- Remove ``setup.py install`` fallback when building a wheel failed for projects without + ``pyproject.toml``. (`#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 `_) + +Features +-------- + +- Specify egg-link location in assertion message when it does not match installed location to provide better error message for debugging. (`#10476 `_) +- Present conflict information during installation after each choice that is rejected (pass ``-vv`` to ``pip install`` to show it) (`#10937 `_) +- Display dependency chain on each Collecting/Processing log line. (`#11169 `_) +- Support a per-requirement ``--config-settings`` option in requirements files. (`#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 `_) +- Add ``-C`` as a short version of the ``--config-settings`` option. (`#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 `_) +- Warn if ``--hash`` is used on a line without requirement in a requirements file. (`#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 `_) +- Support wheel cache when using ``--require-hashes``. (`#5037 `_) +- Add ``--keyring-provider`` flag. See the Authentication page in the documentation for more info. (`#8719 `_) +- In the case of virtual environments, configuration files are now also included from the base installation. (`#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 `_) +- Normalize paths before checking if installed scripts are on PATH. (`#11719 `_) +- Correct the way to decide if keyring is available. (`#11774 `_) +- More consistent resolution backtracking by removing legacy hack related to setuptools resolution (`#11837 `_) +- Include ``AUTHORS.txt`` in pip's wheels. (`#11882 `_) +- The ``uninstall`` and ``install --force-reinstall`` commands no longer call + ``normalize_path()`` repeatedly on the same paths. Instead, these results are + cached for the duration of an uninstall operation, resulting in improved + performance, particularly on Windows. (`#11889 `_) +- Fix and improve the parsing of hashes embedded in URL fragments. (`#11936 `_) +- When package A depends on package B provided as a direct URL dependency including a hash + embedded in the link, the ``--require-hashes`` option did not warn when user supplied hashes + were missing for package B. (`#11938 `_) +- Correctly report ``requested_extras`` in the installation report when extras are + specified for a local directory installation. (`#11946 `_) +- When installing an archive from a direct URL or local file, populate + ``download_info.info.hashes`` in the installation report, in addition to the legacy + ``download_info.info.hash`` key. (`#11948 `_) + +Vendored Libraries +------------------ + +- Upgrade msgpack to 1.0.5 +- Patch pkg_resources to remove dependency on ``jaraco.text``. +- Upgrade platformdirs to 3.2.0 +- Upgrade pygments to 2.14.0 +- Upgrade resolvelib to 1.0.1 +- Upgrade rich to 13.3.3 +- Upgrade setuptools to 67.6.1 +- Upgrade tenacity to 8.2.2 +- Upgrade typing_extensions to 4.5.0 +- Upgrade urllib3 to 1.26.15 + +Improved Documentation +---------------------- + +- Cross-reference the ``--python`` flag from the ``--prefix`` flag, + and mention limitations of ``--prefix`` regarding script installation. (`#11775 `_) +- Add SECURITY.md to make the policy offical. (`#11809 `_) +- Add username to Git over SSH example. (`#11838 `_) +- Quote extras in the pip install docs to guard shells with default glob + qualifiers, like zsh. (`#11842 `_) +- Make it clear that requirements/constraints file can be a URL (`#11954 `_) + + 23.0.1 (2023-02-17) =================== diff --git a/news/10476.feature.rst b/news/10476.feature.rst deleted file mode 100644 index 7c2757771a7..00000000000 --- a/news/10476.feature.rst +++ /dev/null @@ -1 +0,0 @@ -Specify egg-link location in assertion message when it does not match installed location to provide better error message for debugging. diff --git a/news/10937.feature.rst b/news/10937.feature.rst deleted file mode 100644 index 2974c577a10..00000000000 --- a/news/10937.feature.rst +++ /dev/null @@ -1 +0,0 @@ -Present conflict information during installation after each choice that is rejected (pass ``-vv`` to ``pip install`` to show it) diff --git a/news/11169.feature.rst b/news/11169.feature.rst deleted file mode 100644 index 54cc6637bc6..00000000000 --- a/news/11169.feature.rst +++ /dev/null @@ -1 +0,0 @@ -Display dependency chain on each Collecting/Processing log line. diff --git a/news/11325.feature.rst b/news/11325.feature.rst deleted file mode 100644 index 282310816b6..00000000000 --- a/news/11325.feature.rst +++ /dev/null @@ -1 +0,0 @@ -Support a per-requirement ``--config-settings`` option in requirements files. diff --git a/news/11358.removal.rst b/news/11358.removal.rst deleted file mode 100644 index 23e388a9a39..00000000000 --- a/news/11358.removal.rst +++ /dev/null @@ -1 +0,0 @@ -Remove support for the deprecated ``--install-options``. diff --git a/news/11451.removal.rst b/news/11451.removal.rst deleted file mode 100644 index c0d1100ed92..00000000000 --- a/news/11451.removal.rst +++ /dev/null @@ -1,2 +0,0 @@ -``--no-binary`` does not imply ``setup.py install`` anymore. Instead a wheel will be -built locally and installed. diff --git a/news/11453.removal.rst b/news/11453.removal.rst deleted file mode 100644 index 91ebfda0438..00000000000 --- a/news/11453.removal.rst +++ /dev/null @@ -1,2 +0,0 @@ -``--no-binary`` does not disable the cache of locally built wheels anymore. It only -means "don't download wheels". diff --git a/news/11529.bugfix.rst b/news/11529.bugfix.rst deleted file mode 100644 index d05e404602e..00000000000 --- a/news/11529.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -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. diff --git a/news/11681.feature.rst b/news/11681.feature.rst deleted file mode 100644 index 00cd05ee18d..00000000000 --- a/news/11681.feature.rst +++ /dev/null @@ -1,4 +0,0 @@ -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. diff --git a/news/11702.trivial.rst b/news/11702.trivial.rst deleted file mode 100644 index d27e33d78ce..00000000000 --- a/news/11702.trivial.rst +++ /dev/null @@ -1,2 +0,0 @@ -Strip command line prompts like "$" and "C:>" from the actual command -being copied using the copybutton. diff --git a/news/11719.bugfix.rst b/news/11719.bugfix.rst deleted file mode 100644 index c2ae8bc1d5e..00000000000 --- a/news/11719.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -Normalize paths before checking if installed scripts are on PATH. diff --git a/news/11774.bugfix.rst b/news/11774.bugfix.rst deleted file mode 100644 index 771246b0b54..00000000000 --- a/news/11774.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -Correct the way to decide if keyring is available. diff --git a/news/11775.doc.rst b/news/11775.doc.rst deleted file mode 100644 index 18274b7692a..00000000000 --- a/news/11775.doc.rst +++ /dev/null @@ -1,2 +0,0 @@ -Cross-reference the ``--python`` flag from the ``--prefix`` flag, -and mention limitations of ``--prefix`` regarding script installation. diff --git a/news/11786.feature.rst b/news/11786.feature.rst deleted file mode 100644 index 0da7f86373e..00000000000 --- a/news/11786.feature.rst +++ /dev/null @@ -1 +0,0 @@ -Add ``-C`` as a short version of the ``--config-settings`` option. diff --git a/news/11809.doc.rst b/news/11809.doc.rst deleted file mode 100644 index 68c49ea50d5..00000000000 --- a/news/11809.doc.rst +++ /dev/null @@ -1 +0,0 @@ -Add SECURITY.md to make the policy offical. diff --git a/news/11837.bugfix.rst b/news/11837.bugfix.rst deleted file mode 100644 index 6d33ed6800c..00000000000 --- a/news/11837.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -More consistent resolution backtracking by removing legacy hack related to setuptools resolution diff --git a/news/11838.doc.rst b/news/11838.doc.rst deleted file mode 100644 index 9630aa59885..00000000000 --- a/news/11838.doc.rst +++ /dev/null @@ -1 +0,0 @@ -Add username to Git over SSH example. diff --git a/news/11842.doc.rst b/news/11842.doc.rst deleted file mode 100644 index bd063996f54..00000000000 --- a/news/11842.doc.rst +++ /dev/null @@ -1,2 +0,0 @@ -Quote extras in the pip install docs to guard shells with default glob -qualifiers, like zsh. diff --git a/news/11859.removal.rst b/news/11859.removal.rst deleted file mode 100644 index b29cedd7557..00000000000 --- a/news/11859.removal.rst +++ /dev/null @@ -1,2 +0,0 @@ -Deprecate ``--build-option`` and ``--global-option``. Users are invited to switch to -``--config-settings``. diff --git a/news/11882.bugfix.rst b/news/11882.bugfix.rst deleted file mode 100644 index 5373487b188..00000000000 --- a/news/11882.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -Include ``AUTHORS.txt`` in pip's wheels. diff --git a/news/11889.bugfix.rst b/news/11889.bugfix.rst deleted file mode 100644 index e760fd1fbf4..00000000000 --- a/news/11889.bugfix.rst +++ /dev/null @@ -1,4 +0,0 @@ -The ``uninstall`` and ``install --force-reinstall`` commands no longer call -``normalize_path()`` repeatedly on the same paths. Instead, these results are -cached for the duration of an uninstall operation, resulting in improved -performance, particularly on Windows. diff --git a/news/11908.feature.rst b/news/11908.feature.rst deleted file mode 100644 index 2b9ec18d98f..00000000000 --- a/news/11908.feature.rst +++ /dev/null @@ -1 +0,0 @@ -Reduce the number of resolver rounds, since backjumping makes the resolver more efficient in finding solutions. This also makes pathological cases fail quicker. diff --git a/news/11915.removal.rst b/news/11915.removal.rst deleted file mode 100644 index e54b5d574c0..00000000000 --- a/news/11915.removal.rst +++ /dev/null @@ -1,3 +0,0 @@ -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/news/11935.feature.rst b/news/11935.feature.rst deleted file mode 100644 index b170ca1d8cd..00000000000 --- a/news/11935.feature.rst +++ /dev/null @@ -1 +0,0 @@ -Warn if ``--hash`` is used on a line without requirement in a requirements file. diff --git a/news/11936.bugfix.rst b/news/11936.bugfix.rst deleted file mode 100644 index 4ae3ad69a31..00000000000 --- a/news/11936.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -Fix and improve the parsing of hashes embedded in URL fragments. diff --git a/news/11938.bugfix.rst b/news/11938.bugfix.rst deleted file mode 100644 index b299f8e4ff5..00000000000 --- a/news/11938.bugfix.rst +++ /dev/null @@ -1,3 +0,0 @@ -When package A depends on package B provided as a direct URL dependency including a hash -embedded in the link, the ``--require-hashes`` option did not warn when user supplied hashes -were missing for package B. diff --git a/news/11941.feature.rst b/news/11941.feature.rst deleted file mode 100644 index 404f2cb2de6..00000000000 --- a/news/11941.feature.rst +++ /dev/null @@ -1,4 +0,0 @@ -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. diff --git a/news/11946.bugfix.rst b/news/11946.bugfix.rst deleted file mode 100644 index 74437dc828f..00000000000 --- a/news/11946.bugfix.rst +++ /dev/null @@ -1,2 +0,0 @@ -Correctly report ``requested_extras`` in the installation report when extras are -specified for a local directory installation. diff --git a/news/11948.bugfix.rst b/news/11948.bugfix.rst deleted file mode 100644 index 74af913814b..00000000000 --- a/news/11948.bugfix.rst +++ /dev/null @@ -1,3 +0,0 @@ -When installing an archive from a direct URL or local file, populate -``download_info.info.hashes`` in the installation report, in addition to the legacy -``download_info.info.hash`` key. diff --git a/news/11954.doc.rst b/news/11954.doc.rst deleted file mode 100644 index 946b4057f8b..00000000000 --- a/news/11954.doc.rst +++ /dev/null @@ -1 +0,0 @@ -Make it clear that requirements/constraints file can be a URL diff --git a/news/5037.feature.rst b/news/5037.feature.rst deleted file mode 100644 index fe4637b6cf2..00000000000 --- a/news/5037.feature.rst +++ /dev/null @@ -1 +0,0 @@ -Support wheel cache when using ``--require-hashes``. diff --git a/news/8368.removal.rst b/news/8368.removal.rst deleted file mode 100644 index 44ee33aa78c..00000000000 --- a/news/8368.removal.rst +++ /dev/null @@ -1,2 +0,0 @@ -Remove ``setup.py install`` fallback when building a wheel failed for projects without -``pyproject.toml``. diff --git a/news/8559.removal.rst b/news/8559.removal.rst deleted file mode 100644 index a0953dade6b..00000000000 --- a/news/8559.removal.rst +++ /dev/null @@ -1,2 +0,0 @@ -When the ``wheel`` package is not installed, pip now uses the default build backend -instead of ``setup.py install`` for project without ``pyproject.toml``. diff --git a/news/8719.feature.rst b/news/8719.feature.rst deleted file mode 100644 index 3f3caf2db89..00000000000 --- a/news/8719.feature.rst +++ /dev/null @@ -1 +0,0 @@ -Add ``--keyring-provider`` flag. See the Authentication page in the documentation for more info. diff --git a/news/9752.feature.rst b/news/9752.feature.rst deleted file mode 100644 index d515267be21..00000000000 --- a/news/9752.feature.rst +++ /dev/null @@ -1 +0,0 @@ -In the case of virtual environments, configuration files are now also included from the base installation. diff --git a/news/CD497476-8620-449D-8E31-799CDBCF3FD6.trivial.rst b/news/CD497476-8620-449D-8E31-799CDBCF3FD6.trivial.rst deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/news/msgpack.vendor.rst b/news/msgpack.vendor.rst deleted file mode 100644 index 9193b7ce52b..00000000000 --- a/news/msgpack.vendor.rst +++ /dev/null @@ -1 +0,0 @@ -Upgrade msgpack to 1.0.5 diff --git a/news/pkg_resources.vendor.rst b/news/pkg_resources.vendor.rst deleted file mode 100644 index a20817dfb24..00000000000 --- a/news/pkg_resources.vendor.rst +++ /dev/null @@ -1 +0,0 @@ -Patch pkg_resources to remove dependency on ``jaraco.text``. diff --git a/news/platformdirs.vendor.rst b/news/platformdirs.vendor.rst deleted file mode 100644 index 939253e14fc..00000000000 --- a/news/platformdirs.vendor.rst +++ /dev/null @@ -1 +0,0 @@ -Upgrade platformdirs to 3.2.0 diff --git a/news/pygments.vendor.rst b/news/pygments.vendor.rst deleted file mode 100644 index a6c8edafc69..00000000000 --- a/news/pygments.vendor.rst +++ /dev/null @@ -1 +0,0 @@ -Upgrade pygments to 2.14.0 diff --git a/news/resolvelib.vendor.rst b/news/resolvelib.vendor.rst deleted file mode 100644 index ad55516edea..00000000000 --- a/news/resolvelib.vendor.rst +++ /dev/null @@ -1 +0,0 @@ -Upgrade resolvelib to 1.0.1 diff --git a/news/rich.vendor.rst b/news/rich.vendor.rst deleted file mode 100644 index 0bedd3bb4e1..00000000000 --- a/news/rich.vendor.rst +++ /dev/null @@ -1 +0,0 @@ -Upgrade rich to 13.3.3 diff --git a/news/setuptools.vendor.rst b/news/setuptools.vendor.rst deleted file mode 100644 index 9cf3f49e21c..00000000000 --- a/news/setuptools.vendor.rst +++ /dev/null @@ -1 +0,0 @@ -Upgrade setuptools to 67.6.1 diff --git a/news/tenacity.vendor.rst b/news/tenacity.vendor.rst deleted file mode 100644 index 493d38d0195..00000000000 --- a/news/tenacity.vendor.rst +++ /dev/null @@ -1 +0,0 @@ -Upgrade tenacity to 8.2.2 diff --git a/news/typing_extensions.vendor.rst b/news/typing_extensions.vendor.rst deleted file mode 100644 index e71aeb66309..00000000000 --- a/news/typing_extensions.vendor.rst +++ /dev/null @@ -1 +0,0 @@ -Upgrade typing_extensions to 4.5.0 diff --git a/news/urllib3.vendor.rst b/news/urllib3.vendor.rst deleted file mode 100644 index 09e82a8f2ff..00000000000 --- a/news/urllib3.vendor.rst +++ /dev/null @@ -1 +0,0 @@ -Upgrade urllib3 to 1.26.15 diff --git a/src/pip/__init__.py b/src/pip/__init__.py index ce90d06bfd4..20d8bf56c17 100644 --- a/src/pip/__init__.py +++ b/src/pip/__init__.py @@ -1,6 +1,6 @@ from typing import List, Optional -__version__ = "23.1.dev0" +__version__ = "23.2.dev0" def main(args: Optional[List[str]] = None) -> int: