【发布时间】:2023-01-17 11:41:39
【问题描述】:
我正在尝试通过 Poetry 安装 Python 包,其安装版本应根据 Bash 命令的输出(~返回值)确定。
是否可以按照以下方式做某事(在pyproject.toml中):
[tool.poetry.dependencies]
python = "^3.8"
this-package = "^$(path-to-executable --version)"
$(path-to-executable --version) 是将输出版本的 bash 命令调用在哪里?
理想情况下,无需运行脚本/Makefile/“““某物”””在 Poetry 之上(如 this Git thread 中所示似乎指向)
具体来说,这是因为我正在尝试安装 GDAL。我们不使用太高级的功能,所以几乎任何版本都可以。但是,要安装的 Python 包在很大程度上取决于系统中安装的 Gdal 可执行文件(及其库)的版本。可以确定在终端中运行gdal-config --version。在我的例子中(Ubuntu 18.02),该命令返回2.2.3,但在 Ubuntu 中永远不会返回更高的值。
所以,我正在尝试使 Poetry 的 pyproject.toml 中的依赖项解析变得有点动态:无论谁试图安装我的包,仍然需要安装 libgdal-dev 和其他依赖项,但我希望它是一个 tiiiiiiny有点动态,所以他们不必编辑 pyproject.toml 文件来填充他们的Gdal 版本。此外,这是供内部使用的,因此它只需要在类似 Linux 的系统中工作(没有 Windows 或 Apple)
先感谢您!
【问题讨论】:
标签: python installation dependencies gdal python-poetry