例如,库more-itertools
。它已指定python_requires = >= 3.4
表示它与以前的版本不兼容。
当我尝试在全新的virtualenv中pip install more-itertools
(pip == 19.2.3,setuptools == 41.2.0)时,出现以下错误:
ERROR: Package 'more-itertools' requires a different Python: 2.7.10 not in '>=3.4'
我的问题是:如何获得点子以安装兼容的先前版本?这有可能吗?还是我必须将依赖关系固定到以前的版本?
在pip install --help
中看不到任何在这里特别有用的东西。
答案 0 :(得分:1)
好的,现在我更加困惑了。
在新的docker上尝试一下,似乎开箱即用:
from centos:centos7
RUN yum install -y epel-release
RUN yum install -y python-pip
RUN python -m pip install -U virtualenv pip
RUN mkdir /test
WORKDIR /test
RUN virtualenv venv
ENV PATH="/test/venv/bin:$PATH"
RUN pip install more-itertools
这将安装more-itertools==5.0.0
编辑:事实证明,这是我正在使用的索引服务器的问题,该索引服务器在安装时无法正确传达python_requires元数据。