Skip to content

Releases: biocore/biom-format

Maintenance, bug fix, performance and feature release

11 May 22:08
Compare
Choose a tag to compare

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 passing dict mappings from ids to groups and vice versa, remove of empty vectors, and ignoring None 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 SciPy csr_matrix and csc_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

Full Changelog: 2.1.15.2...2.1.16

Artifact push

09 May 15:02
Compare
Choose a tag to compare

Minor release for artifact push

Artifact push

04 May 23:10
Compare
Choose a tag to compare

Minor release for artifact push

Maintenance and bugfix release

04 May 18:58
Compare
Choose a tag to compare

Thank you in particular to @peterjc for his detailed review of the project! And also thank you to both @peterjc and @Midnighter for their contributions for this release.

Bug fixes:

  • Allow Table.to_json to properly handle numpy types in metadata, see issue #886
  • Do not modify IDs in place in the presence of duplicate relabels, see issue #892
  • Catch an edge case where a failured ID update in place would actually change IDs, see issue #892

New features:

  • biom.parse.save_table makes saving less tedious, see issue #897
  • biom.util.biom_open now supports pathlib.Path, see issue #894
  • You can now set a random seed at the call to Table.subsample, see issue #914.

General maintenance:

  • Allow specifying a creation time on write, see issue #895
  • h5py optional code blocks have been removed, see issue #896
  • Many warnings from the test suite have been resolved, see issue #912
  • Politely error when validating non biom-format files, see issue #901
  • Disallow head with -n <= 0 and -m <= 0, see issue #899

Bug fix release

03 Jan 18:48
Compare
Choose a tag to compare

What's Changed

Full Changelog: 2.1.13...2.1.14

Performance and bug fix release

09 Dec 19:09
90cfded
Compare
Choose a tag to compare

What's Changed

  • Clarification about ID type in the docs for Table.update_ids by @fedarko in #879
  • Use sparse matrix for table.collapse(..., one_to_many=True) by @wasade in #884
  • Take column names from all metadata not just first entry by @asafpr in #881

New Contributors

Full Changelog: 2.1.12...2.1.13

Make pypi happy

26 Mar 00:17
Compare
Choose a tag to compare

Pypi doesn't allow reuse of filenames even if deleted, so generating a unique tag just for it

General maintenance release

26 Mar 00:09
Compare
Choose a tag to compare

General maintenance and feature expansion, released on 25 March 2022.

Thank you to @nsoranzo, @mortonjt, @tillea and @antgonza for the contributions!

Bug fixes:

  • Table.from_json now respects the creation date issue #770 in Python 3.7 and higher

New Features

  • Python 3.10 support, see PR #865
  • 10x improvement on Table.collapse when operating over many partitions, see PR #866
  • Minor performance improvement, see PR #871
  • Coerce consistent, and fixed width, types for IDs, see PR #872
  • Table / metadata alignment support, see PR #859

Bug fix release for a rare string conversion issue

16 Nov 20:25
0f470cd
Compare
Choose a tag to compare

During deployment testing for QIIME 2 2020.11, it was observed that certain combinations of hdf5 or h5py dependencies can result in metadata strings parsing as ASCII rather than UTF-8. Parse of BIOM-Format 2.1.0 files now normalize metadata strings as UTF-8, see #853. Thanks @thermokarst for helping tracking this down!

Support for pandas >= 1.0, and new features

05 Nov 17:33
Compare
Choose a tag to compare

New features and support for Pandas >= 1.0, released on 5 November 2020. Thank you for the contributions @fbeghini, @adamgayoso, and @ElDeveloper!

Important:

Cython and numpy are no more required to be present before building, see PR #840

New Features:

Performance boost to Table.remove_empty. For large tables this cuts the running time from 20 seconds to ~1.1 seconds, see PR #847

A much faster way to merge tables (without metadata) has been added. For large tables, this was a few minutes rather than a few hours. This method is implicitly invoked when calling Table.merge if unioning both axes, and the tables lack metadata. Table.concat is still much faster, but assumes one axis is disjoint. See PR #848.

Simplify interaction with the concatenation method, allowing for passing in an individual table and support for a general biom.concat(tables) wrapper. See PR #851.

Added support for parsing adjacency table structures, see issue #823.

Bug fixes:

Support for pandas >= 1.0, see the comment and commits here