Repolode
mgedmin

mgedmin/check-manifest

CLI-инструмент, который проверяет, включены ли все файлы под контролем версий в sdist Python-пакета, и может обновить MANIFEST.in, чтобы добавить недостающие файлы.

Звёзды
293
Форки
44
Открытые issues
29
Последний коммит
20 дней назад

Что это?

check-manifest — CLI-инструмент для авторов Python-пакетов. Он сравнивает файлы под контролем версий (например, в git или Mercurial) с содержимым собранного исходного дистрибутива (sdist) и сообщает, каких файлов в пакете не хватает. Так можно обнаружить распространённую ошибку при сборке пакета: тесты, конфигурационные файлы или данные не попали в релиз, опубликованный в Python Package Index.

При запуске с параметром update инструмент добавляет в MANIFEST.in рекомендуемые правила включения файлов, чтобы те попали в следующую сборку. Если файла MANIFEST.in нет, его также можно создать. Кроме того, можно исключить отдельные файлы или шаблоны через настройки в pyproject.toml, setup.cfg или tox.ini.

Инструмент можно запускать из командной строки или использовать как pre-commit hook, чтобы проверка выполнялась автоматически перед каждым коммитом. Настройки задаются флагами командной строки и в секции [tool.check-manifest] файла pyproject.toml либо в секции [check-manifest] файла setup.cfg или tox.ini.

Ключевые возможности

  • 01Сравнивает файлы под контролем версий с собранным sdist и выводит список отсутствующих файлов.
  • 02Может автоматически добавить рекомендуемые правила включения файлов в MANIFEST.in.
  • 03Создаёт MANIFEST.in, если такого файла нет.
  • 04Позволяет исключать файлы или шаблоны через pyproject.toml, setup.cfg или tox.ini.
  • 05Работает как pre-commit hook.

Сценарии использования

  • Проверка, что в Python-пакет, опубликованный в PyPI, вошли все тесты и файлы данных.
  • Автоматическая проверка упаковки перед каждым коммитом в git с помощью pre-commit.
  • Исправление неполного MANIFEST.in после изменения структуры проекта.

Быстрый старт

  1. 1

    Установите check-manifest из PyPI

    pip install check-manifest
  2. 2

    Перейдите в каталог исходного кода пакета Python

    cd ~/src/mygreatpackage
  3. 3

    Запустите check-manifest, чтобы сравнить файлы под контролем версий с sdist

    check-manifest

Темы

Частые вопросы

Что такое check-manifest?
CLI-инструмент, который проверяет, включены ли все файлы под контролем версий в sdist Python-пакета, и может обновить MANIFEST.in, чтобы добавить недостающие файлы. check-manifest — CLI-инструмент для авторов Python-пакетов. Он сравнивает файлы под контролем версий (например, в git или Mercurial) с содержимым собранного исходного дистрибутива (sdist) и сообщает, каких файлов в пакете не хватает. Так можно обнаружить распространённую ошибку при сборке пакета: тесты, конфигурационные файлы или данные не попали в релиз, опубликованный в Python Package Index.
check-manifest можно использовать бесплатно? Какая у него лицензия?
check-manifest распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
check-manifest всё ещё поддерживается?
Активно поддерживается. Последний коммит в check-manifest — 18 окт. 2026 г..
Для чего можно использовать check-manifest?
Проверка, что в Python-пакет, опубликованный в PyPI, вошли все тесты и файлы данных. Автоматическая проверка упаковки перед каждым коммитом в git с помощью pre-commit. Исправление неполного MANIFEST.in после изменения структуры проекта.
Как установить check-manifest?
Установите check-manifest из PyPI: pip install check-manifest Перейдите в каталог исходного кода пакета Python: cd ~/src/mygreatpackage Запустите check-manifest, чтобы сравнить файлы под контролем версий с sdist: check-manifest
Где скачать check-manifest?
Исходный код и инструкции по установке — на GitHub: https://github.com/mgedmin/check-manifest

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты