Automic VaultAutomic Vault

brew

Installer include-what-you-use avec Homebrew, apk, MacPorts, Nix, zypper, dnf

Consultez les chemins d'installation, exécutables, métadonnées et notes de sécurité de include-what-you-use pour les workflows d'agents IA.

installation

Commandes d'installation supplémentaires

macOS

Homebrewvérifié · 100%
brew install include-what-you-use

local Homebrew formula metadata

MacPortsvérifié · 94%
sudo port install include-what-you-use

MacPorts ports tree · devel/include-what-you-use/Portfile · Source: api.github.com

Linux

Alpine Linux apkvérifié · 92%
sudo apk add include-what-you-use

Alpine Linux edge package indexes · include-what-you-use · Source: dl-cdn.alpinelinux.org

Nixvérifié · 92%
nix profile install nixpkgs#include-what-you-use

nixpkgs package indexes · include-what-you-use · Source: raw.githubusercontent.com

openSUSE zyppervérifié · 92%
sudo zypper install include-what-you-use

openSUSE Tumbleweed package metadata · include-what-you-use · Source: download.opensuse.org

Fedora dnfvérifié · 92%
sudo dnf install iwyu

Fedora Rawhide package metadata · iwyu · Source: dl.fedoraproject.org

aperçu

Résumé du paquet

Tool to analyze #includes in C and C++ source files

Commandes et alias

  • fix_includes.py
  • include-what-you-use
  • iwyu_tool.py

historique

Historique du projet et usages

Include What You Use, often abbreviated IWYU, is a Clang-based C and C++ include analyzer. It tells developers which headers a source file should include directly and which includes can be removed or replaced with forward declarations.

Historique du projet

The project site announced a very-alpha 0.1 release in February 2011 and described an open-source release-early approach after Google-internal origins. Early releases tracked specific LLVM and Clang versions because IWYU depends heavily on Clang internals.

The release notes show a steady pattern: each IWYU release follows an LLVM/Clang line, updates mappings, and improves analysis of C, C++, templates, standard-library headers, and platform-specific headers. Version 0.5 in December 2015 marked migration to GitHub, updated documentation, improved testing infrastructure, and added Boost and Qt mappings.

Historique d'adoption

IWYU spread through C++ build culture because include hygiene directly affects compile time, rebuild fan-out, and refactoring safety. The official documentation explicitly frames the tool around large codebases, where transitive includes make it hard to remove dependencies safely.

Package-manager metadata in this batch lists Homebrew, Alpine, Fedora, MacPorts, Nix, and openSUSE packaging. That is a good fit for a compiler-adjacent developer tool: users install a binary matching their Clang generation and wire it into compilation databases, CMake workflows, CI, or local cleanup scripts.

Modes d'utilisation

IWYU is usually run against source files with the same compilation information used by Clang. The companion iwyu_tool.py works with compilation databases, and fix_includes.py can apply suggested include edits.

Its output is used during dependency cleanup, code-review preparation, CI checks, and large refactors where accidental reliance on another file's transitive include would otherwise hide missing direct dependencies.

Pourquoi les passionnés de paquets s'y intéressent

For package nerds, IWYU is significant because it turns a style rule into a compiler-backed CLI. It also illustrates a packaging challenge common to LLVM ecosystem tools: the useful binary has to stay aligned with Clang internals and therefore tends to move in lockstep with compiler releases.

It matters beyond neatness. Header dependency cleanup can shorten builds, reduce needless rebuilds, and make C++ packages less fragile when upstream headers change.

Chronologie

  • 2011: IWYU 0.1 announced as a very-alpha open-source release.
  • 2011: Clang 2.9 and 3.0 compatible tarballs published.
  • 2014: Clang 3.4 and 3.5 compatible releases published; rudimentary C support added in the 3.5-era release.
  • 2015: IWYU 0.5 migrated to GitHub and added Boost and Qt mappings.
  • 2019: Release notes stated that binary releases would no longer be produced and pointed users to maintained packages.
  • 2026: IWYU 0.26 released for LLVM and Clang 22.

Related projects

  • LLVM and Clang are the compiler infrastructure IWYU builds on.
  • fix_includes.py and iwyu_tool.py are companion tools shipped by the project.
  • CMake compilation databases, clang-tidy, and C++ include-order or dependency-cleanup workflows are adjacent developer-tooling surfaces.

posture de sécurité

Niveau de risque : vert

narrow executable package without higher-risk signals.

Classificateur de risque

risque vert · confiance faible · appliance

Pourquoi

  • narrow executable package without higher-risk signals

Signaux

  • metadata:no-higher-risk-signals

Comportement d'installation

  • Aucun hook post-install Homebrew n’est enregistré dans les métadonnées de formule.
  • Les métadonnées de bottle Homebrew sont disponibles pour 6 plateformes.
  • S’installe avec 1 dépendances d’exécution.
  • Les métadonnées de compilation listent 1 dépendances de compilation.

Revue recommandée

Avant une utilisation sans surveillance par un agent, vérifiez si l'outil lit des identifiants en clair, écrit un état distant, publie des artefacts ou lance des plugins.

exécutables

Exécutables installés

CommandeTypeExpositionNote
fix_includes.pycliexécutable global
include-what-you-usecliexécutable global
iwyu_tool.pycliexécutable global

fraîcheur

