v1.1.0
PFAPACK v1.1.0
Fixed
- Skew-symmetry validation was broken (#52). The input check in
pfapack/pfaffian.pytook.max()beforeabs(), so matrices violating skew-symmetry with a purely negative deviation passed silently and produced wrong Pfaffians; for complex matrices the comparison was lexicographic rather than by magnitude. All six public functions now share a correct check with a tolerance relative to the matrix scale, so very large or very small (but valid) matrices are handled properly. Matrices that are not skew-symmetric now raiseAssertionError— if this newly fires on your input, the previous versions were silently returning incorrect results for it. The bug was identified in the jjgoings/pfapack fork by Joshua Goings.
Build & CI (#53, #34)
The release pipeline was repaired after being broken for an extended period:
- Windows wheels are built with the MSYS2 MinGW64 toolchain (the previous chocolatey-installed gcc was broken).
- Linux wheels are now built on the
manylinux_2_28image. The minimum glibc rises from 2.17 to 2.28 (needed so current scipy releases install alongside pfapack). - Intel macOS wheels are now built on the
macos-15-intelrunner, since GitHub retired the macOS 13 runners. The minimum macOS version for Intel wheels rises accordingly. - sdist builds, the test matrix (Linux/macOS/Windows × Python 3.10–3.13), and various CI flakes were fixed.
Install
pip install pfapack