pip3 在 MacOS Mojave 上安装 delta-lake-reader[aws] 失败

pip3 Install delta-lake-reader[aws] fails on MacOS Mojave

我正在尝试在装有 MacOS Mojave 的 MacBook Pro 上安装 delta-lake-reader[aws],但它失败了。我的笔记本电脑上安装了 Python 3.9.1。

$ pip3 install delta-lake-reader[aws]


Collecting delta-lake-reader[aws]
  Using cached delta_lake_reader-0.2.2-py3-none-any.whl (7.4 kB)
Collecting pyarrow<3.0.0,>=2.0.0
  Using cached pyarrow-2.0.0.tar.gz (58.9 MB)
  Installing build dependencies ... |

之后它挂了一会儿,然后失败并出现很多错误,最后,它在结束前给出了以下输出:

ERROR: Cannot install delta-lake-reader[aws]==0.1.0, delta-lake-reader[aws]==0.1.1, delta-lake-reader[aws]==0.2.1 and delta-lake-reader[aws]==0.2.2 because these package versions have conflicting dependencies.

The conflict is caused by:
    delta-lake-reader[aws] 0.2.2 depends on pyarrow<3.0.0 and >=2.0.0
    delta-lake-reader[aws] 0.2.1 depends on pyarrow<3.0.0 and >=2.0.0
    delta-lake-reader[aws] 0.1.1 depends on pyarrow<3.0.0 and >=2.0.0
    delta-lake-reader[aws] 0.1.0 depends on pyarrow<3.0.0 and >=2.0.0

To fix this you could try to:
1. loosen the range of package versions you've specified
2. remove package versions to allow pip attempt to solve the dependency conflict

ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/user_guide/#fixing-conflicting-dependencies
$

我尝试卸载 pyarrow 但它再次安装 3.0.0 并以同样的方式失败。

我该如何克服这个问题?

问题在于显式依赖,不包括pyarrow 3.0.0,但需要2.x.x版本。 pyarrow 2.x.x 与 Python 3.9 不兼容,这就是您构建失败的原因,但它适用于 Python 3.8,我能够使用 pip3.8 install 'delta-lake-reader[aws]==0.2.2' 安装它。所以你有以下选择:

  • 使用Python3.8
  • 下载存储库,并在 pyproject.toml to use pyarrow 3.0.0, and after that use poetry tool 中进行更改以构建 wheel
  • project中的文件问题,等待作者修复。
  • 如果您不需要额外的功能,那么您可以使用可以通过 pip install deltalake 命令安装的官方 Delta Lake python package