pip无法安装任意模块

时间:2018-11-29 13:43:44

标签: python pip

对于每次部署到我们的测试服务器,我们都使用

安装许多软件包
pip install -r requirements.txt --upgrade

在大约一半的情况下,pip无法安装返回错误的软件包,例如

Could not find a version that satisfies the requirement django-brotli==0.1.3 (from -r configuration/environments/dev/../requirements.txt (line 66)) (from versions: )
No matching distribution found for django-brotli==0.1.3 (from -r configuration/environments/dev/../requirements.txt (line 66))

两个观察结果:

  • pip无法安装的软件包确实存在-安装在以前的版本和以后的版本中都可以正常运行。
  • 失败的程序包是任意的

我们正在不同的虚拟机中并行运行多个构建,因此我认为这是一种竞争条件。 我已经确保将环境变量 TMPDIR 设置为每个构建过程的不同位置,但是问题仍然存在。

有没有想过其他点子处理可以互相干扰的地方?

我正在将pip 18.1与python 3.5.3配合使用

1 个答案:

答案 0 :(得分:0)

感谢@hoefling,这些附加的冗长消息似乎表明问题是pip进行了缓存,即使我真的无法弄清楚到底是什么问题。 在某些情况下,pip似乎试图在缓存中找到版本,而并行进程却无法找到它。

自从我添加了选项pip --no-cache以来,此问题就不再发生。

相关问题