Pure Go HDF5 Library Built Without CGO, Plus a Crash Bug in Its Hyperslab Readers
A developer porting a causal-discovery method from Python to Go needed to read MATLAB data files, but found no reliable Go tools for the HDF5 format they use. Instead of a narrow reader, they began building a full HDF5 library in pure Go, with no C dependencies, and released it publicly about a year ago. The library now supports most core HDF5 structures and filters, validated against the HDF5 C library's test files, while a few features still return explicit errors. A later release addressed a bug, reported as issue #75, where a single altered byte in a small file caused a request for roughly 40 GB of memory. The root cause was that hyperslab readers re-parsed dataset metadata and skipped the bounds check applied to whole-dataset reads.
This is an AI-generated summary. ShortSingh links to the original source for the complete article.

Discussion (0)
Log in to join the discussion and vote.
Log in