pipenv从awswrangler要求安装了错误版本的numpy

时间:2020-06-24 14:14:03

标签: pipenv

我有一个Pipfile,其中包含以下依赖项部分:

[dev-packages]
nose = "==1.3.7"
moto = "==1.3.14"
pyspark = "==2.4.3" # glue 1.0
scipy = ">=1.1.0"
s3fs = ">=0.3.0"
importlib-resources = ">=1.0.2"
boto3 = ">=1.10.50"
freezegun= "==0.3.12"
ipython = "==7.12.0"
matplotlib = "==2.2.5"
jupyterlab = "==1.2.6"
jupytext = "==1.3.3"
awswrangler = "==1.5.0"
pyarrow = ">=0.14.0"
numpy = ">=1.16"
pandas = ">=0.24"
scikit-learn = "==0.23.1"
joblib = "*"

[packages]
extract_msg = "==0.23.1"
imapclient = "==2.1.0"
loguru = "==0.2.5"
docx2txt = "==0.7"
mleap = "==0.15.0"
jmespath = "==0.9.4"
halo = "==0.0.28"
multipledispatch = "==0.6.0"
freezegun = "*"
websocket-client = "==0.56.0"
requests = "==2.22.0"

我创建了一个Pipfile.lock,其中包含带有pipenv lock --dev的开发包。
为Numpy解析的pipenv的特定版本是1.19.0(摘自Pipfile.lock):

        "numpy": {
            "hashes": [
                "sha256:13af0184177469192d80db9bd02619f6fa8b922f9f327e077d6f2a6acb1ce1c0",
                ...
            ],
            "version": "==1.19.0"

但是,如果我检查依赖关系图,则不会发生这种情况,因为awswrangler的要求numpy~=1.18.0不允许1.19.0。 Pipenv图的提取:

awswrangler==1.5.0
  ...
  - numpy [required: ~=1.18.0, installed: 1.19.0]

最后,这导致我以后在另一个系统上安装时出现错误(我在该系统中安装了pip install -r requirements.txt,其中包含由requirements.txt生成的pipenv lock -r --dev > requirements.txt文件)

ERROR: awswrangler 1.5.0 has requirement numpy~=1.18.0, but you'll have numpy 1.19.0 which is incompatible.

然后的问题是:当awswrangler与该版本不兼容时,pipenv如何将Numpy版本解析为1.19.0?

Pipenv版本:2020.6.2

我在pipenv github上提出了一个问题:https://github.com/pypa/pipenv/issues/4364

0 个答案:

没有答案