pip 25.1.1__tar.gz → 25.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (595) hide show
  1. {pip-25.1.1 → pip-25.3}/AUTHORS.txt +21 -0
  2. {pip-25.1.1 → pip-25.3}/NEWS.rst +124 -0
  3. {pip-25.1.1 → pip-25.3}/PKG-INFO +32 -11
  4. pip-25.3/build-project/build-requirements.in +2 -0
  5. pip-25.3/build-project/build-requirements.txt +22 -0
  6. {pip-25.1.1 → pip-25.3}/docs/html/cli/pip.rst +1 -1
  7. {pip-25.1.1 → pip-25.3}/docs/html/cli/pip_download.rst +3 -3
  8. {pip-25.1.1 → pip-25.3}/docs/html/cli/pip_freeze.rst +9 -0
  9. {pip-25.1.1 → pip-25.3}/docs/html/cli/pip_install.rst +19 -20
  10. {pip-25.1.1 → pip-25.3}/docs/html/cli/pip_list.rst +5 -5
  11. {pip-25.1.1 → pip-25.3}/docs/html/cli/pip_lock.rst +1 -1
  12. {pip-25.1.1 → pip-25.3}/docs/html/cli/pip_wheel.rst +1 -1
  13. {pip-25.1.1 → pip-25.3}/docs/html/conf.py +1 -2
  14. {pip-25.1.1 → pip-25.3}/docs/html/development/architecture/anatomy.rst +0 -2
  15. {pip-25.1.1 → pip-25.3}/docs/html/development/architecture/overview.rst +5 -5
  16. {pip-25.1.1 → pip-25.3}/docs/html/development/ci.rst +14 -1
  17. {pip-25.1.1 → pip-25.3}/docs/html/development/contributing.rst +9 -0
  18. pip-25.1.1/docs/html/reference/build-system/pyproject-toml.md → pip-25.3/docs/html/reference/build-system.md +39 -24
  19. {pip-25.1.1 → pip-25.3}/docs/html/reference/index.md +1 -1
  20. {pip-25.1.1 → pip-25.3}/docs/html/reference/requirements-file-format.md +0 -28
  21. {pip-25.1.1 → pip-25.3}/docs/html/topics/dependency-resolution.md +10 -2
  22. {pip-25.1.1 → pip-25.3}/docs/html/topics/local-project-installs.md +0 -11
  23. {pip-25.1.1 → pip-25.3}/docs/html/topics/repeatable-installs.md +0 -7
  24. {pip-25.1.1 → pip-25.3}/docs/html/topics/secure-installs.md +0 -4
  25. {pip-25.1.1 → pip-25.3}/docs/html/topics/vcs-support.md +32 -8
  26. {pip-25.1.1 → pip-25.3}/docs/html/user_guide.rst +44 -8
  27. {pip-25.1.1 → pip-25.3}/docs/html/ux-research-design/guidance.md +18 -0
  28. pip-25.3/docs/html/ux-research-design/resolution-impossible-example.md +92 -0
  29. {pip-25.1.1 → pip-25.3}/docs/pip_sphinxext.py +14 -14
  30. {pip-25.1.1 → pip-25.3}/pyproject.toml +108 -33
  31. {pip-25.1.1 → pip-25.3}/src/pip/__init__.py +3 -3
  32. {pip-25.1.1 → pip-25.3}/src/pip/_internal/__init__.py +2 -2
  33. {pip-25.1.1 → pip-25.3}/src/pip/_internal/build_env.py +186 -94
  34. {pip-25.1.1 → pip-25.3}/src/pip/_internal/cache.py +17 -15
  35. {pip-25.1.1 → pip-25.3}/src/pip/_internal/cli/autocompletion.py +13 -4
  36. {pip-25.1.1 → pip-25.3}/src/pip/_internal/cli/base_command.py +18 -7
  37. {pip-25.1.1 → pip-25.3}/src/pip/_internal/cli/cmdoptions.py +57 -80
  38. {pip-25.1.1 → pip-25.3}/src/pip/_internal/cli/command_context.py +4 -3
  39. {pip-25.1.1 → pip-25.3}/src/pip/_internal/cli/index_command.py +11 -9
  40. {pip-25.1.1 → pip-25.3}/src/pip/_internal/cli/main.py +3 -2
  41. {pip-25.1.1 → pip-25.3}/src/pip/_internal/cli/main_parser.py +4 -3
  42. {pip-25.1.1 → pip-25.3}/src/pip/_internal/cli/parser.py +24 -20
  43. {pip-25.1.1 → pip-25.3}/src/pip/_internal/cli/progress_bars.py +19 -12
  44. {pip-25.1.1 → pip-25.3}/src/pip/_internal/cli/req_command.py +57 -33
  45. {pip-25.1.1 → pip-25.3}/src/pip/_internal/cli/spinners.py +81 -5
  46. {pip-25.1.1 → pip-25.3}/src/pip/_internal/commands/__init__.py +5 -3
  47. {pip-25.1.1 → pip-25.3}/src/pip/_internal/commands/cache.py +18 -15
  48. {pip-25.1.1 → pip-25.3}/src/pip/_internal/commands/check.py +1 -2
  49. {pip-25.1.1 → pip-25.3}/src/pip/_internal/commands/completion.py +1 -2
  50. {pip-25.1.1 → pip-25.3}/src/pip/_internal/commands/configuration.py +26 -18
  51. {pip-25.1.1 → pip-25.3}/src/pip/_internal/commands/debug.py +8 -6
  52. {pip-25.1.1 → pip-25.3}/src/pip/_internal/commands/download.py +6 -10
  53. {pip-25.1.1 → pip-25.3}/src/pip/_internal/commands/freeze.py +2 -3
  54. {pip-25.1.1 → pip-25.3}/src/pip/_internal/commands/hash.py +1 -2
  55. {pip-25.1.1 → pip-25.3}/src/pip/_internal/commands/help.py +1 -2
  56. {pip-25.1.1 → pip-25.3}/src/pip/_internal/commands/index.py +15 -9
  57. {pip-25.1.1 → pip-25.3}/src/pip/_internal/commands/inspect.py +4 -4
  58. {pip-25.1.1 → pip-25.3}/src/pip/_internal/commands/install.py +63 -53
  59. {pip-25.1.1 → pip-25.3}/src/pip/_internal/commands/list.py +35 -26
  60. {pip-25.1.1 → pip-25.3}/src/pip/_internal/commands/lock.py +4 -8
  61. {pip-25.1.1 → pip-25.3}/src/pip/_internal/commands/search.py +14 -12
  62. {pip-25.1.1 → pip-25.3}/src/pip/_internal/commands/show.py +14 -11
  63. {pip-25.1.1 → pip-25.3}/src/pip/_internal/commands/uninstall.py +1 -2
  64. {pip-25.1.1 → pip-25.3}/src/pip/_internal/commands/wheel.py +7 -13
  65. {pip-25.1.1 → pip-25.3}/src/pip/_internal/configuration.py +40 -27
  66. {pip-25.1.1 → pip-25.3}/src/pip/_internal/distributions/base.py +6 -4
  67. {pip-25.1.1 → pip-25.3}/src/pip/_internal/distributions/installed.py +8 -4
  68. {pip-25.1.1 → pip-25.3}/src/pip/_internal/distributions/sdist.py +33 -27
  69. {pip-25.1.1 → pip-25.3}/src/pip/_internal/distributions/wheel.py +6 -4
  70. {pip-25.1.1 → pip-25.3}/src/pip/_internal/exceptions.py +78 -42
  71. {pip-25.1.1 → pip-25.3}/src/pip/_internal/index/collector.py +24 -29
  72. {pip-25.1.1 → pip-25.3}/src/pip/_internal/index/package_finder.py +73 -64
  73. {pip-25.1.1 → pip-25.3}/src/pip/_internal/index/sources.py +17 -14
  74. {pip-25.1.1 → pip-25.3}/src/pip/_internal/locations/__init__.py +18 -16
  75. {pip-25.1.1 → pip-25.3}/src/pip/_internal/locations/_distutils.py +12 -11
  76. {pip-25.1.1 → pip-25.3}/src/pip/_internal/locations/_sysconfig.py +5 -4
  77. {pip-25.1.1 → pip-25.3}/src/pip/_internal/locations/base.py +4 -3
  78. {pip-25.1.1 → pip-25.3}/src/pip/_internal/main.py +2 -2
  79. {pip-25.1.1 → pip-25.3}/src/pip/_internal/metadata/__init__.py +14 -7
  80. {pip-25.1.1 → pip-25.3}/src/pip/_internal/metadata/_json.py +5 -4
  81. {pip-25.1.1 → pip-25.3}/src/pip/_internal/metadata/base.py +22 -27
  82. {pip-25.1.1 → pip-25.3}/src/pip/_internal/metadata/importlib/_compat.py +6 -4
  83. {pip-25.1.1 → pip-25.3}/src/pip/_internal/metadata/importlib/_dists.py +20 -19
  84. {pip-25.1.1 → pip-25.3}/src/pip/_internal/metadata/importlib/_envs.py +9 -6
  85. {pip-25.1.1 → pip-25.3}/src/pip/_internal/metadata/pkg_resources.py +11 -14
  86. {pip-25.1.1 → pip-25.3}/src/pip/_internal/models/direct_url.py +24 -21
  87. {pip-25.1.1 → pip-25.3}/src/pip/_internal/models/format_control.py +5 -5
  88. {pip-25.1.1 → pip-25.3}/src/pip/_internal/models/installation_report.py +4 -3
  89. {pip-25.1.1 → pip-25.3}/src/pip/_internal/models/link.py +39 -34
  90. {pip-25.1.1 → pip-25.3}/src/pip/_internal/models/pylock.py +27 -22
  91. {pip-25.1.1 → pip-25.3}/src/pip/_internal/models/search_scope.py +6 -7
  92. {pip-25.1.1 → pip-25.3}/src/pip/_internal/models/selection_prefs.py +3 -3
  93. {pip-25.1.1 → pip-25.3}/src/pip/_internal/models/target_python.py +10 -9
  94. pip-25.3/src/pip/_internal/models/wheel.py +80 -0
  95. {pip-25.1.1 → pip-25.3}/src/pip/_internal/network/auth.py +20 -22
  96. {pip-25.1.1 → pip-25.3}/src/pip/_internal/network/cache.py +28 -17
  97. pip-25.3/src/pip/_internal/network/download.py +342 -0
  98. {pip-25.1.1 → pip-25.3}/src/pip/_internal/network/lazy_wheel.py +15 -10
  99. {pip-25.1.1 → pip-25.3}/src/pip/_internal/network/session.py +32 -27
  100. {pip-25.1.1 → pip-25.3}/src/pip/_internal/network/utils.py +2 -2
  101. {pip-25.1.1 → pip-25.3}/src/pip/_internal/network/xmlrpc.py +2 -2
  102. {pip-25.1.1 → pip-25.3}/src/pip/_internal/operations/build/build_tracker.py +10 -8
  103. {pip-25.1.1 → pip-25.3}/src/pip/_internal/operations/build/wheel.py +7 -6
  104. {pip-25.1.1 → pip-25.3}/src/pip/_internal/operations/build/wheel_editable.py +7 -6
  105. {pip-25.1.1 → pip-25.3}/src/pip/_internal/operations/check.py +21 -26
  106. {pip-25.1.1 → pip-25.3}/src/pip/_internal/operations/freeze.py +12 -9
  107. {pip-25.1.1 → pip-25.3}/src/pip/_internal/operations/install/wheel.py +49 -41
  108. {pip-25.1.1 → pip-25.3}/src/pip/_internal/operations/prepare.py +42 -31
  109. {pip-25.1.1 → pip-25.3}/src/pip/_internal/pyproject.py +7 -69
  110. {pip-25.1.1 → pip-25.3}/src/pip/_internal/req/__init__.py +12 -12
  111. {pip-25.1.1 → pip-25.3}/src/pip/_internal/req/constructors.py +68 -62
  112. {pip-25.1.1 → pip-25.3}/src/pip/_internal/req/req_dependency_group.py +7 -11
  113. {pip-25.1.1 → pip-25.3}/src/pip/_internal/req/req_file.py +32 -36
  114. {pip-25.1.1 → pip-25.3}/src/pip/_internal/req/req_install.py +64 -170
  115. {pip-25.1.1 → pip-25.3}/src/pip/_internal/req/req_set.py +4 -5
  116. {pip-25.1.1 → pip-25.3}/src/pip/_internal/req/req_uninstall.py +20 -17
  117. {pip-25.1.1 → pip-25.3}/src/pip/_internal/resolution/base.py +3 -3
  118. {pip-25.1.1 → pip-25.3}/src/pip/_internal/resolution/legacy/resolver.py +21 -20
  119. {pip-25.1.1 → pip-25.3}/src/pip/_internal/resolution/resolvelib/base.py +16 -13
  120. {pip-25.1.1 → pip-25.3}/src/pip/_internal/resolution/resolvelib/candidates.py +49 -37
  121. {pip-25.1.1 → pip-25.3}/src/pip/_internal/resolution/resolvelib/factory.py +72 -50
  122. {pip-25.1.1 → pip-25.3}/src/pip/_internal/resolution/resolvelib/found_candidates.py +11 -9
  123. {pip-25.1.1 → pip-25.3}/src/pip/_internal/resolution/resolvelib/provider.py +24 -20
  124. {pip-25.1.1 → pip-25.3}/src/pip/_internal/resolution/resolvelib/reporter.py +26 -11
  125. {pip-25.1.1 → pip-25.3}/src/pip/_internal/resolution/resolvelib/requirements.py +8 -6
  126. {pip-25.1.1 → pip-25.3}/src/pip/_internal/resolution/resolvelib/resolver.py +41 -29
  127. {pip-25.1.1 → pip-25.3}/src/pip/_internal/self_outdated_check.py +19 -9
  128. {pip-25.1.1 → pip-25.3}/src/pip/_internal/utils/appdirs.py +1 -2
  129. {pip-25.1.1 → pip-25.3}/src/pip/_internal/utils/compat.py +7 -1
  130. {pip-25.1.1 → pip-25.3}/src/pip/_internal/utils/compatibility_tags.py +17 -16
  131. {pip-25.1.1 → pip-25.3}/src/pip/_internal/utils/deprecation.py +11 -9
  132. {pip-25.1.1 → pip-25.3}/src/pip/_internal/utils/direct_url_helpers.py +2 -2
  133. {pip-25.1.1 → pip-25.3}/src/pip/_internal/utils/egg_link.py +6 -5
  134. {pip-25.1.1 → pip-25.3}/src/pip/_internal/utils/entrypoints.py +3 -2
  135. {pip-25.1.1 → pip-25.3}/src/pip/_internal/utils/filesystem.py +20 -5
  136. {pip-25.1.1 → pip-25.3}/src/pip/_internal/utils/filetypes.py +4 -6
  137. {pip-25.1.1 → pip-25.3}/src/pip/_internal/utils/glibc.py +6 -5
  138. {pip-25.1.1 → pip-25.3}/src/pip/_internal/utils/hashes.py +9 -6
  139. {pip-25.1.1 → pip-25.3}/src/pip/_internal/utils/logging.py +8 -5
  140. {pip-25.1.1 → pip-25.3}/src/pip/_internal/utils/misc.py +37 -45
  141. {pip-25.1.1 → pip-25.3}/src/pip/_internal/utils/packaging.py +3 -2
  142. {pip-25.1.1 → pip-25.3}/src/pip/_internal/utils/retry.py +7 -4
  143. {pip-25.1.1 → pip-25.3}/src/pip/_internal/utils/subprocess.py +20 -17
  144. {pip-25.1.1 → pip-25.3}/src/pip/_internal/utils/temp_dir.py +10 -12
  145. {pip-25.1.1 → pip-25.3}/src/pip/_internal/utils/unpacking.py +31 -4
  146. {pip-25.1.1 → pip-25.3}/src/pip/_internal/utils/urls.py +1 -1
  147. {pip-25.1.1 → pip-25.3}/src/pip/_internal/utils/virtualenv.py +3 -2
  148. {pip-25.1.1 → pip-25.3}/src/pip/_internal/utils/wheel.py +3 -4
  149. {pip-25.1.1 → pip-25.3}/src/pip/_internal/vcs/bazaar.py +26 -8
  150. {pip-25.1.1 → pip-25.3}/src/pip/_internal/vcs/git.py +59 -24
  151. {pip-25.1.1 → pip-25.3}/src/pip/_internal/vcs/mercurial.py +34 -11
  152. {pip-25.1.1 → pip-25.3}/src/pip/_internal/vcs/subversion.py +27 -16
  153. {pip-25.1.1 → pip-25.3}/src/pip/_internal/vcs/versioncontrol.py +56 -51
  154. {pip-25.1.1 → pip-25.3}/src/pip/_internal/wheel_builder.py +30 -101
  155. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/cachecontrol/__init__.py +1 -1
  156. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/certifi/__init__.py +1 -1
  157. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/certifi/cacert.pem +164 -261
  158. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/certifi/core.py +1 -32
  159. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/distlib/__init__.py +2 -2
  160. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/distlib/scripts.py +1 -1
  161. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/msgpack/__init__.py +2 -2
  162. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pkg_resources/__init__.py +1 -1
  163. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/platformdirs/api.py +1 -1
  164. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/platformdirs/macos.py +10 -8
  165. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/platformdirs/version.py +16 -3
  166. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pygments/__init__.py +1 -1
  167. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/requests/__version__.py +2 -2
  168. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/requests/adapters.py +17 -40
  169. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/requests/compat.py +12 -0
  170. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/requests/models.py +3 -1
  171. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/requests/sessions.py +1 -1
  172. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/requests/utils.py +6 -16
  173. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/resolvelib/__init__.py +3 -3
  174. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/resolvelib/reporters.py +1 -1
  175. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/resolvelib/resolvers/abstract.py +3 -3
  176. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/resolvelib/resolvers/resolution.py +96 -10
  177. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/__main__.py +12 -40
  178. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/_inspect.py +1 -1
  179. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/_ratio.py +1 -7
  180. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/align.py +1 -7
  181. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/box.py +1 -7
  182. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/console.py +25 -20
  183. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/control.py +1 -7
  184. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/diagnose.py +1 -0
  185. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/emoji.py +1 -6
  186. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/live.py +32 -7
  187. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/live_render.py +1 -7
  188. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/logging.py +1 -1
  189. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/panel.py +3 -4
  190. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/progress.py +15 -15
  191. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/spinner.py +7 -13
  192. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/style.py +7 -11
  193. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/syntax.py +24 -5
  194. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/traceback.py +32 -17
  195. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/tomli/__init__.py +1 -1
  196. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/tomli/_parser.py +28 -21
  197. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/tomli/_re.py +8 -5
  198. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/truststore/__init__.py +1 -1
  199. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/truststore/_api.py +15 -7
  200. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/truststore/_openssl.py +3 -1
  201. pip-25.3/src/pip/_vendor/vendor.txt +19 -0
  202. pip-25.1.1/MANIFEST.in +0 -38
  203. pip-25.1.1/build-project/build-requirements.in +0 -2
  204. pip-25.1.1/build-project/build-requirements.txt +0 -24
  205. pip-25.1.1/docs/html/reference/build-system/index.md +0 -127
  206. pip-25.1.1/docs/html/reference/build-system/setup-py.md +0 -124
  207. pip-25.1.1/docs/requirements.txt +0 -14
  208. pip-25.1.1/setup.cfg +0 -4
  209. pip-25.1.1/src/pip/_internal/models/wheel.py +0 -139
  210. pip-25.1.1/src/pip/_internal/network/download.py +0 -314
  211. pip-25.1.1/src/pip/_internal/operations/build/metadata_legacy.py +0 -73
  212. pip-25.1.1/src/pip/_internal/operations/build/wheel_legacy.py +0 -118
  213. pip-25.1.1/src/pip/_internal/operations/install/editable_legacy.py +0 -46
  214. pip-25.1.1/src/pip/_internal/utils/setuptools_build.py +0 -147
  215. pip-25.1.1/src/pip/_vendor/distlib/database.py +0 -1329
  216. pip-25.1.1/src/pip/_vendor/distlib/index.py +0 -508
  217. pip-25.1.1/src/pip/_vendor/distlib/locators.py +0 -1295
  218. pip-25.1.1/src/pip/_vendor/distlib/manifest.py +0 -384
  219. pip-25.1.1/src/pip/_vendor/distlib/markers.py +0 -162
  220. pip-25.1.1/src/pip/_vendor/distlib/metadata.py +0 -1031
  221. pip-25.1.1/src/pip/_vendor/distlib/version.py +0 -750
  222. pip-25.1.1/src/pip/_vendor/distlib/wheel.py +0 -1100
  223. pip-25.1.1/src/pip/_vendor/tomli/LICENSE-HEADER +0 -3
  224. pip-25.1.1/src/pip/_vendor/typing_extensions.LICENSE +0 -279
  225. pip-25.1.1/src/pip/_vendor/typing_extensions.py +0 -4584
  226. pip-25.1.1/src/pip/_vendor/vendor.txt +0 -20
  227. pip-25.1.1/src/pip.egg-info/PKG-INFO +0 -90
  228. pip-25.1.1/src/pip.egg-info/SOURCES.txt +0 -587
  229. pip-25.1.1/src/pip.egg-info/dependency_links.txt +0 -1
  230. pip-25.1.1/src/pip.egg-info/entry_points.txt +0 -3
  231. pip-25.1.1/src/pip.egg-info/top_level.txt +0 -1
  232. {pip-25.1.1 → pip-25.3}/LICENSE.txt +0 -0
  233. {pip-25.1.1 → pip-25.3}/README.rst +0 -0
  234. {pip-25.1.1 → pip-25.3}/SECURITY.md +0 -0
  235. {pip-25.1.1 → pip-25.3}/build-project/.python-version +0 -0
  236. {pip-25.1.1 → pip-25.3}/build-project/build-project.py +0 -0
  237. {pip-25.1.1 → pip-25.3}/docs/html/cli/index.md +0 -0
  238. {pip-25.1.1 → pip-25.3}/docs/html/cli/pip_cache.rst +0 -0
  239. {pip-25.1.1 → pip-25.3}/docs/html/cli/pip_check.rst +0 -0
  240. {pip-25.1.1 → pip-25.3}/docs/html/cli/pip_config.rst +0 -0
  241. {pip-25.1.1 → pip-25.3}/docs/html/cli/pip_debug.rst +0 -0
  242. {pip-25.1.1 → pip-25.3}/docs/html/cli/pip_hash.rst +0 -0
  243. {pip-25.1.1 → pip-25.3}/docs/html/cli/pip_index.rst +0 -0
  244. {pip-25.1.1 → pip-25.3}/docs/html/cli/pip_inspect.rst +0 -0
  245. {pip-25.1.1 → pip-25.3}/docs/html/cli/pip_search.rst +0 -0
  246. {pip-25.1.1 → pip-25.3}/docs/html/cli/pip_show.rst +0 -0
  247. {pip-25.1.1 → pip-25.3}/docs/html/cli/pip_uninstall.rst +0 -0
  248. {pip-25.1.1 → pip-25.3}/docs/html/copyright.rst +0 -0
  249. {pip-25.1.1 → pip-25.3}/docs/html/development/architecture/command-line-interface.rst +0 -0
  250. {pip-25.1.1 → pip-25.3}/docs/html/development/architecture/configuration-files.rst +0 -0
  251. {pip-25.1.1 → pip-25.3}/docs/html/development/architecture/index.rst +0 -0
  252. {pip-25.1.1 → pip-25.3}/docs/html/development/architecture/package-finding.rst +0 -0
  253. {pip-25.1.1 → pip-25.3}/docs/html/development/architecture/upgrade-options.rst +0 -0
  254. {pip-25.1.1 → pip-25.3}/docs/html/development/conventions.rst +0 -0
  255. {pip-25.1.1 → pip-25.3}/docs/html/development/getting-started.rst +0 -0
  256. {pip-25.1.1 → pip-25.3}/docs/html/development/index.rst +0 -0
  257. {pip-25.1.1 → pip-25.3}/docs/html/development/issue-triage.md +0 -0
  258. {pip-25.1.1 → pip-25.3}/docs/html/development/release-process.rst +0 -0
  259. {pip-25.1.1 → pip-25.3}/docs/html/development/vendoring-policy.rst +0 -0
  260. {pip-25.1.1 → pip-25.3}/docs/html/getting-started.md +0 -0
  261. {pip-25.1.1 → pip-25.3}/docs/html/index.md +0 -0
  262. {pip-25.1.1 → pip-25.3}/docs/html/installation.md +0 -0
  263. {pip-25.1.1 → pip-25.3}/docs/html/installing.rst +0 -0
  264. {pip-25.1.1 → pip-25.3}/docs/html/news.rst +0 -0
  265. {pip-25.1.1 → pip-25.3}/docs/html/quickstart.rst +0 -0
  266. {pip-25.1.1 → pip-25.3}/docs/html/reference/inspect-report.md +0 -0
  267. {pip-25.1.1 → pip-25.3}/docs/html/reference/installation-report.md +0 -0
  268. {pip-25.1.1 → pip-25.3}/docs/html/reference/pip.rst +0 -0
  269. {pip-25.1.1 → pip-25.3}/docs/html/reference/pip_cache.rst +0 -0
  270. {pip-25.1.1 → pip-25.3}/docs/html/reference/pip_check.rst +0 -0
  271. {pip-25.1.1 → pip-25.3}/docs/html/reference/pip_config.rst +0 -0
  272. {pip-25.1.1 → pip-25.3}/docs/html/reference/pip_debug.rst +0 -0
  273. {pip-25.1.1 → pip-25.3}/docs/html/reference/pip_download.rst +0 -0
  274. {pip-25.1.1 → pip-25.3}/docs/html/reference/pip_freeze.rst +0 -0
  275. {pip-25.1.1 → pip-25.3}/docs/html/reference/pip_hash.rst +0 -0
  276. {pip-25.1.1 → pip-25.3}/docs/html/reference/pip_index.rst +0 -0
  277. {pip-25.1.1 → pip-25.3}/docs/html/reference/pip_install.rst +0 -0
  278. {pip-25.1.1 → pip-25.3}/docs/html/reference/pip_list.rst +0 -0
  279. {pip-25.1.1 → pip-25.3}/docs/html/reference/pip_search.rst +0 -0
  280. {pip-25.1.1 → pip-25.3}/docs/html/reference/pip_show.rst +0 -0
  281. {pip-25.1.1 → pip-25.3}/docs/html/reference/pip_uninstall.rst +0 -0
  282. {pip-25.1.1 → pip-25.3}/docs/html/reference/pip_wheel.rst +0 -0
  283. {pip-25.1.1 → pip-25.3}/docs/html/reference/requirement-specifiers.md +0 -0
  284. {pip-25.1.1 → pip-25.3}/docs/html/topics/authentication.md +0 -0
  285. {pip-25.1.1 → pip-25.3}/docs/html/topics/caching.md +0 -0
  286. {pip-25.1.1 → pip-25.3}/docs/html/topics/configuration.md +0 -0
  287. {pip-25.1.1 → pip-25.3}/docs/html/topics/deps.dot +0 -0
  288. {pip-25.1.1 → pip-25.3}/docs/html/topics/deps.png +0 -0
  289. {pip-25.1.1 → pip-25.3}/docs/html/topics/https-certificates.md +0 -0
  290. {pip-25.1.1 → pip-25.3}/docs/html/topics/index.md +0 -0
  291. {pip-25.1.1 → pip-25.3}/docs/html/topics/more-dependency-resolution.md +0 -0
  292. {pip-25.1.1 → pip-25.3}/docs/html/topics/python-option.md +0 -0
  293. {pip-25.1.1 → pip-25.3}/docs/html/topics/workflow.md +0 -0
  294. {pip-25.1.1 → pip-25.3}/docs/html/ux-research-design/contribute.md +0 -0
  295. {pip-25.1.1 → pip-25.3}/docs/html/ux-research-design/index.md +0 -0
  296. {pip-25.1.1 → pip-25.3}/docs/html/ux-research-design/research-results/about-our-users.md +0 -0
  297. {pip-25.1.1 → pip-25.3}/docs/html/ux-research-design/research-results/ci-cd.md +0 -0
  298. {pip-25.1.1 → pip-25.3}/docs/html/ux-research-design/research-results/improving-pips-documentation.md +0 -0
  299. {pip-25.1.1 → pip-25.3}/docs/html/ux-research-design/research-results/index.md +0 -0
  300. {pip-25.1.1 → pip-25.3}/docs/html/ux-research-design/research-results/mental-models.md +0 -0
  301. {pip-25.1.1 → pip-25.3}/docs/html/ux-research-design/research-results/override-conflicting-dependencies.md +0 -0
  302. {pip-25.1.1 → pip-25.3}/docs/html/ux-research-design/research-results/personas.md +0 -0
  303. {pip-25.1.1 → pip-25.3}/docs/html/ux-research-design/research-results/pip-force-reinstall.md +0 -0
  304. {pip-25.1.1 → pip-25.3}/docs/html/ux-research-design/research-results/pip-search.md +0 -0
  305. {pip-25.1.1 → pip-25.3}/docs/html/ux-research-design/research-results/pip-upgrade-conflict.md +0 -0
  306. {pip-25.1.1 → pip-25.3}/docs/html/ux-research-design/research-results/prioritizing-features.md +0 -0
  307. {pip-25.1.1 → pip-25.3}/docs/html/ux-research-design/research-results/users-and-security.md +0 -0
  308. {pip-25.1.1 → pip-25.3}/docs/man/commands/cache.rst +0 -0
  309. {pip-25.1.1 → pip-25.3}/docs/man/commands/check.rst +0 -0
  310. {pip-25.1.1 → pip-25.3}/docs/man/commands/config.rst +0 -0
  311. {pip-25.1.1 → pip-25.3}/docs/man/commands/debug.rst +0 -0
  312. {pip-25.1.1 → pip-25.3}/docs/man/commands/download.rst +0 -0
  313. {pip-25.1.1 → pip-25.3}/docs/man/commands/freeze.rst +0 -0
  314. {pip-25.1.1 → pip-25.3}/docs/man/commands/hash.rst +0 -0
  315. {pip-25.1.1 → pip-25.3}/docs/man/commands/help.rst +0 -0
  316. {pip-25.1.1 → pip-25.3}/docs/man/commands/index.rst +0 -0
  317. {pip-25.1.1 → pip-25.3}/docs/man/commands/install.rst +0 -0
  318. {pip-25.1.1 → pip-25.3}/docs/man/commands/list.rst +0 -0
  319. {pip-25.1.1 → pip-25.3}/docs/man/commands/lock.rst +0 -0
  320. {pip-25.1.1 → pip-25.3}/docs/man/commands/search.rst +0 -0
  321. {pip-25.1.1 → pip-25.3}/docs/man/commands/show.rst +0 -0
  322. {pip-25.1.1 → pip-25.3}/docs/man/commands/uninstall.rst +0 -0
  323. {pip-25.1.1 → pip-25.3}/docs/man/commands/wheel.rst +0 -0
  324. {pip-25.1.1 → pip-25.3}/docs/man/index.rst +0 -0
  325. {pip-25.1.1 → pip-25.3}/src/pip/__main__.py +0 -0
  326. {pip-25.1.1 → pip-25.3}/src/pip/__pip-runner__.py +0 -0
  327. {pip-25.1.1 → pip-25.3}/src/pip/_internal/cli/__init__.py +0 -0
  328. {pip-25.1.1 → pip-25.3}/src/pip/_internal/cli/status_codes.py +0 -0
  329. {pip-25.1.1 → pip-25.3}/src/pip/_internal/distributions/__init__.py +0 -0
  330. {pip-25.1.1 → pip-25.3}/src/pip/_internal/index/__init__.py +0 -0
  331. {pip-25.1.1 → pip-25.3}/src/pip/_internal/metadata/importlib/__init__.py +0 -0
  332. {pip-25.1.1 → pip-25.3}/src/pip/_internal/models/__init__.py +0 -0
  333. {pip-25.1.1 → pip-25.3}/src/pip/_internal/models/candidate.py +0 -0
  334. {pip-25.1.1 → pip-25.3}/src/pip/_internal/models/index.py +0 -0
  335. {pip-25.1.1 → pip-25.3}/src/pip/_internal/models/scheme.py +0 -0
  336. {pip-25.1.1 → pip-25.3}/src/pip/_internal/network/__init__.py +0 -0
  337. {pip-25.1.1 → pip-25.3}/src/pip/_internal/operations/__init__.py +0 -0
  338. {pip-25.1.1 → pip-25.3}/src/pip/_internal/operations/build/__init__.py +0 -0
  339. {pip-25.1.1 → pip-25.3}/src/pip/_internal/operations/build/metadata.py +0 -0
  340. {pip-25.1.1 → pip-25.3}/src/pip/_internal/operations/build/metadata_editable.py +0 -0
  341. {pip-25.1.1 → pip-25.3}/src/pip/_internal/operations/install/__init__.py +0 -0
  342. {pip-25.1.1 → pip-25.3}/src/pip/_internal/resolution/__init__.py +0 -0
  343. {pip-25.1.1 → pip-25.3}/src/pip/_internal/resolution/legacy/__init__.py +0 -0
  344. {pip-25.1.1 → pip-25.3}/src/pip/_internal/resolution/resolvelib/__init__.py +0 -0
  345. {pip-25.1.1 → pip-25.3}/src/pip/_internal/utils/__init__.py +0 -0
  346. {pip-25.1.1 → pip-25.3}/src/pip/_internal/utils/_jaraco_text.py +0 -0
  347. {pip-25.1.1 → pip-25.3}/src/pip/_internal/utils/_log.py +0 -0
  348. {pip-25.1.1 → pip-25.3}/src/pip/_internal/utils/datetime.py +0 -0
  349. {pip-25.1.1 → pip-25.3}/src/pip/_internal/vcs/__init__.py +0 -0
  350. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/README.rst +0 -0
  351. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/__init__.py +0 -0
  352. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/cachecontrol/LICENSE.txt +0 -0
  353. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/cachecontrol/_cmd.py +0 -0
  354. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/cachecontrol/adapter.py +0 -0
  355. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/cachecontrol/cache.py +0 -0
  356. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/cachecontrol/caches/__init__.py +0 -0
  357. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/cachecontrol/caches/file_cache.py +0 -0
  358. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/cachecontrol/caches/redis_cache.py +0 -0
  359. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/cachecontrol/controller.py +0 -0
  360. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/cachecontrol/filewrapper.py +0 -0
  361. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/cachecontrol/heuristics.py +0 -0
  362. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/cachecontrol/py.typed +0 -0
  363. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/cachecontrol/serialize.py +0 -0
  364. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/cachecontrol/wrapper.py +0 -0
  365. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/certifi/LICENSE +0 -0
  366. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/certifi/__main__.py +0 -0
  367. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/certifi/py.typed +0 -0
  368. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/dependency_groups/LICENSE.txt +0 -0
  369. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/dependency_groups/__init__.py +0 -0
  370. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/dependency_groups/__main__.py +0 -0
  371. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/dependency_groups/_implementation.py +0 -0
  372. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/dependency_groups/_lint_dependency_groups.py +0 -0
  373. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/dependency_groups/_pip_wrapper.py +0 -0
  374. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/dependency_groups/_toml_compat.py +0 -0
  375. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/dependency_groups/py.typed +0 -0
  376. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/distlib/LICENSE.txt +0 -0
  377. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/distlib/compat.py +0 -0
  378. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/distlib/resources.py +0 -0
  379. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/distlib/t32.exe +0 -0
  380. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/distlib/t64-arm.exe +0 -0
  381. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/distlib/t64.exe +0 -0
  382. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/distlib/util.py +0 -0
  383. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/distlib/w32.exe +0 -0
  384. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/distlib/w64-arm.exe +0 -0
  385. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/distlib/w64.exe +0 -0
  386. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/distro/LICENSE +0 -0
  387. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/distro/__init__.py +0 -0
  388. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/distro/__main__.py +0 -0
  389. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/distro/distro.py +0 -0
  390. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/distro/py.typed +0 -0
  391. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/idna/LICENSE.md +0 -0
  392. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/idna/__init__.py +0 -0
  393. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/idna/codec.py +0 -0
  394. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/idna/compat.py +0 -0
  395. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/idna/core.py +0 -0
  396. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/idna/idnadata.py +0 -0
  397. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/idna/intranges.py +0 -0
  398. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/idna/package_data.py +0 -0
  399. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/idna/py.typed +0 -0
  400. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/idna/uts46data.py +0 -0
  401. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/msgpack/COPYING +0 -0
  402. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/msgpack/exceptions.py +0 -0
  403. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/msgpack/ext.py +0 -0
  404. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/msgpack/fallback.py +0 -0
  405. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/packaging/LICENSE +0 -0
  406. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/packaging/LICENSE.APACHE +0 -0
  407. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/packaging/LICENSE.BSD +0 -0
  408. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/packaging/__init__.py +0 -0
  409. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/packaging/_elffile.py +0 -0
  410. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/packaging/_manylinux.py +0 -0
  411. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/packaging/_musllinux.py +0 -0
  412. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/packaging/_parser.py +0 -0
  413. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/packaging/_structures.py +0 -0
  414. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/packaging/_tokenizer.py +0 -0
  415. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/packaging/licenses/__init__.py +0 -0
  416. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/packaging/licenses/_spdx.py +0 -0
  417. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/packaging/markers.py +0 -0
  418. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/packaging/metadata.py +0 -0
  419. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/packaging/py.typed +0 -0
  420. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/packaging/requirements.py +0 -0
  421. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/packaging/specifiers.py +0 -0
  422. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/packaging/tags.py +0 -0
  423. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/packaging/utils.py +0 -0
  424. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/packaging/version.py +0 -0
  425. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pkg_resources/LICENSE +0 -0
  426. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/platformdirs/LICENSE +0 -0
  427. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/platformdirs/__init__.py +0 -0
  428. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/platformdirs/__main__.py +0 -0
  429. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/platformdirs/android.py +0 -0
  430. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/platformdirs/py.typed +0 -0
  431. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/platformdirs/unix.py +0 -0
  432. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/platformdirs/windows.py +0 -0
  433. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pygments/LICENSE +0 -0
  434. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pygments/__main__.py +0 -0
  435. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pygments/console.py +0 -0
  436. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pygments/filter.py +0 -0
  437. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pygments/filters/__init__.py +0 -0
  438. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pygments/formatter.py +0 -0
  439. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pygments/formatters/__init__.py +0 -0
  440. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pygments/formatters/_mapping.py +0 -0
  441. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pygments/lexer.py +0 -0
  442. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pygments/lexers/__init__.py +0 -0
  443. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pygments/lexers/_mapping.py +0 -0
  444. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pygments/lexers/python.py +0 -0
  445. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pygments/modeline.py +0 -0
  446. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pygments/plugin.py +0 -0
  447. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pygments/regexopt.py +0 -0
  448. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pygments/scanner.py +0 -0
  449. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pygments/sphinxext.py +0 -0
  450. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pygments/style.py +0 -0
  451. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pygments/styles/__init__.py +0 -0
  452. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pygments/styles/_mapping.py +0 -0
  453. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pygments/token.py +0 -0
  454. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pygments/unistring.py +0 -0
  455. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pygments/util.py +0 -0
  456. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pyproject_hooks/LICENSE +0 -0
  457. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pyproject_hooks/__init__.py +0 -0
  458. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pyproject_hooks/_impl.py +0 -0
  459. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pyproject_hooks/_in_process/__init__.py +0 -0
  460. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pyproject_hooks/_in_process/_in_process.py +0 -0
  461. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/pyproject_hooks/py.typed +0 -0
  462. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/requests/LICENSE +0 -0
  463. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/requests/__init__.py +0 -0
  464. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/requests/_internal_utils.py +0 -0
  465. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/requests/api.py +0 -0
  466. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/requests/auth.py +0 -0
  467. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/requests/certs.py +0 -0
  468. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/requests/cookies.py +0 -0
  469. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/requests/exceptions.py +0 -0
  470. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/requests/help.py +0 -0
  471. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/requests/hooks.py +0 -0
  472. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/requests/packages.py +0 -0
  473. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/requests/status_codes.py +0 -0
  474. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/requests/structures.py +0 -0
  475. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/resolvelib/LICENSE +0 -0
  476. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/resolvelib/providers.py +0 -0
  477. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/resolvelib/py.typed +0 -0
  478. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/resolvelib/resolvers/__init__.py +4 -4
  479. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/resolvelib/resolvers/criterion.py +0 -0
  480. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/resolvelib/resolvers/exceptions.py +0 -0
  481. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/resolvelib/structs.py +0 -0
  482. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/LICENSE +0 -0
  483. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/__init__.py +0 -0
  484. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/_cell_widths.py +0 -0
  485. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/_emoji_codes.py +0 -0
  486. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/_emoji_replace.py +0 -0
  487. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/_export_format.py +0 -0
  488. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/_extension.py +0 -0
  489. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/_fileno.py +0 -0
  490. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/_log_render.py +0 -0
  491. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/_loop.py +0 -0
  492. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/_null_file.py +0 -0
  493. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/_palettes.py +0 -0
  494. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/_pick.py +0 -0
  495. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/_spinners.py +0 -0
  496. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/_stack.py +0 -0
  497. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/_timer.py +0 -0
  498. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/_win32_console.py +0 -0
  499. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/_windows.py +0 -0
  500. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/_windows_renderer.py +0 -0
  501. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/_wrap.py +0 -0
  502. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/abc.py +0 -0
  503. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/ansi.py +0 -0
  504. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/bar.py +0 -0
  505. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/cells.py +0 -0
  506. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/color.py +0 -0
  507. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/color_triplet.py +0 -0
  508. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/columns.py +0 -0
  509. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/constrain.py +0 -0
  510. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/containers.py +0 -0
  511. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/default_styles.py +0 -0
  512. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/errors.py +0 -0
  513. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/file_proxy.py +0 -0
  514. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/filesize.py +0 -0
  515. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/highlighter.py +0 -0
  516. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/json.py +0 -0
  517. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/jupyter.py +0 -0
  518. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/layout.py +0 -0
  519. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/markup.py +0 -0
  520. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/measure.py +0 -0
  521. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/padding.py +0 -0
  522. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/pager.py +0 -0
  523. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/palette.py +0 -0
  524. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/pretty.py +0 -0
  525. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/progress_bar.py +0 -0
  526. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/prompt.py +0 -0
  527. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/protocol.py +0 -0
  528. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/py.typed +0 -0
  529. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/region.py +0 -0
  530. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/repr.py +0 -0
  531. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/rule.py +0 -0
  532. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/scope.py +0 -0
  533. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/screen.py +0 -0
  534. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/segment.py +0 -0
  535. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/status.py +0 -0
  536. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/styled.py +0 -0
  537. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/table.py +0 -0
  538. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/terminal_theme.py +0 -0
  539. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/text.py +0 -0
  540. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/theme.py +0 -0
  541. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/themes.py +0 -0
  542. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/rich/tree.py +0 -0
  543. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/tomli/LICENSE +0 -0
  544. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/tomli/_types.py +0 -0
  545. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/tomli/py.typed +0 -0
  546. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/tomli_w/LICENSE +0 -0
  547. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/tomli_w/__init__.py +0 -0
  548. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/tomli_w/_writer.py +0 -0
  549. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/tomli_w/py.typed +0 -0
  550. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/truststore/LICENSE +0 -0
  551. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/truststore/_macos.py +0 -0
  552. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/truststore/_ssl_constants.py +0 -0
  553. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/truststore/_windows.py +0 -0
  554. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/truststore/py.typed +0 -0
  555. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/LICENSE.txt +0 -0
  556. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/__init__.py +0 -0
  557. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/_collections.py +0 -0
  558. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/_version.py +0 -0
  559. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/connection.py +0 -0
  560. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/connectionpool.py +0 -0
  561. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/contrib/__init__.py +0 -0
  562. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/contrib/_appengine_environ.py +0 -0
  563. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/contrib/_securetransport/__init__.py +0 -0
  564. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/contrib/_securetransport/bindings.py +0 -0
  565. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/contrib/_securetransport/low_level.py +0 -0
  566. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/contrib/appengine.py +0 -0
  567. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/contrib/ntlmpool.py +0 -0
  568. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/contrib/pyopenssl.py +0 -0
  569. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/contrib/securetransport.py +0 -0
  570. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/contrib/socks.py +0 -0
  571. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/exceptions.py +0 -0
  572. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/fields.py +0 -0
  573. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/filepost.py +0 -0
  574. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/packages/__init__.py +0 -0
  575. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/packages/backports/__init__.py +0 -0
  576. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/packages/backports/makefile.py +0 -0
  577. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/packages/backports/weakref_finalize.py +0 -0
  578. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/packages/six.py +0 -0
  579. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/poolmanager.py +0 -0
  580. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/request.py +0 -0
  581. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/response.py +0 -0
  582. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/util/__init__.py +0 -0
  583. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/util/connection.py +0 -0
  584. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/util/proxy.py +0 -0
  585. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/util/queue.py +0 -0
  586. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/util/request.py +0 -0
  587. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/util/response.py +0 -0
  588. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/util/retry.py +0 -0
  589. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/util/ssl_.py +0 -0
  590. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/util/ssl_match_hostname.py +0 -0
  591. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/util/ssltransport.py +0 -0
  592. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/util/timeout.py +0 -0
  593. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/util/url.py +0 -0
  594. {pip-25.1.1 → pip-25.3}/src/pip/_vendor/urllib3/util/wait.py +0 -0
  595. {pip-25.1.1 → pip-25.3}/src/pip/py.typed +0 -0
