Если я устанавливаю Python 3.3 из Arch Linux AUR, а затем пытаюсь открыть virtualenv, я получаю сбой:
$ virtualenv -p python3.3 /tmp/foo
Running virtualenv with interpreter /usr/bin/python3.3
Using base prefix '/usr'
New python executable in /tmp/foo/bin/python3.3
Also creating executable in /tmp/foo/bin/python
Installing setuptools, pip, wheel...
Complete output from command /tmp/foo/bin/python3.3 - setuptools pip wheel:
Traceback (most recent call last):
File "<stdin>", line 7, in <module>
File "/usr/lib/python3.5/site-packages/virtualenv_support/pip-8.1.0-py2.py3-none-any.whl/pip/__init__.py", line 15, in <module>
File "/usr/lib/python3.5/site-packages/virtualenv_support/pip-8.1.0-py2.py3-none-any.whl/pip/vcs/subversion.py", line 9, in <module>
File "/usr/lib/python3.5/site-packages/virtualenv_support/pip-8.1.0-py2.py3-none-any.whl/pip/index.py", line 30, in <module>
File "/usr/lib/python3.5/site-packages/virtualenv_support/pip-8.1.0-py2.py3-none-any.whl/pip/wheel.py", line 39, in <module>
File "/usr/lib/python3.5/site-packages/virtualenv_support/pip-8.1.0-py2.py3-none-any.whl/pip/_vendor/distlib/scripts.py", line 14, in <module>
File "/usr/lib/python3.5/site-packages/virtualenv_support/pip-8.1.0-py2.py3-none-any.whl/pip/_vendor/distlib/compat.py", line 66, in <module>
ImportError: cannot import name HTTPSHandler
----------------------------------------
...Installing setuptools, pip, wheel...done.
Traceback (most recent call last):
File "/usr/lib/python3.5/site-packages/virtualenv.py", line 2311, in <module>
main()
File "/usr/lib/python3.5/site-packages/virtualenv.py", line 703, in main
symlink=options.symlink)
File "/usr/lib/python3.5/site-packages/virtualenv.py", line 936, in create_environment
download=download,
File "/usr/lib/python3.5/site-packages/virtualenv.py", line 892, in install_wheel
call_subprocess(cmd, show_stdout=False, extra_env=env, stdin=SCRIPT)
File "/usr/lib/python3.5/site-packages/virtualenv.py", line 787, in call_subprocess
% (cmd_desc, proc.returncode))
OSError: Command /tmp/foo/bin/python3.3 - setuptools pip wheel failed with error code 1
В комментариях к этому пакету AUR есть обсуждение различных флагов сборки, связанных с SSL. У меня сложилось впечатление, что сам пакет нужно как-то исправить, поэтому этот сбой не является ошибкой virtualenv. Однако было бы неплохо, если бы virtualenv знал об этой потенциальной ошибке и мог напечатать полезное сообщение. Что-то вроде «Пакет SomethingSomething отсутствует, вероятно, потому, что ваша версия Python была построена без BlahBlahSSL. Virtualenv не поддерживает это».
У меня точно такая же ошибка, как у @ oconnor663, описанная с Python 3.4, установленным из Arch Linux AUR (текущая / стандартная версия Python - 3.5).
Я пытался установить virtualenv непосредственно из
Вот команда:
$ virtualenv -p /usr/bin/python3.4 python34virtEnv
Должно быть исправлено https://bitbucket.org/pypa/distlib/commit/a258e3bdd6f8205f3815e173a55ffe857e743995.
ОБНОВЛЕНИЕ 2018/01/20: исправлено в distlib 0.2.4, pip 9.0.0 (https://github.com/pypa/pip/commit/c8e8a99b7a6f9404536bc9d895a1a42a060f7f91) и установлено в virtualenv 15.1.0 (https://github. com / pypa / virtualenv / pull / 972 / commits / e944bdc384759c27662b8ffd9264367d569376ee)
Эту старую проблему теперь можно закрыть, потому что EOL Python 3.3 был удален на https://github.com/pypa/virtualenv/pull/1089.
Самый полезный комментарий
Должно быть исправлено https://bitbucket.org/pypa/distlib/commit/a258e3bdd6f8205f3815e173a55ffe857e743995.
ОБНОВЛЕНИЕ 2018/01/20: исправлено в distlib 0.2.4, pip 9.0.0 (https://github.com/pypa/pip/commit/c8e8a99b7a6f9404536bc9d895a1a42a060f7f91) и установлено в virtualenv 15.1.0 (https://github. com / pypa / virtualenv / pull / 972 / commits / e944bdc384759c27662b8ffd9264367d569376ee)