From ef0838812cb3715d86d9cf9630606c824f3d8efb Mon Sep 17 00:00:00 2001 From: Stephan Hoyer Date: Sun, 11 Nov 2018 13:09:22 -0800 Subject: [PATCH 1/3] Add libnetcdf, libhdf5, pydap and cfgrib to xarray.show_versions() --- xarray/util/print_versions.py | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/xarray/util/print_versions.py b/xarray/util/print_versions.py index 18ce40a6fae..8a99d059af8 100755 --- a/xarray/util/print_versions.py +++ b/xarray/util/print_versions.py @@ -63,9 +63,27 @@ def get_sys_info(): return blob +def netcdf_and_hdf5_versions(): + libhdf5_version = None + libnetcdf_version = None + try: + import netCDF4 + libhdf5_version = netCDF4.__hdf5libversion__ + libnetcdf_version = netCDF4.__netcdf4libversion__ + except ImportError: + try: + import h5py + libhdf5_version = h5py.__hdf5libversion__ + except ImportError: + pass + return [('libhdf5', libhdf5_version), ('libnetcdf', libnetcdf_version)] + + def show_versions(as_json=False): sys_info = get_sys_info() + sys_info.extend(netcdf_and_hdf5_versions()) + deps = [ # (MODULE_NAME, f(mod) -> mod version) ("xarray", lambda mod: mod.__version__), @@ -74,7 +92,7 @@ def show_versions(as_json=False): ("scipy", lambda mod: mod.__version__), # xarray optionals ("netCDF4", lambda mod: mod.__version__), - # ("pydap", lambda mod: mod.version.version), + ("pydap", lambda mod: getattr(mod, '__version__', '<=3.2.2')), ("h5netcdf", lambda mod: mod.__version__), ("h5py", lambda mod: mod.__version__), ("Nio", lambda mod: mod.__version__), @@ -82,6 +100,7 @@ def show_versions(as_json=False): ("cftime", lambda mod: mod.__version__), ("PseudonetCDF", lambda mod: mod.__version__), ("rasterio", lambda mod: mod.__version__), + ("cfgrib", lambda mod: mod.__version__), ("iris", lambda mod: mod.__version__), ("bottleneck", lambda mod: mod.__version__), ("cyordereddict", lambda mod: mod.__version__), From 7f9afc32e26c9a4fab2132577619fffdf7841dee Mon Sep 17 00:00:00 2001 From: Stephan Hoyer Date: Sun, 11 Nov 2018 13:18:13 -0800 Subject: [PATCH 2/3] More fixup --- xarray/util/print_versions.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/xarray/util/print_versions.py b/xarray/util/print_versions.py index 8a99d059af8..30ceb3014af 100755 --- a/xarray/util/print_versions.py +++ b/xarray/util/print_versions.py @@ -92,7 +92,7 @@ def show_versions(as_json=False): ("scipy", lambda mod: mod.__version__), # xarray optionals ("netCDF4", lambda mod: mod.__version__), - ("pydap", lambda mod: getattr(mod, '__version__', '<=3.2.2')), + ("pydap", lambda mod: mod.__version__), ("h5netcdf", lambda mod: mod.__version__), ("h5py", lambda mod: mod.__version__), ("Nio", lambda mod: mod.__version__), @@ -126,10 +126,14 @@ def show_versions(as_json=False): mod = sys.modules[modname] else: mod = importlib.import_module(modname) - ver = ver_f(mod) - deps_blob.append((modname, ver)) except Exception: deps_blob.append((modname, None)) + else: + try: + ver = ver_f(mod) + deps_blob.append((modname, ver)) + except Exception: + deps_blob.append((modname, 'installed')) if (as_json): try: From 5ada8573d7a8083f9d456a98e1393f6e164f5361 Mon Sep 17 00:00:00 2001 From: Stephan Hoyer Date: Sun, 11 Nov 2018 19:24:59 -0800 Subject: [PATCH 3/3] Show full Python version string --- xarray/util/print_versions.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xarray/util/print_versions.py b/xarray/util/print_versions.py index 30ceb3014af..5459e67e603 100755 --- a/xarray/util/print_versions.py +++ b/xarray/util/print_versions.py @@ -44,7 +44,7 @@ def get_sys_info(): (sysname, nodename, release, version, machine, processor) = platform.uname() blob.extend([ - ("python", "%d.%d.%d.%s.%s" % sys.version_info[:]), + ("python", sys.version), ("python-bits", struct.calcsize("P") * 8), ("OS", "%s" % (sysname)), ("OS-release", "%s" % (release)),