From f3160fc1a034174f972be3b49433d1c79b98fec4 Mon Sep 17 00:00:00 2001 From: Kai Muehlbauer Date: Wed, 5 Feb 2020 09:37:11 +0100 Subject: [PATCH 1/3] ADD: add `phony_dims` keyword arg to h5netcdf backend available from h5netcdf v0.8.0 --- xarray/backends/h5netcdf_.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/xarray/backends/h5netcdf_.py b/xarray/backends/h5netcdf_.py index 2b7c2d9057c..edb996e5beb 100644 --- a/xarray/backends/h5netcdf_.py +++ b/xarray/backends/h5netcdf_.py @@ -1,4 +1,5 @@ import functools +from distutils.version import LooseVersion import numpy as np @@ -117,6 +118,7 @@ def open( lock=None, autoclose=False, invalid_netcdf=None, + phony_dims=None, ): import h5netcdf @@ -124,6 +126,14 @@ def open( raise ValueError("invalid format for h5netcdf backend") kwargs = {"invalid_netcdf": invalid_netcdf} + if phony_dims is not None: + if LooseVersion(h5netcdf.__version__) >= LooseVersion("0.8.0"): + kwargs["phony_dims"] = phony_dims + else: + raise ( + "h5netcdf backend keyword argument 'phony_dims' needs " + "h5netcdf >= 0.8.0." + ) if lock is None: if mode == "r": From ee0db0b95d0f4d528521570e1b1bc58ee8140b09 Mon Sep 17 00:00:00 2001 From: Kai Muehlbauer Date: Wed, 5 Feb 2020 09:38:28 +0100 Subject: [PATCH 2/3] ADD: add `whats-new.rst` entry --- doc/whats-new.rst | 3 +++ 1 file changed, 3 insertions(+) diff --git a/doc/whats-new.rst b/doc/whats-new.rst index 7fa70d0b67a..1615834dc4b 100644 --- a/doc/whats-new.rst +++ b/doc/whats-new.rst @@ -24,6 +24,9 @@ Breaking changes New Features ~~~~~~~~~~~~ +- Support new h5netcdf backend keyword `phony_dims` (available from h5netcdf + v0.8.0 for :py:class:`~xarray.backends.H5NetCDFStore`. + By `Kai Mühlbauer `_. Bug fixes ~~~~~~~~~ From e9f814f3ec1e90ba3251a319612a486c3f34ce5a Mon Sep 17 00:00:00 2001 From: Kai Muehlbauer Date: Thu, 6 Feb 2020 17:01:46 +0100 Subject: [PATCH 3/3] FIX: raise ValueError --- xarray/backends/h5netcdf_.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xarray/backends/h5netcdf_.py b/xarray/backends/h5netcdf_.py index edb996e5beb..393db14a7e9 100644 --- a/xarray/backends/h5netcdf_.py +++ b/xarray/backends/h5netcdf_.py @@ -130,7 +130,7 @@ def open( if LooseVersion(h5netcdf.__version__) >= LooseVersion("0.8.0"): kwargs["phony_dims"] = phony_dims else: - raise ( + raise ValueError( "h5netcdf backend keyword argument 'phony_dims' needs " "h5netcdf >= 0.8.0." )