使用 Pipenv 安装 Airflow 1.10.10

Posted

技术标签:

【中文标题】使用 Pipenv 安装 Airflow 1.10.10【英文标题】:Airflow 1.10.10 installation with Pipenv 【发布时间】:2021-02-12 00:19:47 【问题描述】:

有人在使用 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))

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

有什么见解吗?谢谢

【问题讨论】:

【参考方案1】:

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

点文件:

...
[packages]
marshmallow-sqlalchemy = "==0.16.1"
apache-airflow = "==1.10.11"
...

我还使用 apache-airflow 1.10.10 和 1.10.12 成功测试了它。

【讨论】:

谢谢。这也适用于气流 1.10.10 版本安装

以上是关于使用 Pipenv 安装 Airflow 1.10.10的主要内容,如果未能解决你的问题,请参考以下文章

Linux(Ubuntu系统)python虚拟环境pipenv的安装配置与使用(详细版!!!)

pipenv的使用

安装pipenv

安装pipenv

pipenv使用

pipenv 使用基本命令