@@ -24,6 +24,7 @@ albertg
24
24
  Alberto Sottile
25
25
  Aleks Bunin
26
26
  Ales Erjavec
27
+ Alessandro Molina
27
28
  Alethea Flowers
28
29
  Alex Gaynor
29
30
  Alex Grönholm
@@ -37,6 +38,7 @@ Alexandre Conrad
37
38
  Alexey Popravka
38
39
  Aleš Erjavec
39
40
  Alli
41
+ Aman
40
42
  Ami Fischman
41
43
  Ananya Maiti
42
44
  Anatoly Techtonik
@@ -56,6 +58,7 @@ Aniruddha Basak
56
58
  Anish Tambe
57
59
  Anrs Hu
58
60
  Anthony Sottile
61
+ Antoine Lambert
59
62
  Antoine Musso
60
63
  Anton Ovchinnikov
61
64
  Anton Patrushev
@@ -220,11 +223,13 @@ Davidovich
220
223
  ddelange
221
224
  Deepak Sharma
222
225
  Deepyaman Datta
226
+ Denis Roussel (ACSONE)
223
227
  Denise Yu
224
228
  dependabot[bot]
225
229
  derwolfe
226
230
  Desetude
227
231
  developer
232
+ Devesh Kumar
228
233
  Devesh Kumar Singh
