Стандартный установщик пакетов Python: устанавливает пакеты из Python Package Index (PyPI) и других индексов.
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
Установите check-manifest из PyPI
pip install check-manifest - 2
Перейдите в каталог исходного кода пакета Python
cd ~/src/mygreatpackage - 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 обновляется ежедневно.
Похожие проекты
Официальный репозиторий системы сборки Setuptools — библиотеки для упаковки Python-проектов и их распространения.
Простой инструмент для сборки и публикации чисто Python-пакетов и модулей в PyPI с минимальной настройкой.
Генератор Python-проектов, который создаёт готовые к установке и публикации в PyPI пакеты с настроенными tox, pytest, документацией Sphinx и версионированием через Git.
Утилита командной строки для загрузки исходных дистрибутивов и wheel-пакетов Python в PyPI независимо от используемой системы сборки.
Black — форматтер Python-кода с заданным стилем и предсказуемым результатом, который перезаписывает файлы с минимальными diff.