Go to file
Arun Babu Neelicattu 500a313d68 add master branch deprecation notice 2024-02-25 17:37:29 +01:00
.github ci: add python 3.12 to skip workflow 2024-02-25 04:45:43 +01:00
assets docs: update README gif 2022-09-18 10:41:08 -06:00
docs doc: add reference to package source for add 2024-02-25 04:23:24 +01:00
src/poetry add master branch deprecation notice 2024-02-25 17:37:29 +01:00
tests chore: update dependencies (#8984) 2024-02-25 06:39:51 +00:00
.cirrus.yml chore: use freebsd-13-2 (#8901) 2024-01-23 18:40:54 -08:00
.gitignore chore: drop tox 2022-08-31 02:34:04 -06:00
.pre-commit-config.yaml [pre-commit.ci] pre-commit autoupdate (#8993) 2024-02-24 12:51:05 +00:00
.pre-commit-hooks.yaml hooks: add poetry-update hook (#8327) 2023-08-28 16:04:24 +00:00
CHANGELOG.md release: bump version to 1.8.0 2024-02-25 13:11:30 +01:00
CITATION.cff Add CITATION.cff file (#8510) 2023-10-28 17:33:46 +02:00
CODE_OF_CONDUCT.md Add a Code of Conduct (#694) 2019-11-17 22:24:20 +01:00
LICENSE chore: Update outdated LICENSE year (#6871) 2022-10-24 10:35:39 +02:00
README.md Update cleo example to point to `main` branch (#8446) 2023-09-17 20:01:12 +00:00
poetry.lock chore: update dependencies (#8984) 2024-02-25 06:39:51 +00:00
pyproject.toml chore: bump version after release (#9018) 2024-02-25 13:50:30 +01:00

README.md

Poetry: Python packaging and dependency management made easy

Poetry Stable Version Pre-release Version Python Versions Download Stats Discord

Poetry helps you declare, manage and install dependencies of Python projects, ensuring you have the right stack everywhere.

Poetry Install

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 file(s) are used as the package description
readme = ["README.md", "LICENSE"]

# Keywords (translated to tags on the package index)
keywords = ["packaging", "poetry"]

[tool.poetry.dependencies]
# Compatible Python versions
python = ">=3.8"
# Standard dependency with semver constraints
aiohttp = "^3.8.1"
# Dependency with extras
requests = { version = "^2.28", extras = ["security"] }
# Version-specific dependencies with prereleases allowed
tomli = { version = "^2.0.1", python = "<3.11", allow-prereleases = true }
# Git dependencies
cleo = { git = "https://github.com/python-poetry/cleo.git", branch = "main" }
# Optional dependencies (installed by extras)
pendulum = { version = "^2.1.2", optional = true }

# Dependency groups are supported for organizing your dependencies
[tool.poetry.group.dev.dependencies]
pytest = "^7.1.2"
pytest-cov = "^3.0"

# ...and can be installed only when explicitly requested
[tool.poetry.group.docs]
optional = true
[tool.poetry.group.docs.dependencies]
Sphinx = "^5.1.1"

# Python-style entrypoints and scripts are easily expressed
[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

  • 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