229
234
  devsagul
230
235
  Diego Caraballo
@@ -234,6 +239,7 @@ Dimitri Merejkowsky
234
239
  Dimitri Papadopoulos
235
240
  Dimitri Papadopoulos Orfanos
236
241
  Dirk Stolle
242
+ dkjsone
237
243
  Dmitry Gladkov
238
244
  Dmitry Volodin
239
245
  Domen Kožar
@@ -295,6 +301,7 @@ Gabriel de Perthuis
295
301
  Garry Polley
296
302
  gavin
297
303
  gdanielson
304
+ Gene Wood
298
305
  Geoffrey Sneddon
299
306
  George Margaritis
300
307
  George Song
@@ -333,6 +340,7 @@ Hugo Lopes Tavares
333
340
  Hugo van Kemenade
334
341
  Hugues Bruant
335
342
  Hynek Schlawack
343
+ iamsrp-deshaw
336
344
  Ian Bicking
337
345
  Ian Cordasco
338
346
  Ian Lee
@@ -343,6 +351,7 @@ Igor Sobreira
343
351
  Ikko Ashimine
344
352
  Ilan Schnell
345
353
  Illia Volochii
354
+ Ilya Abdolmanafi
346
355
  Ilya Baryshev
347
356
  Inada Naoki
348
357
  Ionel Cristian Mărieș
