Skip to content

v1.0.1 — Fix PYTHON_ABI_MISMATCH false positives

Choose a tag to compare

@po-nuvai po-nuvai released this 19 Jul 14:41

What's fixed

PYTHON_ABI_MISMATCH false positives on all C-extension packages.

The PythonProbe was returning the raw sysconfig.SOABI string (e.g. cpython-312-x86_64-linux-gnu) as the system ABI tag, but wheel WHEEL metadata uses PEP 425 tags (e.g. cp312). Direct string comparison flagged every real C-extension wheel as CRITICAL on healthy environments — dropping the health score by ~40 points and burying real findings under noise.

The probe now returns the PEP 425 wheel-style tag: cp312, cp312d for debug builds, pypy39_pp73 for PyPy, etc. — matching the namespace used by real wheels.

Impact

  • Healthy environments: 53/100 → 91/100 health score
  • Real findings (manylinux tag inconsistencies, missing deps) no longer buried under false-positive noise

Install

pipx install pybinaryguard
# or (inside a venv)
pip install pybinaryguard

PyPI: https://pypi.org/project/pybinaryguard/1.0.1/

Full changelog: CHANGELOG.md


Created by Pothihai Selvan (@po-nuvai) — Applied Research Scientist at Nuvai AI Solutions