New features:
- Add Windows support. PR #951 revises codebase to be Windows compatible and adds this support to the CI testing matrix.
- Add NumPy 2.0 support. PR #950 ensures code compatibility with NumPy 2.0. This support is yet to be added to the CI testing matrix.
- Expand API for
Table.partition
to allow for passingdict
mappings from ids to groups and vice versa, remove of empty vectors, and ignoringNone
partitions. See issue #937 - NumPy 2.0 support, see issue #956
- The optimized subsample without replacement method is now exposed as
biom.subsample
. Note that this method operates inplace on SciPycsr_matrix
andcsc_matrix
objects. See issue #958
Bug Fixes:
- Fixed an edge case on in
align_tree
when a feature was empty, see issue #948 - In
subsample(..., with_replacement=True)
, it was possible to trigger a numerical stability on sum, see issue #952 update_ids(..., strict=False)
could yield truncated IDs, see issue #957
Performance improvements:
- Revise
Table._fast_merge
to use COO directly. For very large tables, this reduces runtime by ~50x and memory by ~5x. See PR #913. - Drastically reduce the memory needs of subsampling when sums are large. Also adds 64-bit support. See PR #935.
- Improve handling of not-perfectly-integer inputs. See PR #938.
New Contributors
- @ake123 made their first contribution in #936
- @sfiligoi made their first contribution in #935
- @qiyunzhu made their first contribution in #950
- @mataton made their first contribution in #951
Full Changelog: 2.1.15.2...2.1.16