@@ -478,6 +487,7 @@ luojiebin
478
487
  luz.paz
479
488
  László Kiss Kollár
480
489
  M00nL1ght
490
+ MajorTanya
481
491
  Malcolm Smith
482
492
  Marc Abramowitz
483
493
  Marc Tamlyn
@@ -494,6 +504,7 @@ Martin Pavlasek
494
504
  Masaki
495
505
  Masklinn
496
506
  Matej Stuchlik
507
+ Mateusz Sokół
497
508
  Mathew Jennings
498
509
  Mathieu Bridon
499
510
  Mathieu Kniewallner
@@ -521,6 +532,7 @@ mayeut
521
532
  mbaluna
522
533
  Md Sujauddin Sekh
523
534
  mdebi
535
+ Meet Vasita
524
536
  memoselyk
525
537
  meowmeowcat
526
538
  Michael
@@ -640,6 +652,7 @@ Pulkit Goyal
640
652
  q0w
641
653
  Qiangning Hong
642
654
  Qiming Xu
655
+ qraqras
643
656
  Quentin Lee
644
657
  Quentin Pradet
645
658
  R. David Murray
@@ -665,6 +678,7 @@ Robert McGibbon
665
678
  Robert Pollak
666
679
  Robert T. McGibbon
667
680
  robin elisha robinson
681
+ Rodney, Tiara
668
682
  Roey Berman
669
683
  Rohan Jain
670
684
  Roman Bogorodskiy
@@ -680,6 +694,7 @@ Russell Keith-Magee
680
694
  Ryan Shepherd
681
695
  Ryan Wooden
682
696
  ryneeverett
697
+ Ryuma Asai
683
698
  S. Guliaev
684
699
  Sachi King
685
700
  Salvatore Rinchiera
@@ -694,6 +709,8 @@ Sebastian Jordan
694
709
  Sebastian Schaetz
695
710
  Segev Finer
696
711
  SeongSoo Cho
712
+ Sepehr Rasouli
713
+ sepehrrasooli
697
714
  Sergey Vasilyev
698
715
  Seth Michael Larson
699
716
  Seth Woodworth
@@ -705,6 +722,7 @@ Shivansh-007
705
722
  Shixian Sheng
706
723
  Shlomi Fish
707
724
  Shovan Maity
725
+ Shubham Nagure
708
726
  Simeon Visser
709
727
  Simon Cross
710
728
  Simon Pichugin
@@ -719,6 +737,7 @@ Stavros Korokithakis
719
737
  Stefan Scherfke
720
738
  Stefano Rivera
721
739
  Stephan Erb
740
+ Stephen Payne
722
741
  Stephen Rosen
