Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Virtualenv corrupts dist-info during embedded downgrade overlaying existing venv #2185

Closed
arcivanov opened this issue Sep 16, 2021 · 7 comments · Fixed by #2186
Closed

Virtualenv corrupts dist-info during embedded downgrade overlaying existing venv #2185

arcivanov opened this issue Sep 16, 2021 · 7 comments · Fixed by #2186
Labels

Comments

@arcivanov
Copy link
Contributor

arcivanov commented Sep 16, 2021

Scenario:

  1. Virtualenv carries outdated embedded setuptools (or any other internal essential).
  2. Rollout virtualenv.
  3. Activate rolled out venv.
  4. Upgrade setuptools with pip.
  5. Deactivate venv.
  6. Rollout virtualenv again on top of the existing venv.
  7. Observe multiple dist-info directories present for incorrectly downgraded tool, resulting in venv corruption.

Example - always reproducible:

(pyb-3.9.7) [username@hostname pybuilder]$ pip install virtualenv\<20.8
Collecting virtualenv<20.8
  Using cached virtualenv-20.7.2-py2.py3-none-any.whl (5.3 MB)
Requirement already satisfied: distlib<1,>=0.3.1 in /home/username/.pyenv/versions/3.9.7/envs/pyb-3.9.7/lib/python3.9/site-packages (from virtualenv<20.8) (0.3.2)
Requirement already satisfied: backports.entry-points-selectable>=1.0.4 in /home/username/.pyenv/versions/3.9.7/envs/pyb-3.9.7/lib/python3.9/site-packages (from virtualenv<20.8) (1.1.0)
Requirement already satisfied: platformdirs<3,>=2 in /home/username/.pyenv/versions/3.9.7/envs/pyb-3.9.7/lib/python3.9/site-packages (from virtualenv<20.8) (2.3.0)
Requirement already satisfied: six<2,>=1.9.0 in /home/username/.pyenv/versions/3.9.7/envs/pyb-3.9.7/lib/python3.9/site-packages (from virtualenv<20.8) (1.16.0)
Requirement already satisfied: filelock<4,>=3.0.0 in /home/username/.pyenv/versions/3.9.7/envs/pyb-3.9.7/lib/python3.9/site-packages (from virtualenv<20.8) (3.0.12)
Installing collected packages: virtualenv
  Attempting uninstall: virtualenv
    Found existing installation: virtualenv 20.8.0
    Uninstalling virtualenv-20.8.0:
      Successfully uninstalled virtualenv-20.8.0
Successfully installed virtualenv-20.7.2
(pyb-3.9.7) [username@hostname pybuilder]$ virtualenv test-env
created virtual environment CPython3.9.7.final.0-64 in 113ms
  creator CPython3Posix(dest=/home/username/src/pybuilder/test-env, clear=False, no_vcs_ignore=False, global=False)
  seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/home/username/.local/share/virtualenv)
    added seed packages: pip==21.2.3, setuptools==57.4.0, wheel==0.37.0
  activators BashActivator,CShellActivator,FishActivator,PowerShellActivator,PythonActivator
(pyb-3.9.7) [username@hostname pybuilder]$ source test-env/bin/activate
(test-env) (pyb-3.9.7) [username@hostname pybuilder]$ pip install -U setuptools
Requirement already satisfied: setuptools in ./test-env/lib/python3.9/site-packages (57.4.0)
Collecting setuptools
  Using cached setuptools-58.0.4-py3-none-any.whl (816 kB)
Installing collected packages: setuptools
  Attempting uninstall: setuptools
    Found existing installation: setuptools 57.4.0
    Uninstalling setuptools-57.4.0:
      Successfully uninstalled setuptools-57.4.0
Successfully installed setuptools-58.0.4
WARNING: You are using pip version 21.2.3; however, version 21.2.4 is available.
You should consider upgrading via the '/home/username/src/pybuilder/test-env/bin/python -m pip install --upgrade pip' command.
(test-env) (pyb-3.9.7) [username@hostname pybuilder]$ deactivate
(pyb-3.9.7) [username@hostname pybuilder]$ ls -la test-env/lib/python3.9/site-packages/
total 24
drwxr-xr-x 11 username username 4096 Sep 16 13:34 .
drwxr-xr-x  3 username username   27 Sep 16 13:34 ..
drwxr-xr-x  3 username username   63 Sep 16 13:34 _distutils_hack
-rw-r--r--  1 username username  152 Sep 16 13:34 distutils-precedence.pth
drwxr-xr-x  5 username username  111 Sep 16 13:34 pip
drwxr-xr-x  2 username username  130 Sep 16 13:34 pip-21.2.3.dist-info
-rw-r--r--  1 username username    0 Sep 16 13:34 pip-21.2.3.virtualenv
drwxr-xr-x  6 username username   86 Sep 16 13:34 pkg_resources
drwxr-xr-x  2 username username   40 Sep 16 13:34 __pycache__
drwxr-xr-x  7 username username 4096 Sep 16 13:34 setuptools
drwxr-xr-x  2 username username  143 Sep 16 13:34 setuptools-58.0.4.dist-info
-rw-r--r--  1 username username   18 Sep 16 13:34 _virtualenv.pth
-rw-r--r--  1 username username 5662 Sep 16 13:34 _virtualenv.py
drwxr-xr-x  4 username username  190 Sep 16 13:34 wheel
drwxr-xr-x  2 username username  130 Sep 16 13:34 wheel-0.37.0.dist-info
-rw-r--r--  1 username username    0 Sep 16 13:34 wheel-0.37.0.virtualenv
(pyb-3.9.7) [username@hostname pybuilder]$ virtualenv test-env
created virtual environment CPython3.9.7.final.0-64 in 128ms
  creator CPython3Posix(dest=/home/username/src/pybuilder/test-env, clear=False, no_vcs_ignore=False, global=False)
  seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/home/username/.local/share/virtualenv)
    added seed packages: pip==21.2.3, setuptools==57.4.0, setuptools==58.0.4, wheel==0.37.0
  activators BashActivator,CShellActivator,FishActivator,PowerShellActivator,PythonActivator
