Repolode
mgedmin

mgedmin/check-manifest

检查 Python 包源码分发包是否漏掉版本控制中的文件,并可自动更新 MANIFEST.in。

Star
293
Fork
44
未关闭 Issue
29
最近提交
20天前

这是什么?

check-manifest 是一个面向 Python 包开发者的命令行工具。它会比对版本控制系统(如 git、Mercurial)中跟踪的文件与构建出的源码分发包(sdist)内容,找出缺失的文件。这能避免测试文件、配置文件或数据文件遗漏在上传到 PyPI 的发行版之外这类常见的打包错误。

使用更新选项时,工具会把建议的 include 规则追加到 MANIFEST.in 中,让下次构建时能包含这些文件。如果项目还没有 MANIFEST.in,它也可以自动创建。用户还可以在 pyproject.toml、setup.cfg 或 tox.ini 中配置需要忽略的文件或模式。

该工具既可以直接在终端运行,也可以作为 pre-commit 钩子使用,在每次提交前自动检查。

核心功能

  • 01将版本控制中的文件与构建出的 sdist 对比,列出缺失的文件。
  • 02可自动把建议的 include 规则追加到 MANIFEST.in。
  • 03在缺少 MANIFEST.in 时自动创建。
  • 04支持通过 pyproject.toml、setup.cfg 或 tox.ini 配置忽略的文件或模式。
  • 05可作为 pre-commit 钩子运行。

适用场景

  • 检查上传到 PyPI 的 Python 包是否包含全部测试和数据文件。
  • 通过 pre-commit 在每次 git 提交前自动运行打包检查。
  • 项目结构调整后修复不完整的 MANIFEST.in。

快速上手

  1. 1

    从 PyPI 安装 check-manifest

    pip install check-manifest
  2. 2

    进入你的 Python 包源码目录

    cd ~/src/mygreatpackage
  3. 3

    运行 check-manifest,比较版本控制中的文件与 sdist

    check-manifest

标签

常见问题

check-manifest 是什么?
检查 Python 包源码分发包是否漏掉版本控制中的文件,并可自动更新 MANIFEST.in。 check-manifest 是一个面向 Python 包开发者的命令行工具。它会比对版本控制系统(如 git、Mercurial)中跟踪的文件与构建出的源码分发包(sdist)内容,找出缺失的文件。这能避免测试文件、配置文件或数据文件遗漏在上传到 PyPI 的发行版之外这类常见的打包错误。
check-manifest 可以免费使用吗?用的什么许可证?
check-manifest 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
check-manifest 还在维护吗?
活跃维护中。check-manifest 最近一次提交是在 2026年10月18日。
check-manifest 适合用来做什么?
检查上传到 PyPI 的 Python 包是否包含全部测试和数据文件。 通过 pre-commit 在每次 git 提交前自动运行打包检查。 项目结构调整后修复不完整的 MANIFEST.in。
check-manifest 怎么安装和运行?
从 PyPI 安装 check-manifest: pip install check-manifest 进入你的 Python 包源码目录: cd ~/src/mygreatpackage 运行 check-manifest,比较版本控制中的文件与 sdist: check-manifest
在哪里获取 check-manifest?
源代码和安装说明在 GitHub 上:https://github.com/mgedmin/check-manifest

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目