讓 Python 的封裝和相依性管理變得更容易

Poetry

決定性的建構

開發

Poetry 附帶您管理專案時所有可能需要的工具以決定性的方式。

$ poetry add pendulum

Using version ^2.0.5 for pendulum

Updating dependencies
Resolving dependencies... (1.5s)

Package operations: 4 installs, 0 updates, 0 removals

  - Installing six (1.13.0): Downloading... 25%
  - Updating pytzdata (2019.3 -> 2020.4): Installing...
  - Installing pendulum (2.0.5)

Writing lock file

輕鬆封裝

建構

使用單一指令輕鬆建置封裝你的專案。

$ poetry build

Building poetry (1.0.0)
- Building sdist
- Built poetry-1.0.0.tar.gz

- Building wheel
- Built poetry-1.0.0-py2.py3-none-any.whl

支援原始程式碼與輪子。

分享你的成果

發布

透過發布你的作品到 PyPI,讓更多人認識你的作品。

$ poetry publish

Publishing poetry (1.0.0) to PyPI

- Uploading poetry-1.0.0.tar.gz 100%
- Uploading poetry-1.0.0-py2.py3-none-any.whl 58%
                
            

你也可以在私人儲存庫中發布。

查看依賴項目的狀態

追蹤

只要一個指令,就能洞悉專案的依賴項。

$ poetry show --tree
requests-toolbelt 0.8.0 A utility belt for advanced users...
└── requests <3.0.0,>=2.0.1
    ├── certifi >=2017.4.17
    ├── chardet >=3.0.2,<3.1.0
    ├── idna >=2.5,<2.7
    └── urllib3 <1.23,>=1.21.1

$ poetry show --latest
pendulum 2.0.4   1.4.5 Python datetimes made easy.
django   1.11.11 2.0.3 A high-level Python Web framework ...
requests 2.18.4  2.18.4 Python HTTP for Humans.
依賴處理器

Poetry 內建一個徹底的依賴處理器,如果解法存在的話,它總是會找到解法

如果不存在解法,還能取得詳細的說明。

隔離

Poetry 或者使用您設定的虛擬環境,或者建立自己的虛擬環境,以始終系統隔離。

這項行為可以設定

直覺的 CLI

Poetry 的指令直覺且易於使用,具有明智的預設值,同時還能設定。

它也透過外掛系統擴充