Release notes for PyTables 3.10 series¶
- Author:
PyTables Developers
- Contact:
Changes from 3.10.1 to 3.10.0¶
Bugfixes¶
Improvements¶
Enforce numpy >= 2 as build constraint (see discussion in gh-1200).
Use tuple of plain ints for chunk info coordinates. Thanks to Ivan Vilata-i-Balaguer.
Enable faulthandler in tables.tests.test_all. Thanks to Eric Larson.
Changes from 3.10.0 to 3.9.2¶
New features¶
New direct chunking API which allows access to raw chunk data skipping the HDF5 filter pipeline (cutting overhead, see “Optimization tips” in User’s Guide), as well as querying chunk information (gh-1187). Thanks to Ivan Vilata and Francesc Alted. This development was funded by a NumFOCUS grant.
Improvements¶
This release is finally compatible with NumPy 2, with wheels being built against it so that they are still binary-compatible with NumPy 1 installations (gh-1176, gh-1183, gh-1184, gh-1192, gh-1195, gh-1160, gh-1172, gh-1185). NumPy >= 1.20 is required now. Thanks to Antonio Valentino, Maximilian Linhoff and Eric Larson.
Fix compatibility with Python 3.13 (gh-1166), Python >= 3.10 required. Cython 3.0.10 is required for building. Thanks to Antonio Valentino.
Add type hints to atom.py (gh-1079). This also narrows some types, only allowing bytes to be stored in VLStringAtom and only str in VLUnicodeAtom. Thanks to Nils Carlson.
Add type hints to (hopefully) the complete PyTables API (gh-1119, gh-1120, gh-1121, gh-1123, gh-1124, gh-1125, gh-1125, gh-1126, gh-1128, gh-1129, gh-1130, gh-1131, gh-1132, gh-1133, gh-1135, gh-1136, gh-1137, gh-1138, gh-1139, gh-1140, gh-1141, gh-1142, gh-1143, gh-1145, gh-1146, gh-1147, gh-1148, gh-1150, gh-1151, gh-1152). Thanks to Ko Stehner.
Reduce impact of CPU information gathering by caching in local file (gh-1091, gh-1118, gh-1081). Thanks to Antti Mäkinen and Maximilian Linhoff.
Bugfixes¶
Fix Windows AMD64 build issues with Bzip2 and C-Blosc2 libraries (gh-1188). Thanks to Antonio Valentino and Eric Larson.
Fix typos and may other language errors in docstrings (gh-1122). Thanks to Ko Stehner.
Fix Blosc2 filter not setting dparams.schunk on decompression (gh-1110 and gh-1109). Thanks to Tom Birch.
Fix using B2ND optimizations when Blosc2 is not the only enabled filter; move Fletcher32 compression to end of pipeline when enabled (gh-1191 and gh-1162). Thanks to Ivan Vilata and Alex Laslavic.
Fix broken internal passing of createparents argument in Leaf.copy (gh-1127 and gh-1125). Thanks to Ko Stehner.
Re-enable relative paths in ExternalLink class (gh-1095). Thanks to erikdl-zeiss.
Fix using prefix in heavy tests methods of test_queries (gh-1169). Thanks to Miro Hrončok.
Fix TypeError when computing Blosc2 search paths with missing library (gh-1188 and gh-1100). Thanks to martinowitsch, Padraic Calpin and Eric Larson.
Avoid overflow RuntimeWarning on NumPy expectedrows value (gh-1010). Thanks to wony-zheng and Ivan Vilata.
Other changes¶
Add wheels for macOS ARM64 (Apple Silicon), set MACOSX_DEPLOYMENT_TARGET in Docker (gh-1050 and gh-1165). Thanks to Clemens Brunner, Antonio Valentino, Maximilian Linhoff and Eric Larson.
Avoid illegal hardware instruction under macOS on M1/M2 with Rosetta and AMD64 wheels (gh-1195 and gh-1186). Thanks to Antonio Valentino and Jon Peirce.
Produce nightly wheels (with HDF5 1.14.4), also uploaded to Scientific Python Anaconda repo. Wheels are also produced for PR workflows. Thanks to Antonio Valentino and Eric Larson (gh-1175).
Wheels are no longer linked with the LZO library to avoid licensing issues (gh-1195). Thanks to Antonio Valentino.
Hash-pin dependencies on wheel workflows to increase build procedure security, with support for Dependabot and Renovatebot updates (gh-1085 and gh-1015). Thanks to Joyce Brum and Diogo Teles Sant’Anna.
Hash-pin GitHub action versions in wheels workflow. Thanks to Antonio Valentino.
Update ReadTheDocs configuration to version 2 (gh-1092). Thanks to Maximilian Linhoff.
Assorted fixes to b2nd benchmark, with new results. Thanks to Ivan Vilata.
Point users to example code to handle “Selection lists cannot have repeated values” exception (gh-1161 and gh-1149). Thanks to Joshua Albert.
Remove unused getLibrary C code. Thanks to Antonio Valentino.
Update included C-Blosc to 1.21.6 (gh-1193). Thanks to Ivan Vilata.
Update included HDF5-Blosc filter to 1.0.1 (gh-1194). Thanks to Ivan Vilata.
Thanks¶
In alphabetical order:
Alex Laslavic
Antonio Valentino
Antti Mäkinen
Clemens Brunner
Diogo Teles Sant’Anna
Eric Larson
erikdl-zeiss
Francesc Alted
Ivan Vilata
Jon Peirce
Joshua Albert
Joyce Brum
Ko Stehner
martinowitsch
Maximilian Linhoff
Miro Hrončok
Nils Carlson
Padraic Calpin
Tom Birch
wony-zheng