Работа с зависимостями в Python¶
pip¶
Создание файла requirements.txt¶
- Установите зависимости и сохраните их в lock-файл:
pipenv¶
Создание файла Pipfile.lock¶
-
Установите pipenv:
-
Создайте
Pipfile.lock:
poetry¶
Создание файла poetry.lock¶
Если файл poetry.lock еще не существует, Poetry создаст его автоматически при установке зависимостей. Если файл уже существует, он будет обновлен. Для этого выполните команду:
Эта команда обновит зависимости, указанные в pyproject.toml, и создаст или обновит файл poetry.lock.
pipdeptree¶
Создание файла pipdeptree.txt¶
При обнаружении файла pipdeptree.txt агент проанализирует его содержимое как результат вывода утилиты pipdeptree в стандартном формате дерева зависимостей.
Для создания файла можно использовать следующие команды:
Взаимодействие с другими манифестами
Для того чтобы зависимости основного манифеста проекта (например, requirements.txt) не отображались в результатах анализа вместе с результатом анализа pipdeptree рекомендуется исключить этот манифест из сканирования:
uv¶
Создание файла uv.lock¶
Если файл uv.lock еще не существует, uv создаст его автоматически при установке зависимостей. Если файл уже существует, он будет обновлен. Для этого выполните команду:
Эта команда обновит зависимости, указанные в pyproject.toml, и создаст или обновит файл uv.lock.
Поддержка механизма UV workspaces¶
Механизм UV workspaces позволяет централизованно управлять несколькими пакетами.
В pyproject.toml в секции workspaces может быть указана следующая запись:
В таком случае агент Johnny будет обрабатывать корневой pyproject.toml и все pyproject.toml всех пакетов из workspace как единое целое.
pdm¶
Создание файла pdm.lock¶
Если файл pdm.lock еще не существует, pdm создаст его автоматически при установке зависимостей. Если файл уже существует, он будет обновлен. Для этого выполните команду:
Эта команда обновит зависимости, указанные в pyproject.toml, и создаст или обновит файл pdm.lock.
Создание файла pylock.toml¶
Помимо стандартного формата pdm позволяет сформировать lock-файл в формате pylock.toml. Для фиксирования зависимостей в этом формате перед выполнением pdm lock необходимо выполнить следующую команду: