virtualenv 21.4.2__tar.gz → 21.4.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.
- {virtualenv-21.4.2 → virtualenv-21.4.3}/PKG-INFO +2 -2
- {virtualenv-21.4.2 → virtualenv-21.4.3}/pyproject.toml +8 -8
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/activation/bash/activate.sh +0 -2
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/activation/fish/activate.fish +3 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/app_data/via_disk_folder.py +1 -1
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/seed/wheels/embed/__init__.py +9 -8
- virtualenv-21.4.2/src/virtualenv/seed/wheels/embed/pip-26.1.1-py3-none-any.whl → virtualenv-21.4.3/src/virtualenv/seed/wheels/embed/pip-26.1.2-py3-none-any.whl +0 -0
- virtualenv-21.4.3/src/virtualenv/seed/wheels/embed/wheel-0.47.0-py3-none-any.whl +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/version.py +2 -2
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/activation/test_bash.py +31 -1
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/test_creator.py +22 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/.gitignore +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/LICENSE +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/README.md +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/__main__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/activation/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/activation/activator.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/activation/bash/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/activation/batch/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/activation/batch/activate.bat +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/activation/batch/deactivate.bat +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/activation/batch/pydoc.bat +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/activation/cshell/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/activation/cshell/activate.csh +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/activation/fish/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/activation/nushell/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/activation/nushell/activate.nu +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/activation/powershell/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/activation/powershell/activate.ps1 +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/activation/python/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/activation/python/activate_this.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/activation/via_template.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/activation/xonsh/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/activation/xonsh/activate.xsh +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/app_data/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/app_data/base.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/app_data/na.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/app_data/read_only.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/app_data/via_tempdir.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/config/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/config/cli/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/config/cli/parser.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/config/convert.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/config/env_var.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/config/ini.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/create/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/create/creator.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/create/debug.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/create/describe.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/create/pyenv_cfg.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/create/via_global_ref/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/create/via_global_ref/_virtualenv.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/create/via_global_ref/api.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/create/via_global_ref/builtin/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/create/via_global_ref/builtin/builtin_way.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/create/via_global_ref/builtin/cpython/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/create/via_global_ref/builtin/cpython/common.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/create/via_global_ref/builtin/cpython/cpython3.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/create/via_global_ref/builtin/cpython/mac_os.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/create/via_global_ref/builtin/graalpy/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/create/via_global_ref/builtin/pypy/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/create/via_global_ref/builtin/pypy/common.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/create/via_global_ref/builtin/pypy/pypy3.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/create/via_global_ref/builtin/ref.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/create/via_global_ref/builtin/rustpython/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/create/via_global_ref/builtin/via_global_self_do.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/create/via_global_ref/store.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/create/via_global_ref/venv.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/discovery/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/discovery/builtin.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/discovery/cached_py_info.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/discovery/discover.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/discovery/py_info.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/discovery/py_spec.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/info.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/py.typed +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/report.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/run/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/run/plugin/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/run/plugin/activators.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/run/plugin/base.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/run/plugin/creators.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/run/plugin/discovery.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/run/plugin/seeders.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/run/session.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/seed/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/seed/embed/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/seed/embed/base_embed.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/seed/embed/pip_invoke.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/seed/embed/via_app_data/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/seed/embed/via_app_data/pip_install/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/seed/embed/via_app_data/pip_install/base.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/seed/embed/via_app_data/pip_install/copy.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/seed/embed/via_app_data/pip_install/symlink.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/seed/embed/via_app_data/via_app_data.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/seed/seeder.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/seed/wheels/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/seed/wheels/acquire.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/seed/wheels/bundle.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/seed/wheels/embed/pip-25.0.1-py3-none-any.whl +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/seed/wheels/embed/pip-26.0.1-py3-none-any.whl +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/seed/wheels/embed/setuptools-75.3.4-py3-none-any.whl +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/seed/wheels/embed/setuptools-82.0.1-py3-none-any.whl +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/seed/wheels/embed/wheel-0.45.1-py3-none-any.whl +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/seed/wheels/periodic_update.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/seed/wheels/util.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/util/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/util/error.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/util/lock.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/util/path/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/util/path/_permission.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/util/path/_sync.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/util/path/_win.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/util/subprocess/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/util/zipapp.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tasks/__main__zipapp.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tasks/make_zipapp.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tasks/release.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tasks/update_embedded.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tasks/upgrade_wheels.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/conftest.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/integration/test_cachedir_tag.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/integration/test_race_condition_simulation.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/integration/test_run_int.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/integration/test_zipapp.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/types.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/activation/conftest.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/activation/test_activation_support.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/activation/test_activator.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/activation/test_batch.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/activation/test_csh.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/activation/test_fish.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/activation/test_nushell.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/activation/test_powershell.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/activation/test_python_activator.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/activation/test_xonsh.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/config/cli/test_help_formatter.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/config/cli/test_parser.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/config/test___main__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/config/test_env_var.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/config/test_ini.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/conftest.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/console_app/demo/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/console_app/demo/__main__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/console_app/setup.cfg +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/console_app/setup.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/test_interpreters.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/_test_race_condition_helper.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/builtin/conftest.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/builtin/cpython/conftest.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/builtin/cpython/cpython3_win_debug.json +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/builtin/cpython/cpython3_win_embed.json +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/builtin/cpython/cpython3_win_free_threaded.json +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/builtin/cpython/test_cpython3_posix.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/builtin/cpython/test_cpython3_win.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/builtin/pypy/deb_pypy37.json +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/builtin/pypy/deb_pypy38.json +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/builtin/pypy/portable_pypy38.json +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/builtin/pypy/test_pypy3.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/builtin/rustpython/rustpython_posix.json +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/builtin/rustpython/rustpython_windows.json +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/builtin/rustpython/test_rustpython.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/builtin/testing/__init__.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/builtin/testing/helpers.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/builtin/testing/path.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/builtin/testing/py_info.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/greet/greet2.c +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/greet/greet3.c +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/greet/setup.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/test_api.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/test_build_c_ext.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/test_race_condition.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/discovery/test_discovery.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/seed/embed/test_base_embed.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/seed/embed/test_bootstrap_link_via_app_data.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/seed/embed/test_pip_invoke.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/seed/wheels/test_acquire.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/seed/wheels/test_acquire_find_wheel.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/seed/wheels/test_bundle.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/seed/wheels/test_periodic_update.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/seed/wheels/test_wheels_util.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/test_file_limit.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/test_run.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/test_util.py +0 -0
- {virtualenv-21.4.2 → virtualenv-21.4.3}/tox.toml +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: virtualenv
|
|
3
|
-
Version: 21.4.
|
|
3
|
+
Version: 21.4.3
|
|
4
4
|
Summary: Virtual Python Environment builder
|
|
5
5
|
Project-URL: Documentation, https://virtualenv.pypa.io
|
|
6
6
|
Project-URL: Homepage, https://github.com/pypa/virtualenv
|
|
@@ -35,7 +35,7 @@ Requires-Dist: filelock<4,>=3.24.2; python_version >= '3.10'
|
|
|
35
35
|
Requires-Dist: filelock<=3.19.1,>=3.16.1; python_version < '3.10'
|
|
36
36
|
Requires-Dist: importlib-metadata>=6.6; python_version < '3.8'
|
|
37
37
|
Requires-Dist: platformdirs<5,>=3.9.1
|
|
38
|
-
Requires-Dist: python-discovery>=1.4
|
|
38
|
+
Requires-Dist: python-discovery>=1.4.2
|
|
39
39
|
Requires-Dist: typing-extensions>=4.13.2; python_version < '3.11'
|
|
40
40
|
Description-Content-Type: text/markdown
|
|
41
41
|
|
|
@@ -50,7 +50,7 @@ dependencies = [
|
|
|
50
50
|
"filelock>=3.24.2,<4; python_version>='3.10'",
|
|
51
51
|
"importlib-metadata>=6.6; python_version<'3.8'",
|
|
52
52
|
"platformdirs>=3.9.1,<5",
|
|
53
|
-
"python-discovery>=1.4",
|
|
53
|
+
"python-discovery>=1.4.2",
|
|
54
54
|
"typing-extensions>=4.13.2; python_version<'3.11'",
|
|
55
55
|
]
|
|
56
56
|
urls.Documentation = "https://virtualenv.pypa.io"
|
|
@@ -136,14 +136,14 @@ pkg-meta = [
|
|
|
136
136
|
]
|
|
137
137
|
|
|
138
138
|
[tool.hatch]
|
|
139
|
+
version.source = "vcs"
|
|
139
140
|
build.hooks.vcs.version-file = "src/virtualenv/version.py"
|
|
140
141
|
build.targets.sdist.include = [
|
|
141
142
|
"/src",
|
|
142
|
-
"/tests",
|
|
143
143
|
"/tasks",
|
|
144
|
+
"/tests",
|
|
144
145
|
"/tox.toml",
|
|
145
146
|
]
|
|
146
|
-
version.source = "vcs"
|
|
147
147
|
|
|
148
148
|
[tool.ruff]
|
|
149
149
|
line-length = 120
|
|
@@ -215,15 +215,15 @@ max_supported_python = "3.14"
|
|
|
215
215
|
rules.unused-ignore-comment = "ignore" # some ignores are platform/version-specific (e.g., ctypes.windll on Linux)
|
|
216
216
|
|
|
217
217
|
[tool.pytest]
|
|
218
|
+
ini_options.addopts = "--showlocals --no-success-flaky-report"
|
|
218
219
|
ini_options.markers = [
|
|
219
|
-
"slow",
|
|
220
220
|
"graalpy: minimal test suite for GraalPy validation",
|
|
221
|
+
"slow",
|
|
221
222
|
]
|
|
222
|
-
ini_options.timeout = 120
|
|
223
|
-
ini_options.addopts = "--showlocals --no-success-flaky-report"
|
|
224
223
|
ini_options.env = [
|
|
225
224
|
"PYTHONIOENCODING=utf-8",
|
|
226
225
|
]
|
|
226
|
+
ini_options.timeout = 120
|
|
227
227
|
|
|
228
228
|
[tool.coverage]
|
|
229
229
|
run.dynamic_context = "test_function"
|
|
@@ -253,9 +253,9 @@ html.skip_covered = false
|
|
|
253
253
|
|
|
254
254
|
[tool.towncrier]
|
|
255
255
|
name = "virtualenv"
|
|
256
|
-
filename = "docs/changelog.rst"
|
|
257
256
|
directory = "docs/changelog"
|
|
257
|
+
filename = "docs/changelog.rst"
|
|
258
|
+
template = "docs/changelog/template.jinja2"
|
|
258
259
|
title_format = false
|
|
259
260
|
issue_format = ":issue:`{issue}`"
|
|
260
|
-
template = "docs/changelog/template.jinja2"
|
|
261
261
|
underlines = [ "*", "=", "-" ]
|
|
@@ -45,7 +45,6 @@ deactivate () {
|
|
|
45
45
|
|
|
46
46
|
if [ -n "${_OLD_VIRTUAL_PS1:-}" ] ; then
|
|
47
47
|
PS1="$_OLD_VIRTUAL_PS1"
|
|
48
|
-
export PS1
|
|
49
48
|
unset _OLD_VIRTUAL_PS1
|
|
50
49
|
fi
|
|
51
50
|
|
|
@@ -116,7 +115,6 @@ fi
|
|
|
116
115
|
if [ -z "${VIRTUAL_ENV_DISABLE_PROMPT-}" ] ; then
|
|
117
116
|
_OLD_VIRTUAL_PS1="${PS1-}"
|
|
118
117
|
PS1="(${VIRTUAL_ENV_PROMPT}) ${PS1-}"
|
|
119
|
-
export PS1
|
|
120
118
|
fi
|
|
121
119
|
|
|
122
120
|
# Make sure to unalias pydoc if it's already there
|
|
@@ -61,6 +61,9 @@ end
|
|
|
61
61
|
deactivate nondestructive
|
|
62
62
|
|
|
63
63
|
set -gx VIRTUAL_ENV __VIRTUAL_ENV__
|
|
64
|
+
if string match -qr 'CYGWIN|MSYS|MINGW' (uname)
|
|
65
|
+
set -gx VIRTUAL_ENV (cygpath -u $VIRTUAL_ENV)
|
|
66
|
+
end
|
|
64
67
|
|
|
65
68
|
set -gx _OLD_PKG_CONFIG_PATH "$PKG_CONFIG_PATH"
|
|
66
69
|
set -gx PKG_CONFIG_PATH "$VIRTUAL_ENV/lib/pkgconfig:$PKG_CONFIG_PATH"
|
|
@@ -86,7 +86,7 @@ class AppDataDiskFolder(AppData):
|
|
|
86
86
|
|
|
87
87
|
@property
|
|
88
88
|
def py_info_at(self) -> ReentrantFileLock:
|
|
89
|
-
return self.lock / "py_info" / "
|
|
89
|
+
return self.lock / "py_info" / "5" # ty: ignore[invalid-return-type]
|
|
90
90
|
|
|
91
91
|
def py_info(self, path: Path) -> PyInfoStoreDisk:
|
|
92
92
|
return PyInfoStoreDisk(self.py_info_at, path)
|
|
@@ -19,31 +19,31 @@ BUNDLE_SUPPORT = {
|
|
|
19
19
|
"setuptools": "setuptools-82.0.1-py3-none-any.whl",
|
|
20
20
|
},
|
|
21
21
|
"3.10": {
|
|
22
|
-
"pip": "pip-26.1.
|
|
22
|
+
"pip": "pip-26.1.2-py3-none-any.whl",
|
|
23
23
|
"setuptools": "setuptools-82.0.1-py3-none-any.whl",
|
|
24
24
|
},
|
|
25
25
|
"3.11": {
|
|
26
|
-
"pip": "pip-26.1.
|
|
26
|
+
"pip": "pip-26.1.2-py3-none-any.whl",
|
|
27
27
|
"setuptools": "setuptools-82.0.1-py3-none-any.whl",
|
|
28
28
|
},
|
|
29
29
|
"3.12": {
|
|
30
|
-
"pip": "pip-26.1.
|
|
30
|
+
"pip": "pip-26.1.2-py3-none-any.whl",
|
|
31
31
|
"setuptools": "setuptools-82.0.1-py3-none-any.whl",
|
|
32
32
|
},
|
|
33
33
|
"3.13": {
|
|
34
|
-
"pip": "pip-26.1.
|
|
34
|
+
"pip": "pip-26.1.2-py3-none-any.whl",
|
|
35
35
|
"setuptools": "setuptools-82.0.1-py3-none-any.whl",
|
|
36
36
|
},
|
|
37
37
|
"3.14": {
|
|
38
|
-
"pip": "pip-26.1.
|
|
38
|
+
"pip": "pip-26.1.2-py3-none-any.whl",
|
|
39
39
|
"setuptools": "setuptools-82.0.1-py3-none-any.whl",
|
|
40
40
|
},
|
|
41
41
|
"3.15": {
|
|
42
|
-
"pip": "pip-26.1.
|
|
42
|
+
"pip": "pip-26.1.2-py3-none-any.whl",
|
|
43
43
|
"setuptools": "setuptools-82.0.1-py3-none-any.whl",
|
|
44
44
|
},
|
|
45
45
|
"3.16": {
|
|
46
|
-
"pip": "pip-26.1.
|
|
46
|
+
"pip": "pip-26.1.2-py3-none-any.whl",
|
|
47
47
|
"setuptools": "setuptools-82.0.1-py3-none-any.whl",
|
|
48
48
|
},
|
|
49
49
|
}
|
|
@@ -54,10 +54,11 @@ MAX = next(reversed(BUNDLE_SUPPORT))
|
|
|
54
54
|
BUNDLE_SHA256 = {
|
|
55
55
|
"pip-25.0.1-py3-none-any.whl": "c46efd13b6aa8279f33f2864459c8ce587ea6a1a59ee20de055868d8f7688f7f",
|
|
56
56
|
"pip-26.0.1-py3-none-any.whl": "bdb1b08f4274833d62c1aa29e20907365a2ceb950410df15fc9521bad440122b",
|
|
57
|
-
"pip-26.1.
|
|
57
|
+
"pip-26.1.2-py3-none-any.whl": "382ff9f685ee3bc25864f820aa50505825f10f5458ffff07e30a6d96e5715cab",
|
|
58
58
|
"setuptools-75.3.4-py3-none-any.whl": "2dd50a7f42dddfa1d02a36f275dbe716f38ed250224f609d35fb60a09593d93e",
|
|
59
59
|
"setuptools-82.0.1-py3-none-any.whl": "a59e362652f08dcd477c78bb6e7bd9d80a7995bc73ce773050228a348ce2e5bb",
|
|
60
60
|
"wheel-0.45.1-py3-none-any.whl": "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248",
|
|
61
|
+
"wheel-0.47.0-py3-none-any.whl": "212281cab4dff978f6cedd499cd893e1f620791ca6ff7107cf270781e587eced",
|
|
61
62
|
}
|
|
62
63
|
|
|
63
64
|
_VERIFIED_WHEELS: set[str] = set()
|
|
Binary file
|
|
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
|
|
|
18
18
|
commit_id: str | None
|
|
19
19
|
__commit_id__: str | None
|
|
20
20
|
|
|
21
|
-
__version__ = version = '21.4.
|
|
22
|
-
__version_tuple__ = version_tuple = (21, 4,
|
|
21
|
+
__version__ = version = '21.4.3'
|
|
22
|
+
__version_tuple__ = version_tuple = (21, 4, 3)
|
|
23
23
|
|
|
24
24
|
__commit_id__ = commit_id = None
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
from __future__ import annotations
|
|
2
2
|
|
|
3
|
+
import shlex
|
|
3
4
|
import shutil
|
|
4
5
|
import subprocess
|
|
6
|
+
import sys
|
|
5
7
|
from argparse import Namespace
|
|
6
8
|
|
|
7
9
|
import pytest
|
|
@@ -101,6 +103,34 @@ def test_bash_activate_relocation_resolves_virtual_env(tmp_path, current_fastest
|
|
|
101
103
|
assert result.stdout.strip() == str(relocated)
|
|
102
104
|
|
|
103
105
|
|
|
106
|
+
@pytest.mark.skipif(IS_WIN, reason="Github Actions ships with WSL bash")
|
|
107
|
+
def test_bash_activate_does_not_export_ps1(tmp_path, current_fastest) -> None:
|
|
108
|
+
dest = tmp_path / "env"
|
|
109
|
+
cli_run([
|
|
110
|
+
"--without-pip",
|
|
111
|
+
str(dest),
|
|
112
|
+
"--creator",
|
|
113
|
+
current_fastest,
|
|
114
|
+
"--no-periodic-update",
|
|
115
|
+
"--activators",
|
|
116
|
+
"bash",
|
|
117
|
+
])
|
|
118
|
+
activate_script = dest / "bin" / "activate"
|
|
119
|
+
print_ps1 = f"{shlex.quote(sys.executable)} -c 'import os; print(os.environ.get(\"PS1\"))'"
|
|
120
|
+
result = subprocess.run(
|
|
121
|
+
[
|
|
122
|
+
"bash",
|
|
123
|
+
"-c",
|
|
124
|
+
(f"unset PS1; PS1='base$ '; source \"{activate_script}\" && {print_ps1} && deactivate && {print_ps1}"),
|
|
125
|
+
],
|
|
126
|
+
capture_output=True,
|
|
127
|
+
encoding="utf-8",
|
|
128
|
+
text=True,
|
|
129
|
+
)
|
|
130
|
+
assert result.returncode == 0, result.stderr
|
|
131
|
+
assert result.stdout.splitlines() == ["None", "None"]
|
|
132
|
+
|
|
133
|
+
|
|
104
134
|
@pytest.mark.skipif(IS_WIN, reason="Github Actions ships with WSL bash")
|
|
105
135
|
@pytest.mark.parametrize("hashing_enabled", [True, False])
|
|
106
136
|
def test_bash(raise_on_non_source_class, hashing_enabled, activation_tester) -> None:
|
|
@@ -121,6 +151,6 @@ def test_bash(raise_on_non_source_class, hashing_enabled, activation_tester) ->
|
|
|
121
151
|
return super().activate_call(script) + " || exit 1"
|
|
122
152
|
|
|
123
153
|
def print_prompt(self):
|
|
124
|
-
return
|
|
154
|
+
return 'printf "%s\\n" "$PS1"'
|
|
125
155
|
|
|
126
156
|
activation_tester(Bash)
|
|
@@ -385,6 +385,28 @@ def test_home_path_is_exe_parent(tmp_path, creator) -> None:
|
|
|
385
385
|
assert any(os.path.exists(os.path.join(cfg["home"], exe)) for exe in exes)
|
|
386
386
|
|
|
387
387
|
|
|
388
|
+
@pytest.mark.skipif(sys.platform == "win32", reason="POSIX only")
|
|
389
|
+
@pytest.mark.skipif(
|
|
390
|
+
bool(CURRENT.sysconfig_vars.get("PYTHONFRAMEWORK")),
|
|
391
|
+
reason="framework builds self-locate via dyld and keep the recorded path",
|
|
392
|
+
)
|
|
393
|
+
@pytest.mark.usefixtures("temp_app_data")
|
|
394
|
+
def test_home_resolves_executable_only_symlink(tmp_path: Path) -> None:
|
|
395
|
+
"""An executable-only symlink must not be recorded as home / base-executable (issue #3157)."""
|
|
396
|
+
system_exe = CURRENT.system_executable
|
|
397
|
+
assert system_exe is not None
|
|
398
|
+
link = tmp_path / "symdir" / "python3"
|
|
399
|
+
link.parent.mkdir()
|
|
400
|
+
link.symlink_to(system_exe)
|
|
401
|
+
|
|
402
|
+
result = cli_run(["-p", str(link), str(tmp_path / "env"), "--seeder", "app-data", "--without-pip"])
|
|
403
|
+
cfg = PyEnvCfg.from_file(result.creator.pyenv_cfg.path)
|
|
404
|
+
|
|
405
|
+
assert Path(cfg["home"]) != link.parent
|
|
406
|
+
assert os.path.samefile(cfg["base-executable"], system_exe)
|
|
407
|
+
assert Path(cfg["home"]) == Path(cfg["base-executable"]).parent
|
|
408
|
+
|
|
409
|
+
|
|
388
410
|
@pytest.mark.usefixtures("temp_app_data")
|
|
389
411
|
def test_create_parallel(tmp_path) -> None:
|
|
390
412
|
def create(count) -> None:
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/create/via_global_ref/builtin/__init__.py
RENAMED
|
File without changes
|
{virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/create/via_global_ref/builtin/builtin_way.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/create/via_global_ref/builtin/pypy/common.py
RENAMED
|
File without changes
|
{virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/create/via_global_ref/builtin/pypy/pypy3.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/seed/embed/via_app_data/pip_install/base.py
RENAMED
|
File without changes
|
{virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/seed/embed/via_app_data/pip_install/copy.py
RENAMED
|
File without changes
|
|
File without changes
|
{virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/seed/embed/via_app_data/via_app_data.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/seed/wheels/embed/pip-25.0.1-py3-none-any.whl
RENAMED
|
File without changes
|
{virtualenv-21.4.2 → virtualenv-21.4.3}/src/virtualenv/seed/wheels/embed/pip-26.0.1-py3-none-any.whl
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/builtin/conftest.py
RENAMED
|
File without changes
|
{virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/builtin/cpython/conftest.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/builtin/pypy/test_pypy3.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/builtin/testing/__init__.py
RENAMED
|
File without changes
|
{virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/builtin/testing/helpers.py
RENAMED
|
File without changes
|
{virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/builtin/testing/path.py
RENAMED
|
File without changes
|
{virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/builtin/testing/py_info.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/test_build_c_ext.py
RENAMED
|
File without changes
|
{virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/create/via_global_ref/test_race_condition.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{virtualenv-21.4.2 → virtualenv-21.4.3}/tests/unit/seed/embed/test_bootstrap_link_via_app_data.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|