|
9 | 9 |
|
10 | 10 | .. towncrier release notes start |
11 | 11 |
|
| 12 | +25.3 (2025-10-24) |
| 13 | +================= |
| 14 | + |
| 15 | +Deprecations and Removals |
| 16 | +------------------------- |
| 17 | + |
| 18 | +- Remove support for the legacy ``setup.py develop`` editable method in setuptools |
| 19 | + editable installs; setuptools >= 64 is now required. (`#11457<https://github.com/pypa/pip/issues/11457>`_) |
| 20 | +- Remove the deprecated ``--global-option`` and ``--build-option``. |
| 21 | + ``--config-setting`` is now the only way to pass options to the build backend. (`#11859<https://github.com/pypa/pip/issues/11859>`_) |
| 22 | +- Deprecate the ``PIP_CONSTRAINT`` environment variable for specifying build |
| 23 | + constraints. |
| 24 | + |
| 25 | + Use the ``--build-constraint`` option or the ``PIP_BUILD_CONSTRAINT`` environment variable |
| 26 | + instead. When build constraints are used, ``PIP_CONSTRAINT`` no longer affects isolated build |
| 27 | + environments. To enable this behavior without specifying any build constraints, use |
| 28 | + ``--use-feature=build-constraint``. (`#13534<https://github.com/pypa/pip/issues/13534>`_) |
| 29 | +- Remove support for non-standard legacy wheel filenames. (`#13581<https://github.com/pypa/pip/issues/13581>`_) |
| 30 | +- Remove support for the deprecated ``setup.py bdist_wheel`` mechanism. Consequently, |
| 31 | + ``--use-pep517`` is now always on, and ``--no-use-pep517`` has been removed. (`#6334<https://github.com/pypa/pip/issues/6334>`_) |
| 32 | + |
| 33 | +Features |
| 34 | +-------- |
| 35 | + |
| 36 | +- When:pep:`658` metadata is available, full distribution files are no longer downloaded when using ``pip lock`` or ``pip install --dry-run``. (`#12603<https://github.com/pypa/pip/issues/12603>`_) |
| 37 | +- Add support for installing an editable requirement written as a Direct URL (``PackageName @ URL``). (`#13495<https://github.com/pypa/pip/issues/13495>`_) |
| 38 | +- Add support for build constraints via the ``--build-constraint`` option. This |
| 39 | + allows constraining the versions of packages used during the build process |
| 40 | + (e.g., setuptools) without affecting the final installation. (`#13534<https://github.com/pypa/pip/issues/13534>`_) |
| 41 | +- On ``ResolutionImpossible`` errors, include a note about causes with no candidates. (`#13588<https://github.com/pypa/pip/issues/13588>`_) |
| 42 | +- Building pip itself from source now uses flit-core instead of setuptools. |
| 43 | + This does not affect how pip installs or builds packages you use. (`#13743<https://github.com/pypa/pip/issues/13743>`_) |
| 44 | + |
| 45 | +Bug Fixes |
| 46 | +--------- |
| 47 | + |
| 48 | +- Handle malformed ``Version`` metadata entries and |
| 49 | + show a sensible error message instead of crashing. (`#13443<https://github.com/pypa/pip/issues/13443>`_) |
| 50 | +- Permit spaces between a filepath and extras in an install requirement. (`#13523<https://github.com/pypa/pip/issues/13523>`_) |
| 51 | +- Ensure the self-check files in the cache have the same permissions as the rest of the cache. (`#13528<https://github.com/pypa/pip/issues/13528>`_) |
| 52 | +- Avoid concurrency issues and improve performance when caching locally built wheels, |
| 53 | + especially when the temporary build directory is on a different filesystem than the cache. |
| 54 | + The wheel directory passed to the build backend is now a temporary subdirectory inside |
| 55 | + the cache directory. (`#13540<https://github.com/pypa/pip/issues/13540>`_) |
| 56 | +- Include relevant user-supplied constraints in logs when reporting dependency conflicts. (`#13545<https://github.com/pypa/pip/issues/13545>`_) |
| 57 | +- Fix a regression in configuration parsing that was turning a single value |
| 58 | + into a list and thus leading to a validation error. (`#13548<https://github.com/pypa/pip/issues/13548>`_) |
| 59 | +- For Python versions that do not support:pep:`706`, pip will now raise an installation error for a |
| 60 | + source distribution when it includes a symlink that points outside the source distribution archive. (`#13550<https://github.com/pypa/pip/issues/13550>`_) |
| 61 | +- Prevent ``--user`` installs if ``site.ENABLE_USER_SITE`` is set to ``False``. (`#8794<https://github.com/pypa/pip/issues/8794>`_) |
| 62 | + |
| 63 | + |
| 64 | +Vendored Libraries |
| 65 | +------------------ |
| 66 | + |
| 67 | +- Upgrade certifi to 2025.10.5 |
| 68 | +- Upgrade msgpack to 1.1.2 |
| 69 | +- Upgrade platformdirs to 4.5.0 |
| 70 | +- Upgrade requests to 2.32.5 |
| 71 | +- Upgrade resolvelib to 1.2.1 |
| 72 | +- Upgrade rich to 14.2.0 |
| 73 | +- Upgrade tomli to 2.3.0 |
| 74 | +- Upgrade truststore to 0.10.4 |
| 75 | + |
| 76 | +Improved Documentation |
| 77 | +---------------------- |
| 78 | + |
| 79 | +- Clarified dependency resolution docs: added note on hypothetical packages, fixed version mismatch, and added introduction line. (`#13561<https://github.com/pypa/pip/issues/13561>`_) |
| 80 | + |
12 | 81 | 25.2 (2025-07-30) |
13 | 82 | ================= |
14 | 83 |
|
|