723
742
  stepshal
724
743
  Steve (Gadget) Barnes
@@ -811,7 +830,9 @@ Yeray Diaz Diaz
811
830
  Yoval P
812
831
  Yu Jian
813
832
  Yuan Jing Vincent Yan
833
+ Yuki Kobayashi
814
834
  Yusuke Hayashi
835
+ zackzack38
815
836
  Zearin
816
837
  Zhiping Deng
817
838
  ziebam
@@ -9,6 +9,130 @@
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
+ 25.2 (2025-07-30)
77
+ =================
78
+
79
+ Features
80
+ --------
81
+
82
+ - Declare support for Python 3.14 (`#13506 <https://github.com/pypa/pip/issues/13506>`_)
83
+ - Automatic download resumption and retrying is enabled by default. (`#13464 <https://github.com/pypa/pip/issues/13464>`_)
84
+ - Requires-Python error message displays version clauses in numerical order. (`#13367 <https://github.com/pypa/pip/issues/13367>`_)
85
+ - Minor performance improvement getting the order to install a very large number of interdependent packages. (`#13424 <https://github.com/pypa/pip/issues/13424>`_)
86
+ - Show time taken instead of ``eta 0:00:00`` at download completion. (`#13483 <https://github.com/pypa/pip/issues/13483>`_)
87
+ - Speed up small CLI tools by removing ``import re`` from the console
88
+ script executable template. (`#13165 <https://github.com/pypa/pip/issues/13165>`_)
89
+ - Remove warning when cloning from a Git reference that does not look like a commit hash. (`#12283 <https://github.com/pypa/pip/issues/12283>`_)
90
+
91
+ Bug Fixes
92
+ ---------
93
+
94
+ - ``pip config debug`` now correctly separates options as set by the different files
95
+ at the same level. (`#12099 <https://github.com/pypa/pip/issues/12099>`_)
96
+ - Ensure truststore feature remains active even when a proxy is also in use. (`#13343 <https://github.com/pypa/pip/issues/13343>`_)
97
+ - Include sub-commands in tab completion. (`#13140 <https://github.com/pypa/pip/issues/13140>`_)
98
+ - ``pip list`` with the ``json`` or ``freeze`` format enabled will no longer
99
+ crash when encountering a package with an invalid version. (`#13345 <https://github.com/pypa/pip/issues/13345>`_)
100
+ - Provide a hint if a system error is raised involving long filenames or path segments on Windows. (`#13346 <https://github.com/pypa/pip/issues/13346>`_)
101
+ - Resumed downloads are saved to the HTTP cache like any other normal download. (`#13441 <https://github.com/pypa/pip/issues/13441>`_)
102
+ - Configured verbosity is consistently forwarded while calling Git during
103
+ VCS operations. (`#13329 <https://github.com/pypa/pip/issues/13329>`_)
104
+ - Suppress the progress bar, when running with ``--log`` and ``--quiet``.
105
+
106
+ Consequently, a new ``auto`` mode for ``--progress-bar`` has been added.
107
+ ``auto`` will enable progress bars unless suppressed by ``--quiet``,
108
+ while ``on`` will always enable progress bars. (`#10915 <https://github.com/pypa/pip/issues/10915>`_)
109
+ - Fix normalization of local URLs with non-``file`` schemes. (`#13509 <https://github.com/pypa/pip/issues/13509>`_)
110
+ - Fix normalization of local file URLs on Windows in newer Python versions. (`#13510 <https://github.com/pypa/pip/issues/13510>`_)
111
+ - Fix remaining test failures in Python 3.14 by adjusting ``path_to_url`` and similar functions. (`#13423 <https://github.com/pypa/pip/issues/13423>`_)
112
+ - Fix missing ``network`` test markings, making the suite pass in offline
113
+ environments again. (`#13378 <https://github.com/pypa/pip/issues/13378>`_)
114
+
115
+ Vendored Libraries
116
+ ------------------
117
+
118
+ - Upgrade CacheControl to 0.14.3
119
+ - Upgrade certifi to 2025.7.14
120
+ - Upgrade distlib to 0.4.0
121
+ - Upgrade msgpack to 1.1.1
122
+ - Upgrade platformdirs to 4.3.8
123
+ - Upgrade pygments to 2.19.2
124
+ - Upgrade requests to 2.32.4
125
+ - Upgrade resolvelib to 1.2.0
126
+ - Upgrade rich to 14.1.0
127
+ - Remove vendored typing-extensions.
128
+
129
+ Process
130
+ -------
131
+
132
+ - pip's own licensing metadata now follows :pep:`639`.
133
+ In addition, the licenses of pip's vendored dependencies are now included
134
+ in the ``License-File`` metadata field and in the wheel.
135
+
12
136
  25.1.1 (2025-05-02)
13
137
  ===================
14
138
 
@@ -1,16 +1,13 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pip
3
- Version: 25.1.1
3
+ Version: 25.3
4
4
  Summary: The PyPA recommended tool for installing Python packages.
5
5
  Author-email: The pip developers <distutils-sig@python.org>
6
- License: MIT
7
- Project-URL: Homepage, https://pip.pypa.io/
8
- Project-URL: Documentation, https://pip.pypa.io
9
- Project-URL: Source, https://github.com/pypa/pip
10
- Project-URL: Changelog, https://pip.pypa.io/en/stable/news/
6
+ Requires-Python: >=3.9
7
+ Description-Content-Type: text/x-rst
8
+ License-Expression: MIT
11
9
  Classifier: Development Status :: 5 - Production/Stable
12
10
  Classifier: Intended Audience :: Developers
13
- Classifier: License :: OSI Approved :: MIT License
14
11
  Classifier: Topic :: Software Development :: Build Tools
15
12
  Classifier: Programming Language :: Python
16
13
  Classifier: Programming Language :: Python :: 3
@@ -20,13 +17,36 @@ Classifier: Programming Language :: Python :: 3.10
20
17
  Classifier: Programming Language :: Python :: 3.11
21
18
  Classifier: Programming Language :: Python :: 3.12
22
19
  Classifier: Programming Language :: Python :: 3.13
20
+ Classifier: Programming Language :: Python :: 3.14
23
21
  Classifier: Programming Language :: Python :: Implementation :: CPython
24
22
  Classifier: Programming Language :: Python :: Implementation :: PyPy
25
- Requires-Python: >=3.9
26
- Description-Content-Type: text/x-rst
27
- License-File: LICENSE.txt
28
23
  License-File: AUTHORS.txt
29
- Dynamic: license-file
24
+ License-File: LICENSE.txt
25
+ License-File: src/pip/_vendor/cachecontrol/LICENSE.txt
26
+ License-File: src/pip/_vendor/certifi/LICENSE
27
+ License-File: src/pip/_vendor/dependency_groups/LICENSE.txt
28
+ License-File: src/pip/_vendor/distlib/LICENSE.txt
29
+ License-File: src/pip/_vendor/distro/LICENSE
30
+ License-File: src/pip/_vendor/idna/LICENSE.md
31
+ License-File: src/pip/_vendor/msgpack/COPYING
32
+ License-File: src/pip/_vendor/packaging/LICENSE
33
+ License-File: src/pip/_vendor/packaging/LICENSE.APACHE
34
+ License-File: src/pip/_vendor/packaging/LICENSE.BSD
35
+ License-File: src/pip/_vendor/pkg_resources/LICENSE
36
+ License-File: src/pip/_vendor/platformdirs/LICENSE
37
+ License-File: src/pip/_vendor/pygments/LICENSE
38
+ License-File: src/pip/_vendor/pyproject_hooks/LICENSE
39
+ License-File: src/pip/_vendor/requests/LICENSE
40
+ License-File: src/pip/_vendor/resolvelib/LICENSE
41
+ License-File: src/pip/_vendor/rich/LICENSE
42
+ License-File: src/pip/_vendor/tomli/LICENSE
43
+ License-File: src/pip/_vendor/tomli_w/LICENSE
44
+ License-File: src/pip/_vendor/truststore/LICENSE
45
+ License-File: src/pip/_vendor/urllib3/LICENSE.txt
46
+ Project-URL: Changelog, https://pip.pypa.io/en/stable/news/
47
+ Project-URL: Documentation, https://pip.pypa.io
48
+ Project-URL: Homepage, https://pip.pypa.io/
49
+ Project-URL: Source, https://github.com/pypa/pip
30
50
 
31
51
  pip - The Python Package Installer
32
52
  ==================================
@@ -88,3 +108,4 @@ rooms, and mailing lists is expected to follow the `PSF Code of Conduct`_.
88
108
  .. _User IRC: https://kiwiirc.com/nextclient/#ircs://irc.libera.chat:+6697/pypa
89
109
  .. _Development IRC: https://kiwiirc.com/nextclient/#ircs://irc.libera.chat:+6697/pypa-dev
90
110
  .. _PSF Code of Conduct: https://github.com/pypa/.github/blob/main/CODE_OF_CONDUCT.md
111
+
@@ -0,0 +1,2 @@
1
+ build
2
+ flit-core
@@ -0,0 +1,22 @@
1
+ #
2
+ # This file is autogenerated by pip-compile with Python 3.12
3
+ # by the following command:
4
+ #
5
+ # pip-compile --allow-unsafe --generate-hashes build-requirements.in
6
+ #
7
+ build==1.3.0 \
8
+ --hash=sha256:698edd0ea270bde950f53aed21f3a0135672206f3911e0176261a31e0e07b397 \
9
+ --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4
10
+ # via -r build-requirements.in
11
+ flit-core==3.12.0 \
12
+ --hash=sha256:18f63100d6f94385c6ed57a72073443e1a71a4acb4339491615d0f16d6ff01b2 \
13
+ --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c
14
+ # via -r build-requirements.in
15
+ packaging==25.0 \
16
+ --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 \
17
+ --hash=sha256:d443872c98d677bf60f6a1f2f8c1cb748e8fe762d2bf9d3148b5599295b0fc4f
18
+ # via build
19
+ pyproject-hooks==1.2.0 \
20
+ --hash=sha256:1e859bd5c40fae9448642dd871adf459e5e2084186e8d2c2a79a824c970da1f8 \
21
+ --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913
22
+ # via build
@@ -77,7 +77,7 @@ when decision is needed.
77
77
  .. _`2-build-system-interface`:
78
78
  .. rubric:: Build System Interface
79
79
 
80
- This is now covered in :doc:`../reference/build-system/index`.
80
+ This is now covered in :doc:`../reference/build-system`.
81
81
 
82
82
  .. _`General Options`:
83
83
 
@@ -204,9 +204,9 @@ Examples
204
204
  pip-8.1.1-py2.py3-none-any.whl
205
205
 
206
206
  #. Download a package supporting one of several ABIs and platforms.
207
- This is useful when fetching wheels for a well-defined interpreter, whose
208
- supported ABIs and platforms are known and fixed, different than the one pip is
209
- running under.
207
+ This is useful when fetching wheels for a well-defined interpreter, whose
208
+ supported ABIs and platforms are known and fixed, different than the one pip is
209
+ running under.
210
210
 
211
211
  .. tab:: Unix/macOS
212
212
 
@@ -23,6 +23,15 @@ Description
23
23
 
24
24
  .. pip-command-description:: freeze
25
25
 
26
+ .. note::
27
+ By default, ``pip freeze`` omits bootstrap packaging tools so the output
28
+ focuses on your project’s dependencies. On Python **3.11 and earlier**
29
+ this excludes ``pip``, ``setuptools``, ``wheel`` and ``distribute``; on
30
+ Python **3.12 and later** only ``pip`` is excluded. Use ``--all`` to
31
+ include those packages when you need a complete environment snapshot.
32
+ ``pip freeze`` reports what is installed; it does **not** compute a
33
+ lockfile or a solver result.
34
+
26
35
 
27
36
  Options
28
37
  =======
@@ -66,8 +66,8 @@ for the name and project version (this is in theory slightly less reliable
66
66
  than using the ``egg_info`` command, but avoids downloading and processing
67
67
  unnecessary numbers of files).
68
68
 
69
- Any URL may use the ``#egg=name`` syntax (see :doc:`../topics/vcs-support`) to
70
- explicitly state the project name.
69
+ The :ref:`Direct URL requirement syntax <pypug:dependency-specifiers>` can be used
70
+ to explicitly state the project name (see :doc:`../topics/vcs-support`).
71
71
 
72
72
  Satisfying Requirements
73
73
  -----------------------
@@ -255,7 +255,7 @@ This is now covered in :doc:`../topics/local-project-installs`.
255
255
  .. _`0-build-system-interface`:
256
256
  .. rubric:: Build System Interface
257
257
 
258
- This is now covered in :doc:`../reference/build-system/index`.
258
+ This is now covered in :doc:`../reference/build-system`.
259
259
 
260
260
  .. _`pip install Options`:
261
261
 
@@ -321,7 +321,7 @@ Examples
321
321
 
322
322
  py -m pip install --upgrade SomePackage
323
323
 
324
- .. note::
324
+ .. note::
325
325
 
326
326
  This will guarantee an update to ``SomePackage`` as it is a direct
327
327
  requirement, and possibly upgrade dependencies if their installed
@@ -367,21 +367,21 @@ Examples
367
367
 
368
368
  .. code-block:: shell
369
369
 
370
- python -m pip install -e 'git+https://git.repo/some_pkg.git#egg=SomePackage' # from git
371
- python -m pip install -e 'hg+https://hg.repo/some_pkg.git#egg=SomePackage' # from mercurial
372
- python -m pip install -e 'svn+svn://svn.repo/some_pkg/trunk/#egg=SomePackage' # from svn
373
- python -m pip install -e 'git+https://git.repo/some_pkg.git@feature#egg=SomePackage' # from 'feature' branch
374
- python -m pip install -e 'git+https://git.repo/some_repo.git#egg=subdir&subdirectory=subdir_path' # install a python package from a repo subdirectory
370
+ python -m pip install -e 'SomePackage @ git+https://git.repo/some_pkg.git' # from git
371
+ python -m pip install -e 'SomePackage @ hg+https://hg.repo/some_pkg.git' # from mercurial
372
+ python -m pip install -e 'SomePakcage @ svn+svn://svn.repo/some_pkg/trunk/' # from svn
373
+ python -m pip install -e 'SomePackage @ git+https://git.repo/some_pkg.git@feature' # from 'feature' branch
374
+ python -m pip install -e 'SomePackage @ git+https://git.repo/some_repo.git#subdirectory=subdir_path' # install a python package from a repo subdirectory
375
375
 
376
376
  .. tab:: Windows
377
377
 
378
378
  .. code-block:: shell
379
379
 
380
- py -m pip install -e "git+https://git.repo/some_pkg.git#egg=SomePackage" # from git
381
- py -m pip install -e "hg+https://hg.repo/some_pkg.git#egg=SomePackage" # from mercurial
382
- py -m pip install -e "svn+svn://svn.repo/some_pkg/trunk/#egg=SomePackage" # from svn
383
- py -m pip install -e "git+https://git.repo/some_pkg.git@feature#egg=SomePackage" # from 'feature' branch
384
- py -m pip install -e "git+https://git.repo/some_repo.git#egg=subdir&subdirectory=subdir_path" # install a python package from a repo subdirectory
380
+ py -m pip install -e "SomePackage @ git+https://git.repo/some_pkg.git" # from git
381
+ py -m pip install -e "SomePackage @ hg+https://hg.repo/some_pkg.git" # from mercurial
382
+ py -m pip install -e "SomePackage @ svn+svn://svn.repo/some_pkg/trunk/" # from svn
383
+ py -m pip install -e "SomePackage @ git+https://git.repo/some_pkg.git@feature" # from 'feature' branch
384
+ py -m pip install -e "SomePackage @ git+https://git.repo/some_repo.git#subdirectory=subdir_path" # install a python package from a repo subdirectory
385
385
 
