diff --git a/NEWS.rst b/NEWS.rst index 4e7de4bd46a..9e139692fb1 100644 --- a/NEWS.rst +++ b/NEWS.rst @@ -9,6 +9,86 @@ .. towncrier release notes start +22.2 (2022-07-21) +================= + +Deprecations and Removals +------------------------- + +- Remove the ``html5lib`` deprecated feature flag. (`#10825 `_) +- Remove ``--use-deprecated=backtrack-on-build-failures``. (`#11241 `_) + +Features +-------- + +- Add support to use `truststore `_ as an + alternative SSL certificate verification backend. The backend can be enabled on Python + 3.10 and later by installing ``truststore`` into the environment, and adding the + ``--use-feature=truststore`` flag to various pip commands. + + ``truststore`` differs from the current default verification backend (provided by + ``certifi``) in it uses the operating system’s trust store, which can be better + controlled and augmented to better support non-standard certificates. Depending on + feedback, pip may switch to this as the default certificate verification backend in + the future. (`#11082 `_) +- Add ``--dry-run`` option to ``pip install``, to let it print what it would install but + not actually change anything in the target environment. (`#11096 `_) +- Record in wheel cache entries the URL of the original artifact that was downloaded + to build the cached wheels. The record is named ``origin.json`` and uses the PEP 610 + Direct URL format. (`#11137 `_) +- Support `PEP 691 `_. (`#11158 `_) +- pip's deprecation warnings now subclass the built-in ``DeprecationWarning``, and + can be suppressed by running the Python interpreter with + ``-W ignore::DeprecationWarning``. (`#11225 `_) +- Add ``pip inspect`` command to obtain the list of installed distributions and other + information about the Python environment, in JSON format. (`#11245 `_) +- Significantly speed up isolated environment creation, by using the same + sources for pip instead of creating a standalone installation for each + environment. (`#11257 `_) +- Add an experimental ``--report`` option to the install command to generate a JSON report + of what was installed. In combination with ``--dry-run`` and ``--ignore-installed`` it + can be used to resolve the requirements. (`#53 `_) + +Bug Fixes +--------- + +- Fix ``pip install --pre`` for packages with pre-release build dependencies defined + both in ``pyproject.toml``'s ``build-system.requires`` and ``setup.py``'s + ``setup_requires``. (`#10222 `_) +- When pip rewrites the shebang line in a script during wheel installation, + update the hash and size in the corresponding ``RECORD`` file entry. (`#10744 `_) +- Do not consider a ``.dist-info`` directory found inside a wheel-like zip file + as metadata for an installed distribution. A package in a wheel is (by + definition) not installed, and is not guaranteed to work due to how a wheel is + structured. (`#11217 `_) +- Use ``importlib.resources`` to read the ``vendor.txt`` file in ``pip debug``. + This makes the command safe for use from a zipapp. (`#11248 `_) +- Make the ``--use-pep517`` option of the ``download`` command apply not just + to the requirements specified on the command line, but to their dependencies, + as well. (`#9523 `_) + +Process +------- + +- Remove reliance on the stdlib cgi module, which is deprecated in Python 3.11. + +Vendored Libraries +------------------ + +- Remove html5lib. +- Upgrade certifi to 2022.6.15 +- Upgrade chardet to 5.0.0 +- Upgrade colorama to 0.4.5 +- Upgrade distlib to 0.3.5 +- Upgrade msgpack to 1.0.4 +- Upgrade pygments to 2.12.0 +- Upgrade pyparsing to 3.0.9 +- Upgrade requests to 2.28.1 +- Upgrade rich to 12.5.1 +- Upgrade typing_extensions to 4.3.0 +- Upgrade urllib3 to 1.26.10 + + 22.1.2 (2022-05-31) =================== diff --git a/news/10222.bugfix.rst b/news/10222.bugfix.rst deleted file mode 100644 index 0595e2b87e5..00000000000 --- a/news/10222.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -Fix ``pip install --pre`` for packages with pre-release build dependencies defined both in ``pyproject.toml``'s ``build-system.requires`` and ``setup.py``'s ``setup_requires``. diff --git a/news/10721.trivial.rst b/news/10721.trivial.rst deleted file mode 100644 index 8ea9fdfa7df..00000000000 --- a/news/10721.trivial.rst +++ /dev/null @@ -1 +0,0 @@ -Disallow use of script fixture in unit tests. diff --git a/news/10744.bugfix.rst b/news/10744.bugfix.rst deleted file mode 100644 index 46ea209a48b..00000000000 --- a/news/10744.bugfix.rst +++ /dev/null @@ -1,2 +0,0 @@ -When pip rewrites the shebang line in a script during wheel installation, -update the hash and size in the corresponding ``RECORD`` file entry. diff --git a/news/10825.removal.rst b/news/10825.removal.rst deleted file mode 100644 index 542a5f775aa..00000000000 --- a/news/10825.removal.rst +++ /dev/null @@ -1 +0,0 @@ -Remove the ``html5lib`` deprecated feature flag. diff --git a/news/11082.feature.rst b/news/11082.feature.rst deleted file mode 100644 index 105fc44d655..00000000000 --- a/news/11082.feature.rst +++ /dev/null @@ -1,3 +0,0 @@ -Add support to use `truststore `_ as an alternative SSL certificate verification backend. The backend can be enabled on Python 3.10 and later by installing ``truststore`` into the environment, and adding the ``--use-feature=truststore`` flag to various pip commands. - -``truststore`` differs from the current default verification backend (provided by ``certifi``) in it uses the operating system’s trust store, which can be better controlled and augmented to better support non-standard certificates. Depending on feedback, pip may switch to this as the default certificate verification backend in the future. diff --git a/news/11096.feature.rst b/news/11096.feature.rst deleted file mode 100644 index c7b2346a295..00000000000 --- a/news/11096.feature.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add ``--dry-run`` option to ``pip install``, to let it print what it would install but -not actually change anything in the target environment. diff --git a/news/11099.process.rst b/news/11099.process.rst deleted file mode 100644 index 2dc111a8e96..00000000000 --- a/news/11099.process.rst +++ /dev/null @@ -1 +0,0 @@ -Remove reliance on the stdlib cgi module, which is deprecated in Python 3.11. diff --git a/news/11137.feature.rst b/news/11137.feature.rst deleted file mode 100644 index c5986f4fd89..00000000000 --- a/news/11137.feature.rst +++ /dev/null @@ -1,3 +0,0 @@ -Record in wheel cache entries the URL of the original artifiact that was downloaded -to build the cached wheels. The record is named ``origin.json`` and uses the PEP 610 -Direct URL format. diff --git a/news/11158.feature.rst b/news/11158.feature.rst deleted file mode 100644 index 74436d7dccf..00000000000 --- a/news/11158.feature.rst +++ /dev/null @@ -1 +0,0 @@ -Support `PEP 691 `_. diff --git a/news/11217.bugfix.rst b/news/11217.bugfix.rst deleted file mode 100644 index b111df669a4..00000000000 --- a/news/11217.bugfix.rst +++ /dev/null @@ -1,4 +0,0 @@ -Do not consider a ``.dist-info`` directory found inside a wheel-like zip file -as metadata for an installed distribution. A package in a wheel is (by -definition) not installed, and is not guaranteed to work due to how a wheel is -structured. diff --git a/news/11225.feature.rst b/news/11225.feature.rst deleted file mode 100644 index 2da8f56179e..00000000000 --- a/news/11225.feature.rst +++ /dev/null @@ -1,3 +0,0 @@ -pip's deprecation warnings now subclass the built-in ``DeprecationWarning``, and -can be suppressed by running the Python interpreter with -``-W ignore::DeprecationWarning``. diff --git a/news/11241.removal.rst b/news/11241.removal.rst deleted file mode 100644 index 69fb018660b..00000000000 --- a/news/11241.removal.rst +++ /dev/null @@ -1 +0,0 @@ -Remove ``--use-deprecated=backtrack-on-build-failures``. diff --git a/news/11245.feature.rst b/news/11245.feature.rst deleted file mode 100644 index ba80a8976da..00000000000 --- a/news/11245.feature.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add ``pip inspect`` command to obtain the list of installed distributions and other -information about the Python environment, in JSON format. diff --git a/news/11248.bugfix.rst b/news/11248.bugfix.rst deleted file mode 100644 index c48146973cd..00000000000 --- a/news/11248.bugfix.rst +++ /dev/null @@ -1,2 +0,0 @@ -Use ``importlib.resources`` to read the ``vendor.txt`` file in ``pip debug``. -This makes the command safe for use from a zipapp. diff --git a/news/11257.feature.rst b/news/11257.feature.rst deleted file mode 100644 index 1cb75b228a2..00000000000 --- a/news/11257.feature.rst +++ /dev/null @@ -1,3 +0,0 @@ -Significantly speed up isolated environment creation, by using the same -sources for pip instead of creating a standalone installation for each -environment. diff --git a/news/4C988F0E-6A4D-45CE-A60F-9E86DB494FBF.trivial.rst b/news/4C988F0E-6A4D-45CE-A60F-9E86DB494FBF.trivial.rst deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/news/53.feature.rst b/news/53.feature.rst deleted file mode 100644 index a0525602446..00000000000 --- a/news/53.feature.rst +++ /dev/null @@ -1,3 +0,0 @@ -Add an experimental ``--report`` option to the install command to generate a JSON report -of what was installed. In combination with ``--dry-run`` and ``--ignore-installed`` it -can be used to resolve the requirements. diff --git a/news/9523.bugfix.rst b/news/9523.bugfix.rst deleted file mode 100644 index de5e757fa9e..00000000000 --- a/news/9523.bugfix.rst +++ /dev/null @@ -1,3 +0,0 @@ -Make the ``--use-pep517`` option of the ``download`` command apply not just -to the requirements specified on the command line, but to their dependencies, -as well. diff --git a/news/9F7EA82B-DEFE-4143-826C-7CDE65FDEF70.trivial.rst b/news/9F7EA82B-DEFE-4143-826C-7CDE65FDEF70.trivial.rst deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/news/certifi.vendor.rst b/news/certifi.vendor.rst deleted file mode 100644 index 5b7353c4cb3..00000000000 --- a/news/certifi.vendor.rst +++ /dev/null @@ -1 +0,0 @@ -Upgrade certifi to 2022.6.15 diff --git a/news/chardet.vendor.rst b/news/chardet.vendor.rst deleted file mode 100644 index f744eca1fc9..00000000000 --- a/news/chardet.vendor.rst +++ /dev/null @@ -1 +0,0 @@ -Upgrade chardet to 5.0.0 diff --git a/news/colorama.vendor.rst b/news/colorama.vendor.rst deleted file mode 100644 index a757999b330..00000000000 --- a/news/colorama.vendor.rst +++ /dev/null @@ -1 +0,0 @@ -Upgrade colorama to 0.4.5 diff --git a/news/distlib.vendor.rst b/news/distlib.vendor.rst deleted file mode 100644 index 4a1a6739eb4..00000000000 --- a/news/distlib.vendor.rst +++ /dev/null @@ -1 +0,0 @@ -Upgrade distlib to 0.3.5 diff --git a/news/fd5122d3-031e-4b12-9a68-dea494e22fe3.trivial.rst b/news/fd5122d3-031e-4b12-9a68-dea494e22fe3.trivial.rst deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/news/html5lib.vendor.rst b/news/html5lib.vendor.rst deleted file mode 100644 index ca1472e9b81..00000000000 --- a/news/html5lib.vendor.rst +++ /dev/null @@ -1 +0,0 @@ -Remove vendored html5lib. diff --git a/news/msgpack.vendor.rst b/news/msgpack.vendor.rst deleted file mode 100644 index 523b26dca37..00000000000 --- a/news/msgpack.vendor.rst +++ /dev/null @@ -1 +0,0 @@ -Upgrade msgpack to 1.0.4 diff --git a/news/pygments.vendor.rst b/news/pygments.vendor.rst deleted file mode 100644 index affa33a3e7b..00000000000 --- a/news/pygments.vendor.rst +++ /dev/null @@ -1 +0,0 @@ -Upgrade pygments to 2.12.0 diff --git a/news/pyparsing.vendor.rst b/news/pyparsing.vendor.rst deleted file mode 100644 index f42555ba535..00000000000 --- a/news/pyparsing.vendor.rst +++ /dev/null @@ -1 +0,0 @@ -Upgrade pyparsing to 3.0.9 diff --git a/news/requests.vendor.rst b/news/requests.vendor.rst deleted file mode 100644 index 532de909887..00000000000 --- a/news/requests.vendor.rst +++ /dev/null @@ -1 +0,0 @@ -Upgrade requests to 2.28.1 diff --git a/news/rich.vendor.rst b/news/rich.vendor.rst deleted file mode 100644 index 536d6ea28f8..00000000000 --- a/news/rich.vendor.rst +++ /dev/null @@ -1 +0,0 @@ -Upgrade rich to 12.5.1 diff --git a/news/typing_extensions.vendor.rst b/news/typing_extensions.vendor.rst deleted file mode 100644 index 24e4493c18c..00000000000 --- a/news/typing_extensions.vendor.rst +++ /dev/null @@ -1 +0,0 @@ -Upgrade typing_extensions to 4.3.0 diff --git a/news/urllib3.vendor.rst b/news/urllib3.vendor.rst deleted file mode 100644 index a637370403b..00000000000 --- a/news/urllib3.vendor.rst +++ /dev/null @@ -1 +0,0 @@ -Upgrade urllib3 to 1.26.10 diff --git a/src/pip/__init__.py b/src/pip/__init__.py index 9cd8466e477..4cabc18e5c4 100644 --- a/src/pip/__init__.py +++ b/src/pip/__init__.py @@ -1,6 +1,6 @@ from typing import List, Optional -__version__ = "22.2.dev0" +__version__ = "22.2" def main(args: Optional[List[str]] = None) -> int: