Closed peterjc closed 1 year ago
We made h5py a required dependency in #824 but it looks like there are lingering historical checks that we need to address. So I agree this is unexpected, however I think the correct course of action is to remove that check in util.py
and make an explicit note in the changelog.
I would greatly prefer to retain h5py as a required rather than optional dependency as the vast majority of BIOM use is through format version 2.1. Is there a specific usecase where h5py is not viable?
I thought it would be easy to export HDF5 by default, and fall back on JSON if the dependencies were missing. Without knowing much about the dependency stack that seemed like a plausible situation - especially on less mainstream platforms.
I agree if HDF5 is now considered a hard requirement, then that code in util.py
could be simplified.
That certainly makes sense :)
Okay, so I'll line up addressing that code in util.py
and anything depending on the associated variables.
To be fair, the IO mechanisms for BIOM are not streamlines in my opinion, but I haven't yet found time to do it. I just realized this wasn't codified as an issue, so I opened #897
Current behaviour having used conda/pip to install biom 2.1.14 and h5py 3.8.0 on macOS, and then deliberately removing h5py:
Expected behaviour:
Given the graceful failure code here https://github.com/biocore/biom-format/blob/2.1.14/biom/util.py#L24 I expected this to return False.
i.e. Should work but only be able to use JSON BIOM v1 files.