(pyb-3.9.7) [username@hostname pybuilder]$ ls -la test-env/lib/python3.9/site-packages/
total 24
drwxr-xr-x 12 username username 4096 Sep 16 13:35 .
drwxr-xr-x  3 username username   27 Sep 16 13:34 ..
drwxr-xr-x  2 username username   44 Sep 16 13:35 _distutils_hack
-rw-r--r--  1 username username  152 Sep 16 13:35 distutils-precedence.pth
drwxr-xr-x  4 username username   92 Sep 16 13:35 pip
drwxr-xr-x  2 username username  130 Sep 16 13:35 pip-21.2.3.dist-info
-rw-r--r--  1 username username    0 Sep 16 13:35 pip-21.2.3.virtualenv
drwxr-xr-x  5 username username   67 Sep 16 13:35 pkg_resources
drwxr-xr-x  2 username username   40 Sep 16 13:34 __pycache__

********  <=======================
drwxr-xr-x  6 username username 4096 Sep 16 13:35 setuptools
drwxr-xr-x  2 username username  126 Sep 16 13:35 setuptools-57.4.0.dist-info
-rw-r--r--  1 username username    0 Sep 16 13:35 setuptools-57.4.0.virtualenv
drwxr-xr-x  2 username username  143 Sep 16 13:34 setuptools-58.0.4.dist-info
*********

-rw-r--r--  1 username username   18 Sep 16 13:35 _virtualenv.pth
-rw-r--r--  1 username username 5662 Sep 16 13:35 _virtualenv.py
drwxr-xr-x  4 username username  190 Sep 16 13:35 wheel
drwxr-xr-x  2 username username  130 Sep 16 13:35 wheel-0.37.0.dist-info
-rw-r--r--  1 username username    0 Sep 16 13:35 wheel-0.37.0.virtualenv

This environment is now broken producing pybuilder/pybuilder#795 due to setuptools-57.4.0.dist-info and setuptools-58.0.4.dist-info being present.

@arcivanov arcivanov added the bug label Sep 16, 2021
@arcivanov
Copy link
Contributor Author

arcivanov commented Sep 16, 2021

$ virtualenv -vvv --with-traceback test-env
111 setup logging to NOTSET [DEBUG report:43]
120 find interpreter for spec PythonSpec(path=/home/username/.pyenv/versions/pyb-3.9.7/bin/python) [INFO builtin:62]
120 discover exe for PythonInfo(spec=CPython3.9.7.final.0-64, exe=/home/username/.pyenv/versions/pyb-3.9.7/bin/python, platform=linux, version='3.9.7 (default, Aug 31 2021, 15:30:43) \n[GCC 11.2.1 20210728 (Red Hat 11.2.1-1)]', encoding_fs_io=utf-8-utf-8) in /home/username/.pyenv/versions/3.9.7 [DEBUG py_info:389]
120 filesystem is case-sensitive [DEBUG info:28]
121 Attempting to acquire lock 139925606013152 on /home/username/.local/share/virtualenv/py_info/1/57838396cefc4382825b151b3bf88f470d177753880377de6cba0503e39937b3.lock [DEBUG filelock:270]
121 Lock 139925606013152 acquired on /home/username/.local/share/virtualenv/py_info/1/57838396cefc4382825b151b3bf88f470d177753880377de6cba0503e39937b3.lock [INFO filelock:274]
121 got python info of /home/username/.pyenv/versions/3.9.7/bin/python3.9 from /home/username/.local/share/virtualenv/py_info/1/57838396cefc4382825b151b3bf88f470d177753880377de6cba0503e39937b3.json [DEBUG via_disk_folder:135]
122 Attempting to release lock 139925606013152 on /home/username/.local/share/virtualenv/py_info/1/57838396cefc4382825b151b3bf88f470d177753880377de6cba0503e39937b3.lock [DEBUG filelock:315]
122 Lock 139925606013152 released on /home/username/.local/share/virtualenv/py_info/1/57838396cefc4382825b151b3bf88f470d177753880377de6cba0503e39937b3.lock [INFO filelock:318]
122 proposed PythonInfo(spec=CPython3.9.7.final.0-64, system=/home/username/.pyenv/versions/3.9.7/bin/python3.9, exe=/home/username/.pyenv/versions/pyb-3.9.7/bin/python, platform=linux, version='3.9.7 (default, Aug 31 2021, 15:30:43) \n[GCC 11.2.1 20210728 (Red Hat 11.2.1-1)]', encoding_fs_io=utf-8-utf-8) [INFO builtin:69]
122 accepted PythonInfo(spec=CPython3.9.7.final.0-64, system=/home/username/.pyenv/versions/3.9.7/bin/python3.9, exe=/home/username/.pyenv/versions/pyb-3.9.7/bin/python, platform=linux, version='3.9.7 (default, Aug 31 2021, 15:30:43) \n[GCC 11.2.1 20210728 (Red Hat 11.2.1-1)]', encoding_fs_io=utf-8-utf-8) [DEBUG builtin:71]
151 create virtual environment via CPython3Posix(dest=/home/username/src/pybuilder/test-env, clear=False, no_vcs_ignore=False, global=False) [INFO session:52]
152 write /home/username/src/pybuilder/test-env/pyvenv.cfg [DEBUG pyenv_cfg:34]
152     home = /home/username/.pyenv/versions/3.9.7 [DEBUG pyenv_cfg:38]
152     implementation = CPython [DEBUG pyenv_cfg:38]
152     version_info = 3.9.7.final.0 [DEBUG pyenv_cfg:38]
152     virtualenv = 20.7.2 [DEBUG pyenv_cfg:38]
152     include-system-site-packages = false [DEBUG pyenv_cfg:38]
152     base-prefix = /home/username/.pyenv/versions/3.9.7 [DEBUG pyenv_cfg:38]
152     base-exec-prefix = /home/username/.pyenv/versions/3.9.7 [DEBUG pyenv_cfg:38]
152     base-executable = /home/username/.pyenv/versions/3.9.7/bin/python3.9 [DEBUG pyenv_cfg:38]
152 remove file /home/username/src/pybuilder/test-env/bin/python [DEBUG _sync:38]
152 symlink /home/username/.pyenv/versions/3.9.7/bin/python3.9 to /home/username/src/pybuilder/test-env/bin/python [DEBUG _sync:44]
152 create virtualenv import hook file /home/username/src/pybuilder/test-env/lib/python3.9/site-packages/_virtualenv.pth [DEBUG api:95]
153 create /home/username/src/pybuilder/test-env/lib/python3.9/site-packages/_virtualenv.py [DEBUG api:98]
153 ============================== target debug ============================== [DEBUG session:54]
153 debug via /home/username/src/pybuilder/test-env/bin/python /home/username/.pyenv/versions/pyb-3.9.7/lib/python3.9/site-packages/virtualenv/create/debug.py [DEBUG creator:224]
153 {
  "sys": {
    "executable": "/home/username/src/pybuilder/test-env/bin/python",
    "_base_executable": "/home/username/src/pybuilder/test-env/bin/python",
    "prefix": "/home/username/src/pybuilder/test-env",
    "base_prefix": "/home/username/.pyenv/versions/3.9.7",
    "real_prefix": null,
    "exec_prefix": "/home/username/src/pybuilder/test-env",
    "base_exec_prefix": "/home/username/.pyenv/versions/3.9.7",
    "path": [
      "/home/username/.pyenv/versions/3.9.7/lib/python39.zip",
      "/home/username/.pyenv/versions/3.9.7/lib/python3.9",
      "/home/username/.pyenv/versions/3.9.7/lib/python3.9/lib-dynload",
      "/home/username/src/pybuilder/test-env/lib/python3.9/site-packages"
    ],
    "meta_path": [
      "<class '_virtualenv._Finder'>",
      "<class '_frozen_importlib.BuiltinImporter'>",
      "<class '_frozen_importlib.FrozenImporter'>",
      "<class '_frozen_importlib_external.PathFinder'>"
    ],
    "fs_encoding": "utf-8",
    "io_encoding": "utf-8"
  },
  "version": "3.9.7 (default, Aug 31 2021, 15:30:43) \n[GCC 11.2.1 20210728 (Red Hat 11.2.1-1)]",
  "makefile_filename": "/home/username/.pyenv/versions/3.9.7/lib/python3.9/config-3.9-x86_64-linux-gnu/Makefile",
  "os": "<module 'os' from '/home/username/.pyenv/versions/3.9.7/lib/python3.9/os.py'>",
  "site": "<module 'site' from '/home/username/.pyenv/versions/3.9.7/lib/python3.9/site.py'>",
  "datetime": "<module 'datetime' from '/home/username/.pyenv/versions/3.9.7/lib/python3.9/datetime.py'>",
  "math": "<module 'math' from '/home/username/.pyenv/versions/3.9.7/lib/python3.9/lib-dynload/math.cpython-39-x86_64-linux-gnu.so'>",
  "json": "<module 'json' from '/home/username/.pyenv/versions/3.9.7/lib/python3.9/json/__init__.py'>"
} [DEBUG session:55]
183 add seed packages via FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/home/username/.local/share/virtualenv) [INFO session:59]
186 got embed update of distribution setuptools from /home/username/.local/share/virtualenv/wheel/3.9/embed/1/setuptools.json [DEBUG via_disk_folder:135]
186 got embed update of distribution pip from /home/username/.local/share/virtualenv/wheel/3.9/embed/1/pip.json [DEBUG via_disk_folder:135]
186 got embed update of distribution wheel from /home/username/.local/share/virtualenv/wheel/3.9/embed/1/wheel.json [DEBUG via_disk_folder:135]
189 got embed update of distribution setuptools from /home/username/.local/share/virtualenv/wheel/3.9/embed/1/setuptools.json [DEBUG via_disk_folder:135]
189 got embed update of distribution pip from /home/username/.local/share/virtualenv/wheel/3.9/embed/1/pip.json [DEBUG via_disk_folder:135]
189 using periodically updated wheel /home/username/.local/share/virtualenv/wheel/house/pip-21.2.4-py3-none-any.whl [DEBUG periodic_update:53]
189 got embed update of distribution wheel from /home/username/.local/share/virtualenv/wheel/3.9/embed/1/wheel.json [DEBUG via_disk_folder:135]
190 install setuptools from wheel /home/username/.pyenv/versions/pyb-3.9.7/lib/python3.9/site-packages/virtualenv/seed/wheels/embed/setuptools-57.4.0-py3-none-any.whl via CopyPipInstall [DEBUG via_app_data:49]
190 install pip from wheel /home/username/.local/share/virtualenv/wheel/house/pip-21.2.4-py3-none-any.whl via CopyPipInstall [DEBUG via_app_data:49]
190 install wheel from wheel /home/username/.pyenv/versions/pyb-3.9.7/lib/python3.9/site-packages/virtualenv/seed/wheels/embed/wheel-0.37.0-py2.py3-none-any.whl via CopyPipInstall [DEBUG via_app_data:49]
190 Attempting to acquire lock 139925603225552 on /home/username/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-57.4.0-py3-none-any.lock [DEBUG filelock:270]
190 Attempting to acquire lock 139925577568848 on /home/username/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/pip-21.2.4-py3-none-any.lock [DEBUG filelock:270]
191 Attempting to acquire lock 139925603224976 on /home/username/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/wheel-0.37.0-py2.py3-none-any.lock [DEBUG filelock:270]
191 Lock 139925603225552 acquired on /home/username/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-57.4.0-py3-none-any.lock [INFO filelock:274]
191 Lock 139925577568848 acquired on /home/username/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/pip-21.2.4-py3-none-any.lock [INFO filelock:274]
191 Lock 139925603224976 acquired on /home/username/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/wheel-0.37.0-py2.py3-none-any.lock [INFO filelock:274]
191 Attempting to release lock 139925577568848 on /home/username/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/pip-21.2.4-py3-none-any.lock [DEBUG filelock:315]
191 Lock 139925577568848 released on /home/username/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/pip-21.2.4-py3-none-any.lock [INFO filelock:318]
191 Attempting to release lock 139925603225552 on /home/username/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-57.4.0-py3-none-any.lock [DEBUG filelock:315]
191 Attempting to release lock 139925603224976 on /home/username/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/wheel-0.37.0-py2.py3-none-any.lock [DEBUG filelock:315]
191 Lock 139925603225552 released on /home/username/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-57.4.0-py3-none-any.lock [INFO filelock:318]
191 Lock 139925603224976 released on /home/username/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/wheel-0.37.0-py2.py3-none-any.lock [INFO filelock:318]
192 copy /home/username/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-57.4.0-py3-none-any/distutils-precedence.pth to /home/username/src/pybuilder/test-env/lib/python3.9/site-packages/distutils-precedence.pth [DEBUG _sync:52]
192 copy directory /home/username/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-57.4.0-py3-none-any/_distutils_hack to /home/username/src/pybuilder/test-env/lib/python3.9/site-packages/_distutils_hack [DEBUG _sync:52]
193 copy directory /home/username/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/wheel-0.37.0-py2.py3-none-any/wheel to /home/username/src/pybuilder/test-env/lib/python3.9/site-packages/wheel [DEBUG _sync:52]
196 copy directory /home/username/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-57.4.0-py3-none-any/pkg_resources to /home/username/src/pybuilder/test-env/lib/python3.9/site-packages/pkg_resources [DEBUG _sync:52]
197 copy directory /home/username/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/wheel-0.37.0-py2.py3-none-any/wheel-0.37.0.dist-info to /home/username/src/pybuilder/test-env/lib/python3.9/site-packages/wheel-0.37.0.dist-info [DEBUG _sync:52]
199 copy /home/username/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/wheel-0.37.0-py2.py3-none-any/wheel-0.37.0.virtualenv to /home/username/src/pybuilder/test-env/lib/python3.9/site-packages/wheel-0.37.0.virtualenv [DEBUG _sync:52]
201 generated console scripts wheel3 wheel3.9 wheel-3.9 wheel [DEBUG base:48]
207 copy directory /home/username/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-57.4.0-py3-none-any/setuptools to /home/username/src/pybuilder/test-env/lib/python3.9/site-packages/setuptools [DEBUG _sync:52]
218 copy directory /home/username/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/pip-21.2.4-py3-none-any/pip to /home/username/src/pybuilder/test-env/lib/python3.9/site-packages/pip [DEBUG _sync:52]
225 copy directory /home/username/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-57.4.0-py3-none-any/setuptools-57.4.0.dist-info to /home/username/src/pybuilder/test-env/lib/python3.9/site-packages/setuptools-57.4.0.dist-info [DEBUG _sync:52]
226 copy /home/username/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-57.4.0-py3-none-any/setuptools-57.4.0.virtualenv to /home/username/src/pybuilder/test-env/lib/python3.9/site-packages/setuptools-57.4.0.virtualenv [DEBUG _sync:52]
227 generated console scripts  [DEBUG base:48]
256 copy directory /home/username/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/pip-21.2.4-py3-none-any/pip-21.2.4.dist-info to /home/username/src/pybuilder/test-env/lib/python3.9/site-packages/pip-21.2.4.dist-info [DEBUG _sync:52]
257 copy /home/username/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/pip-21.2.4-py3-none-any/pip-21.2.4.virtualenv to /home/username/src/pybuilder/test-env/lib/python3.9/site-packages/pip-21.2.4.virtualenv [DEBUG _sync:52]
258 generated console scripts pip-3.9 pip pip3 pip3.9 [DEBUG base:48]
258 add activators for Bash, CShell, Fish, PowerShell, Python [INFO session:64]
259 write /home/username/src/pybuilder/test-env/pyvenv.cfg [DEBUG pyenv_cfg:34]
259     home = /home/username/.pyenv/versions/3.9.7 [DEBUG pyenv_cfg:38]
259     implementation = CPython [DEBUG pyenv_cfg:38]
259     version_info = 3.9.7.final.0 [DEBUG pyenv_cfg:38]
259     virtualenv = 20.7.2 [DEBUG pyenv_cfg:38]
259     include-system-site-packages = false [DEBUG pyenv_cfg:38]
259     base-prefix = /home/username/.pyenv/versions/3.9.7 [DEBUG pyenv_cfg:38]
259     base-exec-prefix = /home/username/.pyenv/versions/3.9.7 [DEBUG pyenv_cfg:38]
259     base-executable = /home/username/.pyenv/versions/3.9.7/bin/python3.9 [DEBUG pyenv_cfg:38]
259 created virtual environment CPython3.9.7.final.0-64 in 149ms
  creator CPython3Posix(dest=/home/username/src/pybuilder/test-env, clear=False, no_vcs_ignore=False, global=False)
  seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/home/username/.local/share/virtualenv)
    added seed packages: pip==21.2.4, setuptools==57.4.0, setuptools==58.0.4, wheel==0.37.0
  activators BashActivator,CShellActivator,FishActivator,PowerShellActivator,PythonActivator [WARNING __main__:19]

