diff --git a/docs/changelog/3138.bugfix.rst b/docs/changelog/3138.bugfix.rst new file mode 100644 index 000000000..ad3f36702 --- /dev/null +++ b/docs/changelog/3138.bugfix.rst @@ -0,0 +1,3 @@ +Upgrade embedded wheels: + +- pip to ``26.1.1`` from ``26.1`` diff --git a/src/virtualenv/seed/wheels/embed/__init__.py b/src/virtualenv/seed/wheels/embed/__init__.py index dbeb288eb..aaaa3c737 100644 --- a/src/virtualenv/seed/wheels/embed/__init__.py +++ b/src/virtualenv/seed/wheels/embed/__init__.py @@ -19,27 +19,27 @@ "setuptools": "setuptools-82.0.1-py3-none-any.whl", }, "3.10": { - "pip": "pip-26.1-py3-none-any.whl", + "pip": "pip-26.1.1-py3-none-any.whl", "setuptools": "setuptools-82.0.1-py3-none-any.whl", }, "3.11": { - "pip": "pip-26.1-py3-none-any.whl", + "pip": "pip-26.1.1-py3-none-any.whl", "setuptools": "setuptools-82.0.1-py3-none-any.whl", }, "3.12": { - "pip": "pip-26.1-py3-none-any.whl", + "pip": "pip-26.1.1-py3-none-any.whl", "setuptools": "setuptools-82.0.1-py3-none-any.whl", }, "3.13": { - "pip": "pip-26.1-py3-none-any.whl", + "pip": "pip-26.1.1-py3-none-any.whl", "setuptools": "setuptools-82.0.1-py3-none-any.whl", }, "3.14": { - "pip": "pip-26.1-py3-none-any.whl", + "pip": "pip-26.1.1-py3-none-any.whl", "setuptools": "setuptools-82.0.1-py3-none-any.whl", }, "3.15": { - "pip": "pip-26.1-py3-none-any.whl", + "pip": "pip-26.1.1-py3-none-any.whl", "setuptools": "setuptools-82.0.1-py3-none-any.whl", }, } @@ -50,7 +50,7 @@ BUNDLE_SHA256 = { "pip-25.0.1-py3-none-any.whl": "c46efd13b6aa8279f33f2864459c8ce587ea6a1a59ee20de055868d8f7688f7f", "pip-26.0.1-py3-none-any.whl": "bdb1b08f4274833d62c1aa29e20907365a2ceb950410df15fc9521bad440122b", - "pip-26.1-py3-none-any.whl": "4e8486d821d814b77319acb7b9e8bf5a4ee7590a643e7cb21029f209be8573c1", + "pip-26.1.1-py3-none-any.whl": "99cb1c2899893b075ff56e4ed0af55669a955b49ad7fb8d8603ecdaf4ed653fb", "setuptools-75.3.4-py3-none-any.whl": "2dd50a7f42dddfa1d02a36f275dbe716f38ed250224f609d35fb60a09593d93e", "setuptools-82.0.1-py3-none-any.whl": "a59e362652f08dcd477c78bb6e7bd9d80a7995bc73ce773050228a348ce2e5bb", "wheel-0.45.1-py3-none-any.whl": "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248", diff --git a/src/virtualenv/seed/wheels/embed/pip-26.1-py3-none-any.whl b/src/virtualenv/seed/wheels/embed/pip-26.1.1-py3-none-any.whl similarity index 94% rename from src/virtualenv/seed/wheels/embed/pip-26.1-py3-none-any.whl rename to src/virtualenv/seed/wheels/embed/pip-26.1.1-py3-none-any.whl index b51afa14f..ab0307c77 100644 Binary files a/src/virtualenv/seed/wheels/embed/pip-26.1-py3-none-any.whl and b/src/virtualenv/seed/wheels/embed/pip-26.1.1-py3-none-any.whl differ diff --git a/tests/unit/seed/embed/test_bootstrap_link_via_app_data.py b/tests/unit/seed/embed/test_bootstrap_link_via_app_data.py index 8b29c6001..99b6cef36 100644 --- a/tests/unit/seed/embed/test_bootstrap_link_via_app_data.py +++ b/tests/unit/seed/embed/test_bootstrap_link_via_app_data.py @@ -122,12 +122,7 @@ def test_seed_link_via_app_data(tmp_path, coverage_env, current_fastest, copies, purelib = result.creator.purelib patch_files = {purelib / f"{'_virtualenv'}.{i}" for i in ("py", "pyc", "pth")} patch_files.add(purelib / "__pycache__") - - # pip 26.1+ leaves empty parent directories on uninstall (pypa/pip#13725) - def _has_files(path: Path) -> bool: - return path.is_file() or (path.is_dir() and any(_has_files(child) for child in path.iterdir())) - - post_run = {p for p in set(site_package.iterdir()) - patch_files if _has_files(p)} + post_run = set(site_package.iterdir()) - patch_files assert not post_run, "\n".join(str(i) for i in post_run)