понедельник, 2 июня 2025 г.

Poetry, Giga, Python. Code Format, Tools

Poetry, Giga, Python. Code Format, Tools

https://giga.chat/link/gcsObBTGeV

Poetry — это современный менеджер зависимостей и инструмент для упаковки Python-проектов,

предложенный компанией Distribute Aid. Появившись относительно недавно,

Poetry стремительно завоевал популярность среди разработчиков благодаря своим преимуществам

в области управления зависимостями, автоматической генерации зависимостей и возможностей развёртывания проектов.

Ключевые особенности Poetry

  1. Управление зависимостями:
    • Poetry автоматически создаёт и хранит информацию о зависимостях в файле pyproject.toml,
    • соответствующем стандартам PEP 518 и PEP 621.
    • Управляет как прямыми, так и косвенными зависимостями, гарантируя,
    • что каждая установленная библиотека точно зафиксирована в единственном месте.
    • Предоставляет возможность зафиксировать точные версии зависимостей с помощью специального файла блокировки
    • (poetry.lock), обеспечивающего воспроизводимую установку.
  2. Автоматическая установка и упаковка:
    • Автоматически собирает проект в колесо (wheel) или архивируемое яйцо (sdist), делая развёртывание проще и быстрее.
    • Позволяет публиковать пакеты в PyPI или локальные хранилища.
  3. Удобная работа с виртуальной средой:
    • Самостоятельно создаёт и активирует виртуальную среду при первом запуске проекта,
    • избавляя разработчика от ручного управления виртуализацией.
    • Интегрируется с большинством IDE и рабочими средами, улучшая опыт разработки.
  4. Поддержка семантического версионирования:
    • Содержит механизмы, позволяющие удобно повышать версию проекта, используя принцип SemVer (Major.Minor.Patch).
  5. Интерактивный интерфейс командной строки:
    • Предлагает интуитивно понятные и мощные CLI-команды для работы с зависимостями, создания виртуальных сред,
    • упаковки и деплоймента.

Практика использования Poetry

Установка Poetry

Poetry устанавливается довольно просто:

curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python -

или с помощью pipsi:

pipsi install poetry

Инициализация проекта

Создать новый проект с Poetry можно следующей командой:

poetry new my-project

Затем перейдите в каталог проекта и создайте необходимое содержимое.

Добавление зависимостей

Используйте простую команду для добавления новой зависимости:

poetry add requests

Poetry автоматически обновит ваш pyproject.toml и заблокирует версию в poetry.lock.

Удаление зависимостей

Удалять ненужные зависимости тоже легко:

poetry remove requests

Работа с виртуальной средой

По умолчанию Poetry создаёт виртуальное окружение для каждого проекта.

Активировать его можно так:

poetry shell

Выход из оболочки осуществляется обычной командой выхода (exit).

Сборка и публикация пакета

Собрать проект в виде колеса можно одной командой:

poetry build

Опубликовать собранный пакет в PyPI:

poetry publish

Преимущества Poetry

  • Чистота и простота в работе с зависимостями.
  • Минималистичность в процессе подготовки проекта к выпуску.
  • Совместимость с новыми стандартами PEP 518 и PEP 621.
  • Мощные средства управления виртуальными средами.

Недостатки

  • Относительно молодой инструмент,
  • иногда возникают проблемы совместимости с некоторыми нестандартными библиотеками.
  • Может вызывать сложности при переходе с других менеджеров зависимостей (например, pip).

Заключение

Poetry становится всё популярнее среди разработчиков Python благодаря своему удобству,

надёжности и строгой фиксации зависимостей.

Он позволяет избежать многих распространенных проблем, присущих другим менеджерам зависимостей,

и существенно улучшает процессы подготовки и публикации Python-проектов.

Комментариев нет:

Отправить комментарий