abicheck v0.1.0
First public release of abicheck — a modern, Python-native ABI compatibility checker for C/C++ shared libraries.
Highlights
- Multi-tier detection: castxml (header AST) + ELF symbol table + DWARF debug info
- 85 ChangeKinds across BREAKING / API_BREAK / COMPATIBLE severity tiers
- 100% ABICC parity for 55 documented ABI break scenarios
- ABICC drop-in CLI: accepts all major
abi-compliance-checkerflags - Policy system: built-in profiles (
strict_abi,sdk_vendor,plugin_abi) + YAML overrides - COMPATIBLE_WITH_RISK verdict: deployment-risk changes (e.g. new GLIBC version requirements) reported separately from binary breaks
- Reports: Markdown, JSON, SARIF, HTML
Installation
git clone https://github.com/napetrov/abicheck
pip install -e ".[dev]"
# also requires: apt install castxmlQuick start
abicheck dump libfoo.so.1 --version 1.0 -H include/foo.h -o old.json
abicheck dump libfoo.so.2 --version 2.0 -H include/foo.h -o new.json
abicheck compare old.json new.jsonSee CHANGELOG.md for the full list of features and changes.