簡體   English   中英

如何在 Python Poetry 中指定對操作系統的依賴關系?

[英]How can I specify dependencies on operating system in Python Poetry?

如果我想開發一個僅適用於 Linux 和 macOS 的 Python 包。 如何在 Python Poetry 中指定此限制?

pyproject.toml文件中的Trove 分類器可用於指定支持哪些操作系統。 對於 Linux 和 MacOS,這將是:

[tool.poetry]
classifiers = [
    "Operating System :: MacOS",
    "Operating System :: POSIX :: Linux"
]

然而,這不會阻止詩在使用poetry install命令時嘗試在其他平台上安裝包。 GitHub 問題 #2051 中已建議支持特定於平台的輪子標簽,在撰寫本文時,該問題已在詩歌 1.2 版本的待辦事項列表中

要指定將包安裝在哪些平台上作為另一個詩歌項目的依賴項,可以使用環境標記

[tool.poetry.dependencies]
yourpackage = {version = "*", markers = "sys_platform == 'linux' or sys_platform == 'darwin'"}

當在其他平台上使用poetry install時, poetry install將忽略您的yourpackage ,但不會給出任何錯誤。 如果它是一個硬依賴項,那么最好在別處指明支持哪些平台。

此處的文檔中,他們提到支持環境標記,您可以使用sys_platform標記。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM