---
name: "check-manifest"
section: "1"
platform: "linux"
package: "check-manifest"
version: "0.50-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/check-manifest"
---

# check-manifest(1)

Check a Python MANIFEST.in file for completeness

## NAME

check-manifest - Check a Python MANIFEST.in file for completeness

## SYNOPSIS

**check-manifest** \[OPTION...\] \[SOURCE TREE\]

## DESCRIPTION

**check-manifest** performs a check on a **MANIFEST.in** file from a Python project and verifies its completeness.  It can also create a **MANIFEST.in** file from scratch or append suggestions to it, and the user can also ignore certain patterns if needed.

## OPTIONS

- **-h, --help**

  Show summary of options.

- **--version**

  Show version of program.

- **-v, --verbose**

  More verbose output (default: **False**).

- **-c, --create**

  Create a **MANIFEST.in** if missing (default: **False**).

- **-u, --update**

  Append suggestions to **MANIFEST.in** (implies **--create**) (default: **False**).

- **-p PYTHON, --python PYTHON**

  Use the specified **PYTHON** interpreter when running **setup.py** **sdist** (default: **sys.executable**).

- **--ignore PATTERNS**

  Ignore files/directories matching **PATTERNS**, a comma-separated list of patterns (default: **None**).

- **--ignore-bad-ideas PATTERNS**

  Ignore bad idea files/directories matching **PATTERNS**, a comma-separated list of patterns (default: **\[\]**).

## CONFIGURATION

You can tell **check-manifest** to ignore certain file patterns by adding a **check-manifest** section to your package's **setup.cfg**.  Example:

\[check-manifest\]\
 ignore =\
     .travis.yml

The following options are recognized:

- **ignore**

  A list of newline separated filename patterns that will be ignored by **check-manifest**.  Use this if you want to keep files in your version control system that shouldn't be included in your source distributions.  The default ignore list is

  PKG-INFO\
   \*.egg-info\
   \*.egg-info/\*\
   setup.cfg\
   \\.hgtags\
   \\.hgsigs\
   \\.hgignore\
   \\.gitignore\
   \\.bzrignore\
   \\.gitattributes\
   \\.travis.yml\
   Jenkinsfile\
   \*.mo

- **ignore-default-rules**

  If set to **true**, your **ignore** patterns will replace the default ignore list instead of adding to it.

- **ignore-bad-ideas**

  A list of newline separated filename patterns that will be ignored by **check-manifest**'s generated files check.  Use this if you want to keep generated files in your version control system, even though it is generally a bad idea.

## REPORTING BUGS

Please report bugs using the Debian BTS \<https://bugs.debian.org\>.

## AUTHOR

**check-manifest** is copyright (C) 2013 Marius Gedminas and contributors.

This manual page was written by Sergio Durigan Junior \<sergiodj@sergiodj.net\> based on the project's **README.rst** for the Debian GNU/Linux system, but may be used by others.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