@gaborbernat
Copy link
Contributor

PR to fix it welcome. Otherwise be warned there's no one else picking this up and working on it 👍

@arcivanov
Copy link
Contributor Author

LOL I am looking at it. Is there a staffing shortage or just low priority?

@gaborbernat
Copy link
Contributor

This is an open source project, there's no staff. I'm the only maintainer, and I do that role mostly in my free time for free. As this feels like an edge that impacts few people it's very low on my priority list.

@arcivanov
Copy link
Contributor Author

Yes, I'm familiar with how OSS works 😄 , I just didn't realize a project under PyPA only had one maintainer. Thanks!

@gaborbernat
Copy link
Contributor

It's a complex project with lots of hard problems that don't get noticed until someone runs into them. We're always looking for new contributors (and eventually maintainer) if you have time to work on issues.

arcivanov added a commit to arcivanov/virtualenv that referenced this issue Sep 16, 2021
arcivanov added a commit to arcivanov/virtualenv that referenced this issue Sep 16, 2021
An existing dist-info may contain entrypoints that may interfere with
normal functioning of the redeployed seeded wheel if there is a version
mismatch

fixes pypa#2185
arcivanov added a commit to arcivanov/virtualenv that referenced this issue Sep 17, 2021
An existing dist-info may contain entrypoints that may interfere with
normal functioning of the redeployed seeded wheel if there is a version
mismatch

