Skip to content

fix(ai): raise dep floors to first releases with Python 3.14 wheels - #2

Merged
KKingZero merged 1 commit into
mainfrom
fix/py314-requirements-wheels
Jun 17, 2026
Merged

fix(ai): raise dep floors to first releases with Python 3.14 wheels#2
KKingZero merged 1 commit into
mainfrom
fix/py314-requirements-wheels

Conversation

@KKingZero

Copy link
Copy Markdown
Owner

Problem

zypheron install-deps fails on Arch (Python 3.14). Seven deps used three-part ~=X.Y.0 pins that lock the minor below the first release shipping cp314 wheels, so pip built them from source — numpy 1.26 then crashed on import (SIGILL), aborting install.

Fix

Raise floors to first wheel-bearing releases. Verified resolvable + importable in a clean 3.14 venv.

pkg was now
numpy ~=1.26.0 ~=2.2
pandas ~=2.2.0 ~=2.3 (held <3, avoid 3.0 break)
scikit-learn ~=1.6.0 ~=1.7
matplotlib ~=3.9.0 ~=3.10
pyzmq ~=26.2.0 ~=27.0
pydantic ~=2.10.0 ~=2.11
aiohttp ~=3.11.0 ~=3.12

Safety

Only ml/vulnerability_predictor.py uses these (numpy basics + sklearn RandomForestClassifier/TfidfVectorizer); APIs stable across the bumps. pandas not imported in app code.

🤖 Generated with Claude Code

numpy/pandas/scikit-learn/matplotlib/pyzmq/pydantic/aiohttp used three-part
`~=X.Y.0` pins that locked the minor below the first release shipping cp314
wheels. On Python 3.14 (Arch) pip fell back to building these from source;
numpy 1.26 crashed on import (SIGILL), failing `zypheron install-deps`.

Bumps (verified resolvable + importable in a clean 3.14 venv):
  numpy        1.26 -> ~=2.2   (2.4.6)
  pandas       2.2  -> ~=2.3   (2.3.3, held <3 to avoid pandas 3.0 API break)
  scikit-learn 1.6  -> ~=1.7   (1.9.0)
  matplotlib   3.9  -> ~=3.10  (3.11.0)
  pyzmq        26.2 -> ~=27.0  (27.1.0)
  pydantic     2.10 -> ~=2.11  (2.13.4; 2.10 pinned pydantic-core 2.27, no wheel)
  aiohttp      3.11 -> ~=3.12  (3.14.1)

Only ml/vulnerability_predictor.py uses these (numpy basics + sklearn);
APIs stable across the bumps.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@KKingZero
KKingZero merged commit 9b0e981 into main Jun 17, 2026
3 of 10 checks passed
@KKingZero
KKingZero deleted the fix/py314-requirements-wheels branch June 17, 2026 16:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant