Я использую Python 3.5.2 ( /usr/bin/python3.5
) с Pip3 8.1.1 ( /usr/bin/pip3
) на Ubuntu 16.04 с python3-virtualenv
установленным через apt. В dpkg версия - python3-virtualenv/xenial-updates 15.0.1+ds-3ubuntu1 all
.
Когда я создаю новую среду, выполнив следующую команду:
virtualenv --python=/usr/bin/python3.5 env
Я ожидаю, что версия pip3 будет 8.1.1 (единственный pip3, установленный в моей системе). Вместо этого я активирую виртуальный env, и pip --version
выводит следующее:
pip 10.0.0b2 from /home/ubuntu/env/lib/python3.5/site-packages/pip (python 3.5)
В качестве временного решения я могу перейти на более раннюю версию сразу же после создания среды, однако, похоже, это не должно быть предполагаемым поведением. Пожалуйста, дайте мне знать, будет ли вам полезна дополнительная информация.
У вас есть переменная среды PIP_PRE
или файл конфигурации pip, в котором указан аргумент --pre
? Или в вашем дистрибутиве есть исправления для установки предварительных версий (вряд ли, я бы подумал). Можете ли вы воспроизвести это поведение с помощью virtualenv из PyPI (или github)?
Извините, я хотел включить и это! У меня нет переменных PIP*
установленных в среде, и нет файла конфигурации pip. Я не верю, что dist был исправлен, но я не смог проверить.
Я попытаюсь воспроизвести с помощью virtualenv из PyPI или Github и вернусь назад.
@ jwarren116 Я считаю, что virtualenv извлекает последние доступные версии setuptools, pip и wheel из PyPI, когда он создает новый virtualenv (используя локальный кеш pip, если он доступен). И до virtualenv 15.1.0 он внутренне устанавливал "PIP_PRE = 1" при этом. Таким образом, обновление до virtualenv 15.1.0 или выше, по крайней мере, позволит вам установить pip 9.0.3 в новые виртуальные серверы. Если вы специально хотите использовать pip 8.1.1 в своем virtualenv, я думаю, вам нужно будет явно понизить его после создания.
@jmbowman Спасибо за это разъяснение. Я знал, что вспомнил, что virtualenv установил PIP_PRE
, но не смог найти его при просмотре исходников. Мне не пришло в голову вернуться в историю.
Эта проблема была автоматически помечена как устаревшая, поскольку в последнее время не было активности. Он будет закрыт, если больше не будет активности. Просто добавьте комментарий, если хотите, чтобы он оставался открытым. Спасибо за ваш вклад.
Самый полезный комментарий
@ jwarren116 Я считаю, что virtualenv извлекает последние доступные версии setuptools, pip и wheel из PyPI, когда он создает новый virtualenv (используя локальный кеш pip, если он доступен). И до virtualenv 15.1.0 он внутренне устанавливал "PIP_PRE = 1" при этом. Таким образом, обновление до virtualenv 15.1.0 или выше, по крайней мере, позволит вам установить pip 9.0.3 в новые виртуальные серверы. Если вы специально хотите использовать pip 8.1.1 в своем virtualenv, я думаю, вам нужно будет явно понизить его после создания.