macOS
brew install expatlocal Homebrew formula metadata
sudo port install expatMacPorts ports tree · textproc/expat/Portfile · source: api.github.com
brew
XML 1.0 parser. Version 2.8.2 via Homebrew; verified 2026-06-25.
install
brew install expatlocal Homebrew formula metadata
sudo port install expatMacPorts ports tree · textproc/expat/Portfile · source: api.github.com
sudo apk add expatAlpine Linux edge package indexes · expat · source: dl-cdn.alpinelinux.org
sudo apt install expatDebian stable package indexes · expat · source: deb.debian.org
sudo dnf install expatFedora Rawhide package metadata · expat · source: dl.fedoraproject.org
nix profile install nixpkgs#expatnixpkgs package indexes · pkgs/by-name/ex/expat/package.nix · source: api.github.com
sudo pacman -S expatArch Linux sync databases · expat · source: geo.mirror.pkgbuild.com
sudo zypper install expatopenSUSE Tumbleweed package metadata · expat · source: download.opensuse.org
overview
XML 1.0 parser
history
Expat is a fast streaming XML parser library written in C, with xmlwf as its command-line well-formedness checker. It is package-manager-famous because XML parsing became infrastructure, and Expat is small, MIT-licensed, embeddable, and widely shipped.
The official repository describes Expat as a C99 library for parsing XML 1.0, started by James Clark in 1997. Its model is event-oriented: users register handlers before parsing, and those handlers are called as document structures are discovered.
The project site frames Expat around streaming rather than building a full in-memory document tree. That makes it useful for files too large to fit in memory, and for applications where parser performance and flexible callbacks are more important than a high-level DOM interface.
The Expat homepage states that numerous applications, libraries, and hardware use Expat, that bindings and third-party wrappers exist, and that Expat is packaged everywhere. That breadth is the key adoption story: many users never invoke xmlwf directly, but they depend on Expat through another program or language runtime.
The repository README documents common build-system integration, including CMake find_package usage. That is a sign of mature library adoption: Expat is not just an executable in package managers, but a dependency with headers, link targets, and ABI expectations.
Developers use libexpat when they want a C XML parser that calls application-defined handlers for starts, ends, character data, and related XML structures. The included xmlwf executable is used to check whether XML input is well formed.
Because XML parsers sit at input boundaries, Expat's package history is often security-driven. The official GitHub issue tracker includes release coordination that references downstream updates in CPython, Gentoo, Spack, Homebrew, NixOS, MSYS2, and other packaging ecosystems when CVE fixes land.
Expat is a dependency-package archetype: boring when healthy, urgent when vulnerable. It is small enough to be embedded or vendored, but important enough that a security update can ripple through Python, Linux distributions, language package sets, and embedded builds.
The package also demonstrates the difference between library identity and command identity. Homebrew exposes xmlwf as the executable, while the real package value is libexpat and its headers.
security posture
No matching local secret-handling manifest was found for expat. Nucleus package metadata is still published here so future coverage has a stable package URL.
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
executables
| Command | Kind | Exposure | Note |
|---|---|---|---|
xmlwf | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
https://github.com/libexpat/libexpat
install metadata
| Package key | brew:expat |
|---|---|
| Version | 2.8.2 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/expat |
| Homepage | https://libexpat.github.io/ |
| Repository | https://github.com/libexpat/libexpat |
| Upstream docs | https://libexpat.github.io/doc |
| License | MIT |
| Source archive | https://github.com/libexpat/libexpat/releases/download/R_2_8_2/expat-2.8.2.tar.xz |
| Last updated | 2026-06-25T21:42:09Z |
| Pulse | updated |
| Bottle | available (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | expat |
| Version Scheme | 0 |
| Revision | 0 |
| Head Version | HEAD |
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | yes |
| URL Keys |
|
source database matches
Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.
expat 2.7.1-2
XML parsing C library - example application
sudo apt install expatlibexpat1 2.7.1-2
XML parsing C library - runtime library
sudo apt install libexpat1libexpat1-dev 2.7.1-2
XML parsing C library - development kit
sudo apt install libexpat1-devexpat
nix profile install nixpkgs#expatexpat 2.6.1-2build1
XML parsing C library - example application
sudo apt install expatlibexpat1 2.6.1-2build1
XML parsing C library - runtime library
sudo apt install libexpat1libexpat1-dev 2.6.1-2build1
XML parsing C library - development kit
sudo apt install libexpat1-devexpat 2.8.1-r0
XML Parser library written in C
sudo apk add expatexpat-dev 2.8.1-r0
XML Parser library written in C (development files)
sudo apk add expat-devexpat-doc 2.8.1-r0
XML Parser library written in C (documentation)
sudo apk add expat-docexpat-static 2.8.1-r0
XML Parser library written in C (static library)
sudo apk add expat-staticlibexpat 2.8.1-r0
XML Parser library written in C (libraries)
sudo apk add libexpatexpat 2.8.1-1.fc45
An XML parser library
sudo dnf install expatexpat-devel 2.8.1-1.fc45
Libraries and header files to develop applications using expat
sudo dnf install expat-develexpat-static 2.8.1-1.fc45
expat XML parser static library
sudo dnf install expat-staticexpat 2.8.1-1
An XML parser library
sudo pacman -S expatsource trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.