zarr-python
zarr-python copied to clipboard
Feature/store metadata methods
This PR takes adds the option for stores to store metadata in whatever container makes sense for the store.
- adds
Store.set_metadataandStore.get_metadatamethods- moves json serialization/deserialization to Store ABC.
- these methods can be overridden by stores that don't want to store metadata as JSON. For now, I've illustrated this with the
MemoryStorethat now keeps metadata objects as plain dictionaries.
toward #1755
TODO:
- [ ] Add unit tests and/or doctests in docstrings
- [ ] Add docstrings and API docs for any new/modified user-facing classes and functions
- [ ] New/modified features documented in docs/tutorial.rst
- [ ] Changes documented in docs/release.rst
- [ ] GitHub Actions have all passed
- [ ] Test coverage is 100% (Codecov passes)