check-manifest
¶
check-manifest ist ein Werkzeug, mit dem
ihr schnell überprüfen könnt, ob die Datei Manifest.in
für Python-Pakete
vollständig ist.
Installation¶
$ pipenv install check-manifest
Überprüfen¶
$ cd /path/to/MANIFEST.in
$ pipenv run check-manifest
oder für eine automatische Aktualisierung
$ pipenv run check-manifest -uv
listing source files under version control: 6 files and directories
building an sdist: check-manifest-0.7.tar.gz: 4 files and directories
lists of files in version control and sdist do not match!
missing from sdist:
tests.py
tox.ini
suggested MANIFEST.in rules:
include *.py
include tox.ini
updating MANIFEST.in
$ cat MANIFEST.in
include *.rst
# added by check_manifest.py
include *.py
include tox.ini
Konfiguration¶
Ihr könnt check-manifest
so konfigurieren, dass bestimmte Dateimuster
ignoriert werden, indem ihr einen Abschnitt [tool.check-manifest]
in eurer
pyproject.toml
-Datei oder einen Abschnitt [check-manifest]
in eurer
setup.cfg
oder tox.ini
-Datei anlegt, z.B.:
[tool.check-manifest]
ignore = [".travis.yml"]
# setup.cfg or tox.ini
[check-manifest]
ignore =
.travis.yml
check-manifest
kennt die folgenden Optionen:
ignore
Eine Liste von Dateinamenmustern, die von
check-manifest
ignoriert werden. Verwendet diese Option, wenn ihr Dateien in eurem Versionskontrollsystem behalten möchtet, die nicht in eurem Quelldistributionen enthalten sein sollen. Die Standardliste ist:PKG-INFO * .egg-info * .egg-info / * setup.cfg .hgtags .hgsigs .hgignore .gitignore .bzrignore .gitattributes .github / * .travis.yml Jenkinsfile * .mo
ignore-default-rules
wenn
true
, dann ersetzen deineignore
-Angaben die Standardliste, anstatt sie zu ergänzen.ignore-bad-ideas
Eine Liste von Dateinamenmustern, de von der Prüfung der generierten Dateien ignoriert werden. Damit könnt ihr generierte Dateien in eurem Versionskontrollsystem behalten, auch wenn dies üblicherweise eine schlechte Idee ist.
Integration in die Versionskontrolle¶
Mit pre-commit-Framework kann check-manifest Teil eures Git-Workflows sein. Fügt hierfür eurer .pre-commit-config.yaml-Datei folgendes hinzu:
repos:
- repo: https://github.com/mgedmin/check-manifest
rev: "0.39"
hooks:
- id: check-manifest