如果我想开发一个仅适用于 Linux 和 macOS 的 Python 包。如何在 Python Poetry 中指定此限制?
最佳答案
Trove classifiers pyproject.toml
文件中的可用于指定支持哪些操作系统。对于 Linux 和 MacOS,这将是:
[tool.poetry]
classifiers = [
"Operating System :: MacOS",
"Operating System :: POSIX :: Linux"
]
但是,当使用 poetry install
命令时,这不会阻止诗歌尝试在其他平台上安装软件包。 GitHub issue #2051 中建议支持特定于平台的轮子标签,位于 to do list for poetry's 1.2 release在撰写本文时。
要指定将软件包安装在哪个平台上作为另一个诗歌项目的依赖项,environment markers可以使用:
[tool.poetry.dependencies]
yourpackage = {version = "*", markers = "sys_platform == 'linux' or sys_platform == 'darwin'"}
当 poetry install
在其他平台上使用时,Poetry 将忽略 yourpackage
,但不会给出任何错误。如果是硬依赖,最好在别处指明支持哪些平台。
关于python - 如何在 Python Poetry 中指定对操作系统的依赖关系?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64094979/