The HDF Group is pleased to announce the release of HSDS 1.0.0, alongside h5pyd 1.0.0 and hdf5-json 2.0.0.
The three projects now share a single implementation of the HDF5 object model, instead of each maintaining its own. The utility code that HSDS and h5pyd had duplicated (object identifiers, datatypes, links, etc.) now lives in the standalone hdf5-json library, which is independently useful to any client that needs a JSON representation of HDF5 metadata.
In this release, we have also:
- added batch object creation: a single POST to groups or datasets can create a list of objects, each carrying its own identifier, creation properties, timestamps, and, for small datasets, initial values. The server can now create objects in a new domain concurrently rather than one-per-request.
- added support for region references
- added a machine-readable OpenAPI specification describing the REST API
- added a Prometheus /metrics endpoint on every node, plus JSON-formatted logs and W3C trace context propagation
- fixed a large number of bugs, along with various corrections and code cleanup
There are some breaking changes. HSDS now requires Python 3.11 or newer, hdf5-json 2.0.0 or newer, and NumPy 2.0.0 or newer, and some parts of API responses have changed. Please refer to the release notes before upgrading.
The newest versions of HSDS, h5pyd, and hdf5-json are now available via pip, or from the release pages on GitHub.
For more details, see the associated blog post.
Thank you to everyone who has contributed code, reviews, testing, and feedback.
