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 的命令 **直观** 且易于使用,具有合理的默认值,同时仍然可配置。

它也是 **可扩展** 的,具有插件系统。