Poetry: Python packaging and dependency management made easy
Poetry helps you declare, manage and install dependencies of Python projects,
ensuring you have the right stack everywhere.
Poetry replaces setup.py
, requirements.txt
, setup.cfg
, MANIFEST.in
and Pipfile
with a simple pyproject.toml
based project format.
[tool.poetry]
name = "my-package"
version = "0.1.0"
description = "The description of the package"
license = "MIT"
authors = [
"Sébastien Eustace <sebastien@eustace.io>"
]
repository = "https://github.com/python-poetry/poetry"
homepage = "https://python-poetry.org"
readme = ["README.md", "LICENSE"]
keywords = ["packaging", "poetry"]
[tool.poetry.dependencies]
python = ">=3.8"
aiohttp = "^3.8.1"
requests = { version = "^2.28", extras = ["security"] }
tomli = { version = "^2.0.1", python = "<3.11", allow-prereleases = true }
cleo = { git = "https://github.com/python-poetry/cleo.git", branch = "main" }
pendulum = { version = "^2.1.2", optional = true }
[tool.poetry.group.dev.dependencies]
pytest = "^7.1.2"
pytest-cov = "^3.0"
[tool.poetry.group.docs]
optional = true
[tool.poetry.group.docs.dependencies]
Sphinx = "^5.1.1"
[tool.poetry.scripts]
my-script = "my_package:main"
Installation
Poetry supports multiple installation methods, including a simple script found at install.python-poetry.org. For full
installation instructions, including advanced usage of the script, alternate install methods, and CI best practices, see
the full installation documentation.
Documentation
Documentation for the current version of Poetry (as well as the development branch and recently out of support
versions) is available from the official website.
Contribute
Poetry is a large, complex project always in need of contributors. For those new to the project, a list of
suggested issues to work on in Poetry and poetry-core is available. The full contributing documentation also
provides helpful guidance.
Resources
Related Projects
- poetry-core: PEP 517 build-system for Poetry projects, and
dependency-free core functionality of the Poetry frontend
- poetry-plugin-export: Export Poetry projects/lock files to
foreign formats like requirements.txt
- poetry-plugin-bundle: Install Poetry projects/lock files to
external formats like virtual environments
- install.python-poetry.org: The official Poetry
installation script
- website: The official Poetry website and blog