python – Tox将错误版本的pip安装到它的虚拟环境中

我使用tox来管理一些测试环境.我有一个依赖(backports.ssl-match-hostname)我无法使用最新版本的pip下载,所以我需要恢复到pip 8.0.3以允许安装工作.

我已经在我的tox.ini文件中包含了8.0.3版本的pip用于依赖项.

deps=
    pip==8.0.3

但是,当我跑

source .tox/py27/bin/activate

并进入虚拟测试环境,然后运行

pip --version

我结束了

8.1.2

但是,在我的tox环境之外,当我运行相同的命令时,我得到了

8.0.3

抓住点子时tox有什么特别之处吗?为什么我无法指定要用作依赖项的pip版本?

编辑:添加到这个,似乎我能够获取依赖pip == 8.0.3,但对于其他依赖项,它们仍然使用pip == 8.1.2启动的命令运行

所以,我需要首先抓住pip == 8.0.3,然后一旦安装,抓住其他所有东西.仍不确定为什么tox以pip == 8.1.2开头

最佳答案
这显然是“virtualenvs”python包的结果,它包含一个预先选择的python包,它引用了一组python包,其中一个是最新和最好的pip.

我不知道这是否是首选方式,但我通过运行找到了成功

pip uninstall virtualenv

然后重新安装有效的版本

pip install virtualenv==15.0.1

有了virtualenv的“正确”版本,我能够运行我的tox命令

source .tox/py27/bin/activate

并查看所需的点子版本

pip --version
pip 8.0.3

转载注明原文:python – Tox将错误版本的pip安装到它的虚拟环境中 - 代码日志