fixes pypa#2185
gaborbernat pushed a commit to arcivanov/virtualenv that referenced this issue Sep 24, 2021
An existing dist-info may contain entrypoints that may interfere with
normal functioning of the redeployed seeded wheel if there is a version
mismatch

fixes pypa#2185
gaborbernat added a commit that referenced this issue Sep 24, 2021
* During seeding remove dist-info for present versions of the wheels

An existing dist-info may contain entrypoints that may interfere with
normal functioning of the redeployed seeded wheel if there is a version
mismatch

fixes #2185

* Remove package directories from dist-info top_level packages
Remove other recorded files from RECORD
Remove dist-info itself

* Do not resolve paths prior to removal for symlink mode
In the test ensure the directories are compared as sets and not lists
Add setuptools downgrade to ensure proper cleanup of the existing version

* PR Feedback

Signed-off-by: Bernát Gábor <gaborjbernat@gmail.com>

Co-authored-by: Bernát Gábor <gaborjbernat@gmail.com>
@gaborbernat
Copy link
Contributor

bors bot added a commit to ChrisRBe/PP-P2P-Parser that referenced this issue Sep 24, 2021
390: build(deps): bump virtualenv from 20.8.0 to 20.8.1 r=ChrisRBe a=dependabot[bot]

Bumps [virtualenv](https://github.com/pypa/virtualenv) from 20.8.0 to 20.8.1.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/pypa/virtualenv/blob/main/docs/changelog.rst">virtualenv's changelog</a>.</em></p>
<blockquote>
<h2>v20.8.1 (2021-09-24)</h2>
<p>Bugfixes - 20.8.1</p>
<pre><code>- Fixed a bug where while creating a venv on top of an existing one, without cleaning, when seeded
  wheel version mismatch occurred, multiple ``.dist-info`` directories may be present, confounding entrypoint
  discovery - by :user:`arcivanov` (`[#2185](pypa/virtualenv#2185) &lt;https://github.com/pypa/virtualenv/issues/2185&gt;`_)
- Bump embed setuptools from ``58.0.4`` to ``58.1.0`` - by :user:`gaborbernat`. (`[#2195](pypa/virtualenv#2195) &lt;https://github.com/pypa/virtualenv/issues/2195&gt;`_)
<p>Misc - 20.8.1</p>
<pre><code>- `[#2189](pypa/virtualenv#2189) &amp;lt;https://github.com/pypa/virtualenv/issues/2189&amp;gt;`_
&lt;/code&gt;&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;/details&gt;
&lt;details&gt;
&lt;summary&gt;Commits&lt;/summary&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;pypa/virtualenv@433840821a5d2a2308eb84a53bac95efdfacbe7c&quot;&gt;&lt;code&gt;4338408&lt;/code&gt;&lt;/a&gt; release 20.8.1&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;pypa/virtualenv@e13ea2a7c65f233df0bc526ae073c01747258de8&quot;&gt;&lt;code&gt;e13ea2a&lt;/code&gt;&lt;/a&gt; During seeding properly uninstall present versions of the wheels (&lt;a href=&quot;https://github-redirect.dependabot.com/pypa/virtualenv/issues/2186&quot;&gt;#2186&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;pypa/virtualenv@3b9d95481a7bb8ce98bc3118416ba6cbbedf99b4&quot;&gt;&lt;code&gt;3b9d954&lt;/code&gt;&lt;/a&gt; Bump embed setuptools to 58.1.0 (&lt;a href=&quot;https://github-redirect.dependabot.com/pypa/virtualenv/issues/2195&quot;&gt;#2195&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;pypa/virtualenv@40d2f1833bab94fa2cad852c5b9e31d42c66d570&quot;&gt;&lt;code&gt;40d2f18&lt;/code&gt;&lt;/a&gt; Fail early instead of creating non-working env (&lt;a href=&quot;https://github-redirect.dependabot.com/pypa/virtualenv/issues/2189&quot;&gt;#2189&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;pypa/virtualenv@9e03c945fbf22cb1384d944f874180292c1018d4&quot;&gt;&lt;code&gt;9e03c94&lt;/code&gt;&lt;/a&gt; [pre-commit.ci] pre-commit autoupdate (&lt;a href=&quot;https://github-redirect.dependabot.com/pypa/virtualenv/issues/2192&quot;&gt;#2192&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;pypa/virtualenv@2151d385094c4f320cd2484eb9bcf3272cea2cc3&quot;&gt;&lt;code&gt;2151d38&lt;/code&gt;&lt;/a&gt; Improve prompt nushell (&lt;a href=&quot;https://github-redirect.dependabot.com/pypa/virtualenv/issues/2190&quot;&gt;#2190&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;pypa/virtualenv@d810ce1c0613d1b955576bca644335b7a00b5bc0&quot;&gt;&lt;code&gt;d810ce1&lt;/code&gt;&lt;/a&gt; Merge pull request &lt;a href=&quot;https://github-redirect.dependabot.com/pypa/virtualenv/issues/2184&quot;&gt;#2184&lt;/a&gt; from pypa/release-20.8.0&lt;/li&gt;
&lt;li&gt;See full diff in &lt;a href=&quot;pypa/virtualenv@20.8.0...20.8.1&quot;&gt;compare view&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/details&gt;

&lt;br /&gt;
</code></pre>


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=virtualenv&package-manager=pip&previous-version=20.8.0&new-version=20.8.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting ``@dependabot` rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- ``@dependabot` rebase` will rebase this PR
- ``@dependabot` recreate` will recreate this PR, overwriting any edits that have been made to it
- ``@dependabot` merge` will merge this PR after your CI passes on it
- ``@dependabot` squash and merge` will squash and merge this PR after your CI passes on it
- ``@dependabot` cancel merge` will cancel a previously requested merge and block automerging
- ``@dependabot` reopen` will reopen this PR if it is closed
- ``@dependabot` close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- ``@dependabot` ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- ``@dependabot` ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- ``@dependabot` ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)


</details>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
mergify bot pushed a commit to andrewbolster/bolster that referenced this issue Sep 30, 2021
Bumps [virtualenv](https://github.com/pypa/virtualenv) from 20.7.2 to 20.8.1.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/pypa/virtualenv/blob/main/docs/changelog.rst">virtualenv's changelog</a>.</em></p>
<blockquote>
<h2>v20.8.1 (2021-09-24)</h2>
<p>Bugfixes - 20.8.1</p>
<pre><code>- Fixed a bug where while creating a venv on top of an existing one, without cleaning, when seeded
  wheel version mismatch occurred, multiple ``.dist-info`` directories may be present, confounding entrypoint
  discovery - by :user:`arcivanov` (`[#2185](pypa/virtualenv#2185) &lt;https://github.com/pypa/virtualenv/issues/2185&gt;`_)
- Bump embed setuptools from ``58.0.4`` to ``58.1.0`` - by :user:`gaborbernat`. (`[#2195](pypa/virtualenv#2195) &lt;https://github.com/pypa/virtualenv/issues/2195&gt;`_)
<p>Misc - 20.8.1</p>
<pre><code>- `[#2189](pypa/virtualenv#2189) &amp;lt;https://github.com/pypa/virtualenv/issues/2189&amp;gt;`_


v20.8.0 (2021-09-16)
--------------------

* upgrade embedded setuptools to ``58.0.4`` from ``57.4.0`` and pip to ``21.2.4`` from ``21.2.3``
* Add nushell activation script
&lt;/code&gt;&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;/details&gt;
&lt;details&gt;
&lt;summary&gt;Commits&lt;/summary&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;pypa/virtualenv@433840821a5d2a2308eb84a53bac95efdfacbe7c&quot;&gt;&lt;code&gt;4338408&lt;/code&gt;&lt;/a&gt; release 20.8.1&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;pypa/virtualenv@e13ea2a7c65f233df0bc526ae073c01747258de8&quot;&gt;&lt;code&gt;e13ea2a&lt;/code&gt;&lt;/a&gt; During seeding properly uninstall present versions of the wheels (&lt;a href=&quot;https://github-redirect.dependabot.com/pypa/virtualenv/issues/2186&quot;&gt;#2186&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;pypa/virtualenv@3b9d95481a7bb8ce98bc3118416ba6cbbedf99b4&quot;&gt;&lt;code&gt;3b9d954&lt;/code&gt;&lt;/a&gt; Bump embed setuptools to 58.1.0 (&lt;a href=&quot;https://github-redirect.dependabot.com/pypa/virtualenv/issues/2195&quot;&gt;#2195&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;pypa/virtualenv@40d2f1833bab94fa2cad852c5b9e31d42c66d570&quot;&gt;&lt;code&gt;40d2f18&lt;/code&gt;&lt;/a&gt; Fail early instead of creating non-working env (&lt;a href=&quot;https://github-redirect.dependabot.com/pypa/virtualenv/issues/2189&quot;&gt;#2189&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;pypa/virtualenv@9e03c945fbf22cb1384d944f874180292c1018d4&quot;&gt;&lt;code&gt;9e03c94&lt;/code&gt;&lt;/a&gt; [pre-commit.ci] pre-commit autoupdate (&lt;a href=&quot;https://github-redirect.dependabot.com/pypa/virtualenv/issues/2192&quot;&gt;#2192&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;pypa/virtualenv@2151d385094c4f320cd2484eb9bcf3272cea2cc3&quot;&gt;&lt;code&gt;2151d38&lt;/code&gt;&lt;/a&gt; Improve prompt nushell (&lt;a href=&quot;https://github-redirect.dependabot.com/pypa/virtualenv/issues/2190&quot;&gt;#2190&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;pypa/virtualenv@d810ce1c0613d1b955576bca644335b7a00b5bc0&quot;&gt;&lt;code&gt;d810ce1&lt;/code&gt;&lt;/a&gt; Merge pull request &lt;a href=&quot;https://github-redirect.dependabot.com/pypa/virtualenv/issues/2184&quot;&gt;#2184&lt;/a&gt; from pypa/release-20.8.0&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;pypa/virtualenv@c54c7efe172adb206c75cc1499cf8625b19064e8&quot;&gt;&lt;code&gt;c54c7ef&lt;/code&gt;&lt;/a&gt; release 20.8.0&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;pypa/virtualenv@e0410cafc8feedf72562174dee983fc709a5a36e&quot;&gt;&lt;code&gt;e0410ca&lt;/code&gt;&lt;/a&gt; Nushell activation scripts (&lt;a href=&quot;https://github-redirect.dependabot.com/pypa/virtualenv/issues/2170&quot;&gt;#2170&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;pypa/virtualenv@1cc503bfadc2c0e8c3ecac6c0a3f430ee601d9a0&quot;&gt;&lt;code&gt;1cc503b&lt;/code&gt;&lt;/a&gt; Bump pip and setuptools (&lt;a href=&quot;https://github-redirect.dependabot.com/pypa/virtualenv/issues/2183&quot;&gt;#2183&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Additional commits viewable in &lt;a href=&quot;pypa/virtualenv@20.7.2...20.8.1&quot;&gt;compare view&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/details&gt;

&lt;br /&gt;
</code></pre>


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=virtualenv&package-manager=pip&previous-version=20.7.2&new-version=20.8.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)


</details>
qujingpengf added a commit to qujingpengf/ChrisRBe that referenced this issue Jan 22, 2022
390: build(deps): bump virtualenv from 20.8.0 to 20.8.1 r=ChrisRBe a=dependabot[bot]

Bumps [virtualenv](https://github.com/pypa/virtualenv) from 20.8.0 to 20.8.1.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/pypa/virtualenv/blob/main/docs/changelog.rst">virtualenv's changelog</a>.</em></p>
<blockquote>
<h2>v20.8.1 (2021-09-24)</h2>
<p>Bugfixes - 20.8.1</p>
<pre><code>- Fixed a bug where while creating a venv on top of an existing one, without cleaning, when seeded
  wheel version mismatch occurred, multiple ``.dist-info`` directories may be present, confounding entrypoint
  discovery - by :user:`arcivanov` (`[#2185](pypa/virtualenv#2185) &lt;https://github.com/pypa/virtualenv/issues/2185&gt;`_)
- Bump embed setuptools from ``58.0.4`` to ``58.1.0`` - by :user:`gaborbernat`. (`[#2195](pypa/virtualenv#2195) &lt;https://github.com/pypa/virtualenv/issues/2195&gt;`_)
<p>Misc - 20.8.1</p>
<pre><code>- `[#2189](pypa/virtualenv#2189) &amp;lt;https://github.com/pypa/virtualenv/issues/2189&amp;gt;`_
&lt;/code&gt;&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;/details&gt;
&lt;details&gt;
&lt;summary&gt;Commits&lt;/summary&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;pypa/virtualenv@433840821a5d2a2308eb84a53bac95efdfacbe7c&quot;&gt;&lt;code&gt;4338408&lt;/code&gt;&lt;/a&gt; release 20.8.1&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;pypa/virtualenv@e13ea2a7c65f233df0bc526ae073c01747258de8&quot;&gt;&lt;code&gt;e13ea2a&lt;/code&gt;&lt;/a&gt; During seeding properly uninstall present versions of the wheels (&lt;a href=&quot;https://github-redirect.dependabot.com/pypa/virtualenv/issues/2186&quot;&gt;#2186&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;pypa/virtualenv@3b9d95481a7bb8ce98bc3118416ba6cbbedf99b4&quot;&gt;&lt;code&gt;3b9d954&lt;/code&gt;&lt;/a&gt; Bump embed setuptools to 58.1.0 (&lt;a href=&quot;https://github-redirect.dependabot.com/pypa/virtualenv/issues/2195&quot;&gt;#2195&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;pypa/virtualenv@40d2f1833bab94fa2cad852c5b9e31d42c66d570&quot;&gt;&lt;code&gt;40d2f18&lt;/code&gt;&lt;/a&gt; Fail early instead of creating non-working env (&lt;a href=&quot;https://github-redirect.dependabot.com/pypa/virtualenv/issues/2189&quot;&gt;#2189&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;pypa/virtualenv@9e03c945fbf22cb1384d944f874180292c1018d4&quot;&gt;&lt;code&gt;9e03c94&lt;/code&gt;&lt;/a&gt; [pre-commit.ci] pre-commit autoupdate (&lt;a href=&quot;https://github-redirect.dependabot.com/pypa/virtualenv/issues/2192&quot;&gt;#2192&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;pypa/virtualenv@2151d385094c4f320cd2484eb9bcf3272cea2cc3&quot;&gt;&lt;code&gt;2151d38&lt;/code&gt;&lt;/a&gt; Improve prompt nushell (&lt;a href=&quot;https://github-redirect.dependabot.com/pypa/virtualenv/issues/2190&quot;&gt;#2190&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;pypa/virtualenv@d810ce1c0613d1b955576bca644335b7a00b5bc0&quot;&gt;&lt;code&gt;d810ce1&lt;/code&gt;&lt;/a&gt; Merge pull request &lt;a href=&quot;https://github-redirect.dependabot.com/pypa/virtualenv/issues/2184&quot;&gt;#2184&lt;/a&gt; from pypa/release-20.8.0&lt;/li&gt;
&lt;li&gt;See full diff in &lt;a href=&quot;pypa/virtualenv@20.8.0...20.8.1&quot;&gt;compare view&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/details&gt;

&lt;br /&gt;
</code></pre>


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=virtualenv&package-manager=pip&previous-version=20.8.0&new-version=20.8.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting ``@dependabot` rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- ``@dependabot` rebase` will rebase this PR
- ``@dependabot` recreate` will recreate this PR, overwriting any edits that have been made to it
- ``@dependabot` merge` will merge this PR after your CI passes on it
- ``@dependabot` squash and merge` will squash and merge this PR after your CI passes on it
- ``@dependabot` cancel merge` will cancel a previously requested merge and block automerging
- ``@dependabot` reopen` will reopen this PR if it is closed
- ``@dependabot` close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- ``@dependabot` ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- ``@dependabot` ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- ``@dependabot` ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)


</details>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
BenMMcLean pushed a commit to TechlauncherFireApp/backend that referenced this issue Sep 12, 2023
Bumps [virtualenv](https://github.com/pypa/virtualenv) from 20.4.4 to
20.8.1.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/pypa/virtualenv/blob/main/docs/changelog.rst">virtualenv's
changelog</a>.</em></p>
<blockquote>
<h2>v20.8.1 (2021-09-24)</h2>
<p>Bugfixes - 20.8.1</p>
<pre><code>- Fixed a bug where while creating a venv on top of an
existing one, without cleaning, when seeded
wheel version mismatch occurred, multiple ``.dist-info`` directories may
be present, confounding entrypoint
discovery - by :user:`arcivanov`
(`[#2185](pypa/virtualenv#2185)
&lt;https://github.com/pypa/virtualenv/issues/2185&gt;`_)
- Bump embed setuptools from ``58.0.4`` to ``58.1.0`` - by
:user:`gaborbernat`.
(`[#2195](pypa/virtualenv#2195)
&lt;https://github.com/pypa/virtualenv/issues/2195&gt;`_)
<p>Misc - 20.8.1</p>
<pre><code>- `[#2189](pypa/virtualenv#2189)
&amp;lt;https://github.com/pypa/virtualenv/issues/2189&amp;gt;`_


v20.8.0 (2021-09-16)
--------------------

* upgrade embedded setuptools to ``58.0.4`` from ``57.4.0`` and pip to
``21.2.4`` from ``21.2.3``
* Add nushell activation script

v20.7.2 (2021-08-10)
--------------------

Bugfixes - 20.7.2
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;Upgrade embedded pip to &lt;code&gt;21.2.3&lt;/code&gt; from
&lt;code&gt;21.2.2&lt;/code&gt; and wheel to
&lt;code&gt;0.37.0&lt;/code&gt; from &lt;code&gt;0.36.2&lt;/code&gt; -
by :user:&lt;code&gt;gaborbernat&lt;/code&gt;.
(&lt;code&gt;[#2168](pypa/virtualenv#2168)
&amp;lt;pypa/virtualenv#2168;
&lt;/ul&gt;
&lt;h2&gt;v20.7.1 (2021-08-09)&lt;/h2&gt;
&lt;p&gt;Bugfixes - 20.7.1&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;- Fix unpacking dictionary items in
PythonInfo.install_path
(`[#2165](pypa/virtualenv#2165)
&amp;lt;https://github.com/pypa/virtualenv/issues/2165&amp;gt;`_)


v20.7.0 (2021-07-31)
--------------------

Bugfixes - 20.7.0
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;upgrade embedded pip to &lt;code&gt;21.2.2&lt;/code&gt; from
&lt;code&gt;21.1.3&lt;/code&gt; and setuptools to
&lt;code&gt;57.4.0&lt;/code&gt; from &lt;code&gt;57.1.0&lt;/code&gt; -
by :user:&lt;code&gt;gaborbernat&lt;/code&gt;
(&lt;code&gt;[#2159](pypa/virtualenv#2159)
&amp;lt;pypa/virtualenv#2159;
&lt;/ul&gt;
&lt;p&gt;Deprecations and Removals - 20.7.0&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;- Removed ``xonsh`` activator due to this
breaking fairly often the CI and lack of support from those packages
maintainers, upstream is encouraged to continue supporting the project
as a
`plugin &amp;lt;https://github.com/xonsh/xonsh/issues/3689&amp;gt;`_ -
by :user:`gaborbernat`.
(`[#2160](pypa/virtualenv#2160)
&amp;lt;https://github.com/pypa/virtualenv/issues/2160&amp;gt;`_)

&amp;lt;/tr&amp;gt;&amp;lt;/table&amp;gt; 
&lt;/code&gt;&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;... (truncated)&lt;/p&gt;
&lt;/details&gt;
&lt;details&gt;
&lt;summary&gt;Commits&lt;/summary&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a
href=&quot;pypa/virtualenv@433840821a5d2a2308eb84a53bac95efdfacbe7c&quot;&gt;&lt;code&gt;4338408&lt;/code&gt;&lt;/a&gt;
release 20.8.1&lt;/li&gt;
&lt;li&gt;&lt;a
href=&quot;pypa/virtualenv@e13ea2a7c65f233df0bc526ae073c01747258de8&quot;&gt;&lt;code&gt;e13ea2a&lt;/code&gt;&lt;/a&gt;
During seeding properly uninstall present versions of the wheels (&lt;a
href=&quot;https://redirect.github.com/pypa/virtualenv/issues/2186&quot;&gt;#2186&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a
href=&quot;pypa/virtualenv@3b9d95481a7bb8ce98bc3118416ba6cbbedf99b4&quot;&gt;&lt;code&gt;3b9d954&lt;/code&gt;&lt;/a&gt;
Bump embed setuptools to 58.1.0 (&lt;a
href=&quot;https://redirect.github.com/pypa/virtualenv/issues/2195&quot;&gt;#2195&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a
href=&quot;pypa/virtualenv@40d2f1833bab94fa2cad852c5b9e31d42c66d570&quot;&gt;&lt;code&gt;40d2f18&lt;/code&gt;&lt;/a&gt;
Fail early instead of creating non-working env (&lt;a
href=&quot;https://redirect.github.com/pypa/virtualenv/issues/2189&quot;&gt;#2189&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a
href=&quot;pypa/virtualenv@9e03c945fbf22cb1384d944f874180292c1018d4&quot;&gt;&lt;code&gt;9e03c94&lt;/code&gt;&lt;/a&gt;
[pre-commit.ci] pre-commit autoupdate (&lt;a
href=&quot;https://redirect.github.com/pypa/virtualenv/issues/2192&quot;&gt;#2192&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a
href=&quot;pypa/virtualenv@2151d385094c4f320cd2484eb9bcf3272cea2cc3&quot;&gt;&lt;code&gt;2151d38&lt;/code&gt;&lt;/a&gt;
Improve prompt nushell (&lt;a
href=&quot;https://redirect.github.com/pypa/virtualenv/issues/2190&quot;&gt;#2190&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a
href=&quot;pypa/virtualenv@d810ce1c0613d1b955576bca644335b7a00b5bc0&quot;&gt;&lt;code&gt;d810ce1&lt;/code&gt;&lt;/a&gt;
Merge pull request &lt;a
href=&quot;https://redirect.github.com/pypa/virtualenv/issues/2184&quot;&gt;#2184&lt;/a&gt;
from pypa/release-20.8.0&lt;/li&gt;
&lt;li&gt;&lt;a
href=&quot;pypa/virtualenv@c54c7efe172adb206c75cc1499cf8625b19064e8&quot;&gt;&lt;code&gt;c54c7ef&lt;/code&gt;&lt;/a&gt;
release 20.8.0&lt;/li&gt;
&lt;li&gt;&lt;a
href=&quot;pypa/virtualenv@e0410cafc8feedf72562174dee983fc709a5a36e&quot;&gt;&lt;code&gt;e0410ca&lt;/code&gt;&lt;/a&gt;
Nushell activation scripts (&lt;a
href=&quot;https://redirect.github.com/pypa/virtualenv/issues/2170&quot;&gt;#2170&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a
href=&quot;pypa/virtualenv@1cc503bfadc2c0e8c3ecac6c0a3f430ee601d9a0&quot;&gt;&lt;code&gt;1cc503b&lt;/code&gt;&lt;/a&gt;
Bump pip and setuptools (&lt;a
href=&quot;https://redirect.github.com/pypa/virtualenv/issues/2183&quot;&gt;#2183&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Additional commits viewable in &lt;a
href=&quot;pypa/virtualenv@20.4.4...20.8.1&quot;&gt;compare
view&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/details&gt;

&lt;br /&gt;
</code></pre>


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=virtualenv&package-manager=pip&previous-version=20.4.4&new-version=20.8.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants