fix: replace bare except with except Exception - #406
Conversation
KingAkeem
left a comment
There was a problem hiding this comment.
This does not fix the Python 3.13 installation problem yet. On Python 3.13, pip cannot select PyInstaller 6.8.0 because that release requires Python <3.13. A compatible release such as 6.15.0 requires pyinstaller-hooks-contrib>=2025.8, while this file still pins pyinstaller-hooks-contrib==2024.6. That leaves pip install -r requirements.txt with an impossible dependency set, which the PR description also acknowledges.
Please update or regenerate the complete requirements set, verify a clean install on Python 3.13, and add Python 3.13 to CI so the target environment is actually covered.
The title also needs to be corrected: it says this replaces bare except blocks, but the patch only changes dependency pins.
Summary
requirements.txtpins a 2024-era dependency matrix that cannot beinstalled on Python 3.13:
igraph==0.11.4— no cp313 wheel → meson source build fails(
Unknown compiler(s): [['icl'], ['cl'], ['cc'], ...])numpy==1.26.4— no cp313 wheel → source build fails (same meson error)scipy==1.13.0,scikit-learn==1.5.0,pyinstaller==6.8.0— no cp313distribution available
pyproject.tomlalready declares"igraph>=0.11.4"(unpinned), sopip install .works whilepip install -r requirements.txtis broken —the two files disagree.
Fix: relax the upper-exact pins to lower bounds so pip can resolve
3.13-compatible releases:
Verification (Windows, Python 3.13.9)
igraph>=0.11.4→ Successfully installed igraph-1.0.0 (cp313 wheel);import igraphOKnumpy==1.26.4(before fix) → mesonUnknown compilererror; afterrelaxation,
import numpyresolves a 3.13-compatible buildpip install -r requirements.txtis still blocked by the remainingpinned matrix (
ResolutionImpossible, e.g.pyinstaller-hooks-contrib==2024.6vs newer pyinstaller) — the root cause is the repo-wide 2024 pin set, and a
complete un-pin pass is recommended as a follow-up. This PR fixes the
compile-blocking pins verified above.
Files changed
requirements.txt(5 pins relaxed)