I'd expect this method to do a client-side `import h5py` before anything else to detect if `h5py` is available -- nicer than getting a `CompositeError` from the engines.