使用 Pipenv 安装 Airflow 1.10.10

mic*_*ich 6 dependencies dependency-management airflow pipenv

有没有人在用 pipenv 安装 apache-airflow 1.10.10 时遇到问题?当我尝试使用 pipenv install 安装它时,出现以下错误:

There are incompatible versions in the resolved dependencies:
  marshmallow<3.0.0,>=2.18.0 (from flask-appbuilder==2.3.4->apache-airflow==1.10.10->-r /var/folders/rl/p0x650cn1lx6f7syttzvh2hh0000gn/T/pipenvykrgd_0krequirements/pipenv-lwhwxrq7-constraints.txt (line 2))
  marshmallow>=2.0.0 (from marshmallow-enum==1.5.1->flask-appbuilder==2.3.4->apache-airflow==1.10.10->-r /var/folders/rl/p0x650cn1lx6f7syttzvh2hh0000gn/T/pipenvykrgd_0krequirements/pipenv-lwhwxrq7-constraints.txt (line 2))
  marshmallow>=3.0.0 (from marshmallow-sqlalchemy==0.24.0->flask-appbuilder==2.3.4->apache-airflow==1.10.10->-r /var/folders/rl/p0x650cn1lx6f7syttzvh2hh0000gn/T/pipenvykrgd_0krequirements/pipenv-lwhwxrq7-constraints.txt (line 2))
Run Code Online (Sandbox Code Playgroud)

据我了解,Airflow 的子依赖项需要版本冲突的棉花糖包:棉花糖<3.0.0 和棉花糖>=3.0.0。我不明白的是它曾经有效。Airflow 依赖与自身冲突是否正常?在没有 Pipenv 的 virtualenv 上执行 pip install apache-airflow==1.10.10 时,我没有问题。

任何见解?谢谢

小智 14

我在通过 pipenv 安装 apache-airflow 1.10.11 时遇到了同样的问题。冲突的依赖似乎与flask-appbuilder 的子依赖有关。固定marshmallow-sqlalchemy = "==0.16.1"为我解决了这个问题。

文件:

...
[packages]
marshmallow-sqlalchemy = "==0.16.1"
apache-airflow = "==1.10.11"
...
Run Code Online (Sandbox Code Playgroud)

我还成功地使用 apache-airflow 1.10.10 & 1.10.12 对其进行了测试。