Version et fraîcheur

Ces signaux séparent l'âge de génération de la page, l'activité du gestionnaire de paquets et la comparaison avec les versions amont. Un retard de version n'est signalé que lorsqu'une URL de preuve et des versions comparables sont présentes.

page générée2026-07-25
version du gestionnaire0.26
gestionnaire mis à jour
données localesOK
amontnot checked
dernière version détectéenon détecté

https://include-what-you-use.org/

  • infoNo package-manager update timestamp was available.confiance faible
  • infoRelease/tag comparison is only available for GitHub repositories.https://include-what-you-use.org/confiance none

métadonnées d'installation

Métadonnées du paquet

Clé du paquetbrew:include-what-you-use
Version0.26
Gestionnaire de paquetsHomebrew
Page du gestionnaire de paquetshttps://formulae.brew.sh/formula/include-what-you-use
Page d'accueilhttps://include-what-you-use.org/
Dépôthttps://github.com/include-what-you-use/include-what-you-use
Docs amonthttps://github.com/include-what-you-use/include-what-you-use#readme
LicenceNCSA
Archive sourcehttps://include-what-you-use.org/downloads/include-what-you-use-0.26.src.tar.gz
Dépendancesllvm
Dépendances de compilationcmake
Bibliothèques fournies par macOSncurses
Bouteilledisponible (sur arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux)
post-install Homebrewnon défini
Serviceaucun déclaré

faits du registre

Détails de la base source

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Nameinclude-what-you-use
Aliases
  • iwyu
Version Scheme0
Revision0
Head VersionHEAD
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • head
  • stable

correspondances dans les bases sources

Autres enregistrements de gestionnaires de paquets

Les correspondances proviennent d’index externes de gestionnaires de paquets et restent séparées des liens de paquets Automic Vault locaux.

Nix95%

include-what-you-use

nix profile install nixpkgs#include-what-you-use
  • normalized package name match
  • Correspondance par : Include What You Use
nixpkgs package indexes · raw.githubusercontent.com · nixpkgs package indexes: include-what-you-use from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/all-packages.nix
apk95%

include-what-you-use 0.26-r0

A tool for use with clang to analyze #includes in C and C++ source files

https://include-what-you-use.org

sudo apk add include-what-you-use
  • License: NCSA
  • Architecture: x86_64
  • Source Package: include-what-you-use
  • 1 Dépendances
  • 1 fournit
  • normalized package name match
  • Correspondance par : Include What You Use
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: include-what-you-use from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

include-what-you-use-dbg 0.26-r0

A tool for use with clang to analyze #includes in C and C++ source files (debug symbols)

https://include-what-you-use.org

sudo apk add include-what-you-use-dbg
  • License: NCSA
  • Architecture: x86_64
  • Source Package: include-what-you-use
  • 1 Dépendances
  • normalized package name match
  • Correspondance par : Include What You Use
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: include-what-you-use-dbg from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

include-what-you-use-doc 0.26-r0

A tool for use with clang to analyze #includes in C and C++ source files (documentation)

https://include-what-you-use.org

sudo apk add include-what-you-use-doc
  • License: NCSA
  • Architecture: x86_64
  • Source Package: include-what-you-use
  • normalized package name match
  • Correspondance par : Include What You Use
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: include-what-you-use-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
dnf95%

iwyu 0.26-3.fc45

C/C++ source files #include analyzer based on clang

https://github.com/include-what-you-use/include-what-you-use

sudo dnf install iwyu
  • License: NCSA
  • Category: Unspecified
  • Architecture: x86_64
  • Source Package: iwyu
  • 6 Dépendances
  • 2 fournit
  • normalized package name match
  • Correspondance par : Include What You Use
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: iwyu from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst
zypper95%

include-what-you-use 0.26-1.2

A tool to analyze #includes in C and C++ source files

https://include-what-you-use.org/

sudo zypper install include-what-you-use
  • License: NCSA
  • Category: Development/Languages/C and C++
  • Architecture: x86_64
  • Source Package: include-what-you-use
  • 4 Dépendances
  • 1 fournit
  • normalized package name match
  • Correspondance par : Include What You Use
openSUSE Tumbleweed package metadata · download.opensuse.org · openSUSE Tumbleweed package metadata: include-what-you-use from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst
zypper95%

include-what-you-use-tools 0.26-1.2

Additional tools to use include-what-you-use effectively

https://include-what-you-use.org/

sudo zypper install include-what-you-use-tools
  • License: NCSA
  • Category: Development/Languages/C and C++
  • Architecture: noarch
  • Source Package: include-what-you-use
  • 2 Dépendances
  • 1 fournit
  • normalized package name match
  • Correspondance par : Include What You Use
openSUSE Tumbleweed package metadata · download.opensuse.org · openSUSE Tumbleweed package metadata: include-what-you-use-tools from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst
MacPorts95%

include-what-you-use

sudo port install include-what-you-use
  • normalized package name match
  • Correspondance par : Include What You Use
MacPorts ports tree · api.github.com · MacPorts ports tree: devel/include-what-you-use/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

piste source

Généré depuis les données du dépôt

Cette page est servie par av-web depuis l'artéfact SQLite privé des paquets généré par scripts/generate-pkg-sqlite.py.

Sources utilisées

  • Geiger risk classifier
  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment