Skip to main content

clang-include-cleaner

PyPI part of cpp-linter

A Python wheel of clang-include-cleaner, the LLVM-based tool that finds unused and missing #include directives in C++ source files.

Website · Get started · Discussions

Quick start

pip install clang-include-cleaner

The wheel bundles the clang-include-cleaner binary and the clang builtin headers; no LLVM installation is required on the host machine.

Verify:

clang-include-cleaner --version

Usage

clang-include-cleaner reads the compile commands from a compile_commands.json. Point -p at the directory that holds it, for example build/ after cmake -B build -DCMAKE_EXPORT_COMPILE_COMMANDS=ON:

clang-include-cleaner -p build --print=changes src/main.cpp
- <vector> @Line:2
  • - lines are includes the file does not use. + lines are headers the file uses but only includes indirectly.
  • --edit applies the changes to the file. Without --print, --edit or --html, the tool prints nothing. --print and --html take a single source file.
  • On macOS, set SDKROOT=$(xcrun --show-sdk-path) if the compile commands have no -isysroot and standard headers such as <string> are not found.

Run clang-include-cleaner --help to see all available options. The clang-tidy check misc-include-cleaner runs the same analysis.

Supported versions

  • PyPI has wheels for LLVM 22. pip install clang-include-cleaner installs the newest.
  • Wheels exist for Linux (x86-64, x86, ARM64 and ARMv7 with glibc; x86-64, x86 and ARMv7 with musl), macOS (x86-64 and ARM64) and Windows (x86-64 and x86). On other platforms pip builds the source distribution, which downloads and compiles LLVM.
  • For other LLVM versions, the static binaries include clang-include-cleaner for LLVM 18 to 23.

Contributing

See CONTRIBUTING.md for development setup, build instructions, and the release process, and use GitHub issues for bug reports and feature requests.

License

This project is licensed under the Apache License 2.0 - see LICENSE.md for details. The clang-include-cleaner binary bundled in the wheels is part of the LLVM Project and is licensed under the Apache License 2.0 with LLVM Exceptions.

Metadata

Release files for clang-include-cleaner 23.1.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for clang-include-cleaner 23.1.4
File Size Uploaded Provenance Actions
clang_include_cleaner-23.1.4.tar.gz 12.6 kB With provenance Details for clang_include_cleaner-23.1.4.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for clang-include-cleaner 23.1.4
File Actions
clang_include_cleaner-23.1.4-py2.py3-none-win_amd64.whl Python 2, Python 3 none Windows x86-64 Details for clang_include_cleaner-23.1.4-py2.py3-none-win_amd64.whl
clang_include_cleaner-23.1.4-py2.py3-none-win32.whl Python 2, Python 3 none Windows x86-32 Details for clang_include_cleaner-23.1.4-py2.py3-none-win32.whl
clang_include_cleaner-23.1.4-py2.py3-none-musllinux_1_2_x86_64.whl Python 2, Python 3 none Linux musl 1.2+ x86-64 Details for clang_include_cleaner-23.1.4-py2.py3-none-musllinux_1_2_x86_64.whl
clang_include_cleaner-23.1.4-py2.py3-none-musllinux_1_2_i686.whl Python 2, Python 3 none Linux musl 1.2+ x86-32 Details for clang_include_cleaner-23.1.4-py2.py3-none-musllinux_1_2_i686.whl
clang_include_cleaner-23.1.4-py2.py3-none-musllinux_1_2_armv7l.whl Python 3, Python 2 none Linux musl 1.2+ ARMv7l Details for clang_include_cleaner-23.1.4-py2.py3-none-musllinux_1_2_armv7l.whl
clang_include_cleaner-23.1.4-py2.py3-none-manylinux_2_31_armv7l.whl Python 2, Python 3 none Linux glibc 2.31+ ARMv7l Details for clang_include_cleaner-23.1.4-py2.py3-none-manylinux_2_31_armv7l.whl
clang_include_cleaner-23.1.4-py2.py3-none-manylinux_2_28_i686.whl Python 3, Python 2 none Linux glibc 2.28+ x86-32 Details for clang_include_cleaner-23.1.4-py2.py3-none-manylinux_2_28_i686.whl
clang_include_cleaner-23.1.4-py2.py3-none-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl Python 3, Python 2 none Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details for clang_include_cleaner-23.1.4-py2.py3-none-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
clang_include_cleaner-23.1.4-py2.py3-none-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl Python 2, Python 3 none Linux glibc 2.28+ ARM64, Linux glibc 2.26+ ARM64 Details for clang_include_cleaner-23.1.4-py2.py3-none-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
clang_include_cleaner-23.1.4-py2.py3-none-macosx_11_0_arm64.whl Python 2, Python 3 none macOS 11.0+ ARM64 Details for clang_include_cleaner-23.1.4-py2.py3-none-macosx_11_0_arm64.whl
clang_include_cleaner-23.1.4-py2.py3-none-macosx_10_9_x86_64.whl Python 2, Python 3 none macOS 10.9+ x86-64 Details for clang_include_cleaner-23.1.4-py2.py3-none-macosx_10_9_x86_64.whl

Total release size: 194.6 MB

Release files / clang_include_cleaner-23.1.4.tar.gz

Download URL clang_include_cleaner-23.1.4.tar.gz
Size 12.6 kB
Tags Source
SHA-256 checksum
How to use checksums
d7ef9e5b1a5e3c1bb6925bd1b391d3bedb12023e517981e12da852c9bba9e07e
BLAKE2b-256 checksum
How to use checksums
5fbdbda7fcb899d4aa25e316e5641de78504419bf771811dda99cf80d6dbc872
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 1, 2026.

Transparency log

Release files / clang_include_cleaner-23.1.4-py2.py3-none-win_amd64.whl

Download URL clang_include_cleaner-23.1.4-py2.py3-none-win_amd64.whl
Size 14.5 MB
Tags Python 2 Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
c1a1fc2406d6d7d79a49dd5f0d71e51f2499586370d272fbb1f6519caba71088
BLAKE2b-256 checksum
How to use checksums
1ec6dad0211f0229deb55614489e7c69f5e895d59d6876a19faca6a6ec165174
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 1, 2026.

Transparency log

Release files / clang_include_cleaner-23.1.4-py2.py3-none-win32.whl

Download URL clang_include_cleaner-23.1.4-py2.py3-none-win32.whl
Size 12.4 MB
Tags Python 2 Python 3 Windows x86-32
SHA-256 checksum
How to use checksums
2a8e78b512dc2f02e8959b008c021a31fb8e9696da6b8cd4b84e25c2e942fd2e
BLAKE2b-256 checksum
How to use checksums
788cb17c30e00d9276593a68b6af54ddfd8ef579f255b6668cdcccc8a1b07201
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 1, 2026.

Transparency log

Release files / clang_include_cleaner-23.1.4-py2.py3-none-musllinux_1_2_x86_64.whl

Download URL clang_include_cleaner-23.1.4-py2.py3-none-musllinux_1_2_x86_64.whl
Size 21.1 MB
Tags Linux musl 1.2+ x86-64 Python 2 Python 3
SHA-256 checksum
How to use checksums
9f99bbbd0c3c0c9bb69e37aa5f9e67fe07e16d703ea3094c8016e4b8442f7b3c
BLAKE2b-256 checksum
How to use checksums
97cbc995041cbea270b7fa2f3693aaa69f3067255bda7ca0f1a886cc6d0db10b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 1, 2026.

Transparency log

Release files / clang_include_cleaner-23.1.4-py2.py3-none-musllinux_1_2_i686.whl

Download URL clang_include_cleaner-23.1.4-py2.py3-none-musllinux_1_2_i686.whl
Size 23.6 MB
Tags Linux musl 1.2+ x86-32 Python 2 Python 3
SHA-256 checksum
How to use checksums
19e6cd601d118ed3dd4f984ad5f022958bc888f87bafcf26e80d892089ae67e6
BLAKE2b-256 checksum
How to use checksums
cc3af73829f85490007ba5fa1cdd3c8ed0e5e25c4831d165d4716b8a9710194d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 1, 2026.

Transparency log

Release files / clang_include_cleaner-23.1.4-py2.py3-none-musllinux_1_2_armv7l.whl

