check-wheel-contents
Check your wheels have the right contents
What it is and what it does
check-wheel-contents is a command-line linter that inspects wheel archives for common packaging mistakes before they reach PyPI. It detects issues like compiled bytecode files (.pyc/.pyo), cache directories, test files, and mismatched top-level module declarations—problems that are easy to miss during manual review but break installations or bloat packages for end users.
The tool works by analyzing wheel contents against a configurable set of checks, each identified by a code (W001, W002, etc.). You point it at one or more wheels or directories, and it reports failures with specific file paths and guidance on fixes. Configuration can be read from pyproject.toml, setup.cfg, tox.ini, or a dedicated config file, allowing integration into build pipelines and project workflows.
Use it for:
- Pre-upload validation in CI/CD to catch wheel defects before publishing to PyPI
- Local wheel inspection during development to verify packaging setup is correct
- Batch checking of wheels in a monorepo or multi-package project
- Enforcing consistent wheel structure across a team or organization
- Debugging why a published wheel contains unexpected files or missing modules
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Validates wheel file contents before publishing, detecting common packaging errors like bytecode files, cache directories, and missing or unexpected top-level modules.
Yes. This is a focused, well-maintained tool that solves a real problem in Python packaging—preventing subtle but common mistakes from reaching production. Low install friction, permissive license, no security vulnerabilities, and active maintenance make it a safe addition to any packaging workflow. Install it if you publish wheels to PyPI or maintain strict wheel quality standards.
Install
check-wheel-contents on PyPI
pip
pip install check-wheel-contentsuv
uv add check-wheel-contentspoetry
poetry add check-wheel-contentsInstalling check-wheel-contents
Before you install
Low install friction with seven straightforward dependencies. Actively maintained with recent commits; last release was 377 days ago and the repository shows ongoing activity.
License in practice
MIT license permits free use, modification, and distribution with minimal restrictions, making it suitable for both open-source and commercial projects.
Quickstart
pip install check-wheel-contents
check-wheel-contents path/to/wheel.whl
# With configuration file:
check-wheel-contents --config pyproject.toml path/to/wheel.whl
Requires Python 3.10 or higher.
Verify before relying
- Whether the tool integrates with common CI/CD platforms or build systems beyond manual invocation
- Performance characteristics when checking large numbers of wheels or very large wheel files
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 7 — attrs, backports-cached-property, click, packaging, pydantic, tomli, wheel-filename |
| Maintenance | actively maintained — 377 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 500,965/month — #6,318 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: check_wheel_contents-0.6.3-py3-none-any.whl
Keywords: linter, packaging, wheel
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
check-manifestValidates that a Python package's MANIFEST.in…
permissive · top 5,000 on PyPI
pyc-wheelCompiles all Python source files (.py) in a…
permissive · top 15,000 on PyPI
change-wheel-versionModifies the version metadata in an…
unclear · top 15,000 on PyPI
gitmatchGitmatch implements gitignore-style pattern…
permissive · top 15,000 on PyPI
pycleanRemoves Python bytecode files (.pyc) and…
copyleft · top 15,000 on PyPI
wheelA command-line tool for inspecting, converting,…
permissive · top 100 on PyPI
auditwheelAudits and repairs Linux and Android wheel…
permissive · top 5,000 on PyPI
yamllintyamllint checks YAML files for syntax errors,…
copyleft · top 1,000 on PyPI
editablesEditables is a library for building wheels that…
permissive · top 1,000 on PyPI
slipcoverSlipCover is a fast code coverage tool that…
permissive · top 15,000 on PyPI