Check

Пакетирование и `pyproject.toml`

Python Senior Яндекс
Как сегодня рекомендуется упаковывать библиотеку на Python? Какую роль играет `pyproject.toml` и чем он лучше старого подхода с `setup.py`?
Ответы
pyproject.toml
Современная рекомендация — использовать `pyproject.toml` как единый конфигурационный файл (PEP 517/518). В нём указывают: - build-систему (`setuptools`, `hatchling`, `poetry` и т.д.); - метаданные проекта (название, версия, зависимости). Преимущества над `setup.py`: - декларативная конфигурация (меньше произвольного кода); - независимость от конкретной build-системы; - лучшая интеграция с инструментами (build, installer, линтеры). `setup.py` остаётся для legacy-проектов, но новые библиотеки лучше начинать с `pyproject.toml`.