如何在 macOS 上构建 python 数据表的开发版本(获取 pip._vendor.pep517.wrappers.BackendUnavailable)

How to build dev version of python datatable on macos (getting pip._vendor.pep517.wrappers.BackendUnavailable)

按照 datatable 页面上的说明进行操作 https://datatable.readthedocs.io/en/latest/install.html

所以我运行这个:

$pip3 install git+https://github.com/h2oai/datatable

结果是:

Collecting git+https://github.com/h2oai/datatable
  Cloning https://github.com/h2oai/datatable to /private/var/folders/d6/m67jyndd7h754m3810cl3bpm0000gp/T/pip-req-build-hv991zd2
  Running command git clone -q https://github.com/h2oai/datatable /private/var/folders/d6/m67jyndd7h754m3810cl3bpm0000gp/T/pip-req-build-hv991zd2
  Getting requirements to build wheel ... done
ERROR: Exception:
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/cli/base_command.py", line 178, in main
    status = self.run(options, args)
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/commands/install.py", line 352, in run
    resolver.resolve(requirement_set)
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/resolve.py", line 131, in resolve
    self._resolve_one(requirement_set, req)
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/resolve.py", line 294, in _resolve_one
    abstract_dist = self._get_abstract_dist_for(req_to_install)
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/resolve.py", line 242, in _get_abstract_dist_for
    self.require_hashes
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/operations/prepare.py", line 362, in prepare_linked_requirement
    abstract_dist.prep_for_dist(finder, self.build_isolation)
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/operations/prepare.py", line 169, in prep_for_dist
    self.install_backend_dependencies(finder=finder)
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/operations/prepare.py", line 123, in install_backend_dependencies
    reqs = req.pep517_backend.get_requires_for_build_wheel()
  File "/usr/local/lib/python3.7/site-packages/pip/_vendor/pep517/wrappers.py", line 71, in get_requires_for_build_wheel
    'config_settings': config_settings
  File "/usr/local/lib/python3.7/site-packages/pip/_vendor/pep517/wrappers.py", line 162, in _call_hook
    raise BackendUnavailable
pip._vendor.pep517.wrappers.BackendUnavailable

这对我来说是不可操作的:我不确定要修复什么/如何继续。提示?

注意:同时我安装了0.10.1版本如下:

sudo pip3 install 'datatable==0.10.1'

这有重要的 by(基于表达式 groupby)和我需要的 sortvalues()

发生此错误的原因很可能是您尝试使用旧版本的 pip 构建 datatable。为了从源代码构建 datatable,需要 pip 20.0 或更高版本。

不幸的是,there is no way 项目指定它需要特定的最低版本的 pip。而且我假设如果最终会添加这样的设置,无论如何只有最新版本的 pip 会知道它,这违背了目的。