386
386
  #. Install a package with extras, i.e., optional dependencies
387
387
  (:ref:`specification <pypug:dependency-specifiers>`).
@@ -479,12 +479,11 @@ Examples
479
479
 
480
480
  .. warning::
481
481
 
482
- Using this option to search for packages which are not in the main
483
- repository (such as private packages) is unsafe, per a security
484
- vulnerability called
485
- `dependency confusion <https://azure.microsoft.com/en-us/resources/3-ways-to-mitigate-risk-using-private-package-feeds/>`_:
486
- an attacker can claim the package on the public repository in a way that
487
- will ensure it gets chosen over the private package.
482
+ Using the ``--extra-index-url`` option to search for packages which are
483
+ not in the main repository (for example, private packages) is unsafe.
484
+ This is a class of security issue known as `dependency confusion <https://azure.microsoft.com/en-us/resources/3-ways-to-mitigate-risk-using-private-package-feeds/>`_: an
485
+ attacker can publish a package with the same name to a public index,
486
+ which may then be chosen instead of your private package.
488
487
 
489
488
  .. tab:: Unix/macOS
490
489
 
@@ -142,10 +142,10 @@ Examples
142
142
 
143
143
  #. List packages installed in editable mode
144
144
 
145
- When some packages are installed in editable mode, ``pip list`` outputs an
146
- additional column that shows the directory where the editable project is
147
- located (i.e. the directory that contains the ``pyproject.toml`` or
148
- ``setup.py`` file).
145
+ When some packages are installed in editable mode, ``pip list`` outputs an
146
+ additional column that shows the directory where the editable project is
147
+ located (i.e. the directory that contains the ``pyproject.toml`` or
148
+ ``setup.py`` file).
149
149
 
150
150
  .. tab:: Unix/macOS
151
151
 
@@ -172,7 +172,7 @@ located (i.e. the directory that contains the ``pyproject.toml`` or
172
172
  setuptools 57.4.0
173
173
  wheel 0.36.2
174
174
 
175
- The json format outputs an additional ``editable_project_location`` field.
175
+ The json format outputs an additional ``editable_project_location`` field.
176
176
 
177
177
  .. tab:: Unix/macOS
178
178
 
@@ -35,7 +35,7 @@ Options
35
35
  Examples
36
36
  ========
37
37
 
38
- #. Emit a ``pylock.toml`` for the the project in the current directory
38
+ #. Emit a ``pylock.toml`` for the project in the current directory
39
39
 
40
40
  .. tab:: Unix/macOS
41
41
 
@@ -28,7 +28,7 @@ Description
28
28
  .. _`1-build-system-interface`:
29
29
  .. rubric:: Build System Interface
30
30
 
31
- This is now covered in :doc:`../reference/build-system/index`.
31
+ This is now covered in :doc:`../reference/build-system`.
32
32
 
33
33
  Differences to ``build``
34
34
  ------------------------
@@ -5,7 +5,6 @@ import os
5
5
  import pathlib
6
6
  import re
7
7
  import sys
8
- from typing import List, Tuple
9
8
 
10
9
  # Add the docs/ directory to sys.path, because pip_sphinxext.py is there.
11
10
  docs_dir = os.path.dirname(os.path.dirname(__file__))
@@ -101,7 +100,7 @@ html_use_index = False
101
100
 
102
101
 
103
102
  # List of manual pages generated
104
- def determine_man_pages() -> List[Tuple[str, str, str, str, int]]:
103
+ def determine_man_pages() -> list[tuple[str, str, str, str, int]]:
105
104
  """Determine which man pages need to be generated."""
106
105
 
107
106
  def to_document_name(path: str, base_dir: str) -> str:
@@ -18,7 +18,6 @@ The ``README``, license, ``pyproject.toml``, and so on are in the top level.
18
18
 
19
19
  * ``AUTHORS.txt``
20
20
  * ``LICENSE.txt``
21
- * ``MANIFEST.in``
22
21
  * ``NEWS.rst``
23
22
  * ``pyproject.toml``
24
23
  * ``README.rst``
@@ -31,7 +30,6 @@ The ``README``, license, ``pyproject.toml``, and so on are in the top level.
31
30
  * ``html/`` *[sources to HTML documentation avail. online]*
32
31
  * ``man/`` has man pages the distros can use by running ``man pip``
33
32
  * ``pip_sphinxext.py`` *[an extension -- pip-specific plugins to Sphinx that do not apply to other packages]*
34
- * ``requirements.txt``
35
33
 
36
34
  * ``news/`` *[pip stores news fragments… Every time pip makes a user-facing change, a file is added to this directory (usually a short note referring to a GitHub issue) with the right extension & name so it gets included in changelog…. So every release the maintainers will be deleting old files in this directory? Yes - we use the towncrier automation to generate a NEWS file, and auto-delete old stuff. There’s more about this in the contributor documentation!]*
37
35
 
@@ -42,13 +42,13 @@ In sequence, what does pip do?:
42
42
  user-given requirements, and where to get them from.
43
43
 
44
44
  a. this step is convoluted - also exploratory, involves dependency
45
- resolution -- we need to get to the index, see what versions
46
- are available
45
+ resolution -- we need to get to the index, see what versions
46
+ are available
47
47
 
48
48
  b. Sometimes you need to build the package itself in order to get
49
- dependency information, which means fetching the package from
50
- package index, which means knowing whether it exists. For a
51
- single package,
49
+ dependency information, which means fetching the package from
50
+ package index, which means knowing whether it exists. For a
51
+ single package,
52
52
 
53
53
  4. Install the actual items to be installed.
54
54
 
@@ -23,6 +23,7 @@ pip support a variety of Python interpreters:
23
23
  - CPython 3.11
24
24
  - CPython 3.12
25
25
  - CPython 3.13
26
+ - CPython 3.14
26
27
  - Latest PyPy3
27
28
 
28
29
  on different operating systems:
@@ -37,7 +38,7 @@ and on different architectures:
37
38
  - x86
38
39
  - arm64 (macOS only)
39
40
 
40
- so 49 hypothetical interpreters.
41
+ so 56 hypothetical interpreters.
41
42
 
42
43
 
43
44
  Checks
@@ -100,6 +101,8 @@ Actual testing
100
101
  | | +-------+---------------+-----------------+
101
102
  | | | CP3.13| | |
102
103
  | | +-------+---------------+-----------------+
104
+ | | | CP3.14| | |
105
+ | | +-------+---------------+-----------------+
103
106
  | | | PyPy3 | | |
104
107
  | Windows +----------+-------+---------------+-----------------+
105
108
  | | x64 | CP3.9 | GitHub | GitHub |
@@ -112,6 +115,8 @@ Actual testing
112
115
  | | +-------+---------------+-----------------+
113
116
  | | | CP3.13| GitHub | GitHub |
114
117
  | | +-------+---------------+-----------------+
118
+ | | | CP3.14| GitHub | GitHub |
119
+ | | +-------+---------------+-----------------+
115
120
  | | | PyPy3 | | |
116
121
  +-----------+----------+-------+---------------+-----------------+
117
122
  | | x86 | CP3.9 | | |
@@ -124,6 +129,8 @@ Actual testing
124
129
  | | +-------+---------------+-----------------+
125
130
  | | | CP3.13| | |
126
131
  | | +-------+---------------+-----------------+
132
+ | | | CP3.14| | |
133
+ | | +-------+---------------+-----------------+
127
134
  | | | PyPy3 | | |
128
135
  | Linux +----------+-------+---------------+-----------------+
129
136
  | | x64 | CP3.9 | GitHub | GitHub |
@@ -136,6 +143,8 @@ Actual testing
136
143
  | | +-------+---------------+-----------------+
137
144
  | | | CP3.13| GitHub | GitHub |
138
145
  | | +-------+---------------+-----------------+
146
+ | | | CP3.14| GitHub | GitHub |
147
+ | | +-------+---------------+-----------------+
139
148
  | | | PyPy3 | | |
140
149
  +-----------+----------+-------+---------------+-----------------+
141
150
  | | arm64 | CP3.9 | GitHub | GitHub |
@@ -148,6 +157,8 @@ Actual testing
148
157
  | | +-------+---------------+-----------------+
149
158
  | | | CP3.13| GitHub | GitHub |
150
159
  | | +-------+---------------+-----------------+
160
+ | | | CP3.14| GitHub | GitHub |
161
+ | | +-------+---------------+-----------------+
151
162
  | | | PyPy3 | | |
152
163
  | macOS +----------+-------+---------------+-----------------+
153
164
  | | x64 | CP3.9 | GitHub | GitHub |
@@ -160,5 +171,7 @@ Actual testing
160
171
  | | +-------+---------------+-----------------+
161
172
  | | | CP3.13| GitHub | GitHub |
162
173
  | | +-------+---------------+-----------------+
174
+ | | | CP3.14| GitHub | GitHub |
175
+ | | +-------+---------------+-----------------+
163
176
  | | | PyPy3 | | |
164
177
  +-----------+----------+-------+---------------+-----------------+