Download URL clang_include_cleaner-23.1.4-py2.py3-none-musllinux_1_2_armv7l.whl
Size 18.2 MB
Tags Linux musl 1.2+ ARMv7l Python 2 Python 3
SHA-256 checksum
How to use checksums
44ef23c3b3693abc6c51bf2c5b129d133aa08b2ed99f48f003918ded2f936846
BLAKE2b-256 checksum
How to use checksums
4fcfb6e674743fef2874f9642e978b5285b108f113f6b756e33822c86de998bf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 1, 2026.

Transparency log

Release files / clang_include_cleaner-23.1.4-py2.py3-none-manylinux_2_31_armv7l.whl

Download URL clang_include_cleaner-23.1.4-py2.py3-none-manylinux_2_31_armv7l.whl
Size 17.0 MB
Tags Linux glibc 2.31+ ARMv7l Python 2 Python 3
SHA-256 checksum
How to use checksums
a0fe582ad6de251e0de9bf6e4e5571878fbbb8af2a68a7fe4d2f31dcbcaad34c
BLAKE2b-256 checksum
How to use checksums
5b9569d7ce798727da61c7d26b96f57757d4416f28f6037a7f11fcfc1bdd2be1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 1, 2026.

Transparency log

Release files / clang_include_cleaner-23.1.4-py2.py3-none-manylinux_2_28_i686.whl

Download URL clang_include_cleaner-23.1.4-py2.py3-none-manylinux_2_28_i686.whl
Size 21.9 MB
Tags Linux glibc 2.28+ x86-32 Python 2 Python 3
SHA-256 checksum
How to use checksums
178d4ee0a9da536b66f8f53bb226f37047ea0dc4dcf53bf4822511dd4b3584b7
BLAKE2b-256 checksum
How to use checksums
c5830ec65a061129a1d00af91cbefb4f3c1ec97ad681439f4da9237f9967eb48
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 1, 2026.

Transparency log

Release files / clang_include_cleaner-23.1.4-py2.py3-none-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL clang_include_cleaner-23.1.4-py2.py3-none-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 19.1 MB
Tags Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 Python 2 Python 3
SHA-256 checksum
How to use checksums
0b92868a62fd3b4a6005ea1c59af9d66825138ad0bd69a7c72043534a1c0c432
BLAKE2b-256 checksum
How to use checksums
2c84da23c8e64f9c9b810baa4ad15e4b9e5aa2487f275f06f408ea123b356c9f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 1, 2026.

Transparency log

Release files / clang_include_cleaner-23.1.4-py2.py3-none-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL clang_include_cleaner-23.1.4-py2.py3-none-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 18.1 MB
Tags Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 Python 2 Python 3
SHA-256 checksum
How to use checksums
24fd13fd0a7e6083cc5f08767c8d85aa2481922bd493e33a228306ab275ecc02
BLAKE2b-256 checksum
How to use checksums
0bce112c416f809d06b8826fa85fca12ef664aeebd14df7dc4c466721a903726
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 1, 2026.

Transparency log

Release files / clang_include_cleaner-23.1.4-py2.py3-none-macosx_11_0_arm64.whl

Download URL clang_include_cleaner-23.1.4-py2.py3-none-macosx_11_0_arm64.whl
Size 14.0 MB
Tags Python 2 Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
be4d27b91b510072e1b0d25fe5fdd136b708e36ae51478563aa6675b28146201
BLAKE2b-256 checksum
How to use checksums
d83310f77386983dc460ec9f1e0a96dea3796f89b54b88a7da66a3585aa49dad
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 1, 2026.

Transparency log

Release files / clang_include_cleaner-23.1.4-py2.py3-none-macosx_10_9_x86_64.whl

Download URL clang_include_cleaner-23.1.4-py2.py3-none-macosx_10_9_x86_64.whl
Size 14.6 MB
Tags Python 2 Python 3 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
83ee0e8ca39b7d9fc0902b612d205164eb318349123236fe4e8d7303c26358a9
BLAKE2b-256 checksum
How to use checksums
d2d3a62a575b1149f1afcb4ad26cccc676c77b3b36670df3769557255f533fd2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 1, 2026.

Transparency log

Security for clang-include-cleaner 23.1.4

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 12 files in this release have been uploaded with provenance metadata.

Select from 12 files

Attestation for clang_include_cleaner-23.1.4.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 1, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

23.1.4 This release

12 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page