Package: python3-h5py Version: 2.10.0-7 Followup-For: Bug #959940 Please see https://github.com/hdmf-dev/hdmf/issues/343#issuecomment-625972582 for possibly more info:
@tillea @yarikoptic the debian port contains this code in h5py_2.10.0-7.debian/debian/wrapper_module/h5py/__init__.py from sys import modules as sys_modules # [snip] # make generic h5py module behaviour the same as specific builds # by importing public and weak internal symbols (single _underscore) api = [ k for k in _h5py.__dict__.keys() if not k.startswith('__') and not k.endswith('__') ] this_module=sys_modules[__name__] for key in api: # "imports" symbols (makes them accessible) setattr(this_module,key,getattr(_h5py,key)) # rename symbols as properties of toplevel h5py module sys_modules['h5py.{}'.format(key)] = getattr(_h5py,key) Since remove_deprecated_highlevel_module_2f41c78.patch is not applied, the api list includes 'highlevel' so then sys.modules['h5py.highlevel'] is set to h5py.highlevel. This is problematic because sys.modules is traversed in the context manager for unittest.TestCase.assertWarns and getattr is called on it, but h5py.highlevel is intentionally lazily imported by h5py, I think, because it is deprecated. So one solution might be to apply the patch. Another might be to add and not k == 'highlevel' to the line that sets api above. In the above "patch" is the remove_deprecated_highlevel_module_2f41c78.patch patch which was disabled in commit ed17e72dc2fa47f590b78632401512546d3d3e1e Author: Drew Parsons <dpars...@debian.org> Date: Sun Apr 5 18:31:33 2020 +0800 disable upstream patches and update drop_deprecation_tests.patch aid HDF5 transition by giving bitshuffle more time to update (see Bug#955456) changes to drop_deprecation_tests.patch needed to pass h5py tests diff --git a/debian/patches/series b/debian/patches/series index 6753f8e..9f3468d 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -7,8 +7,8 @@ fix_2.10_docs.patch hdf5_pkgconfig.patch build_flavour.patch stop_circular_dep.patch -drop_deprecated_dtype_6a77b91.patch -remove_deprecated_highlevel_module_2f41c78.patch -file_default_read_5e71c49.patch +#drop_deprecated_dtype_6a77b91.patch +#remove_deprecated_highlevel_module_2f41c78.patch +#file_default_read_5e71c49.patch drop_deprecation_tests.patch tests_as_local_build.patch Cheers, -- System Information: Debian Release: bullseye/sid APT prefers testing APT policy: (900, 'testing'), (600, 'unstable'), (300, 'experimental'), (100, 'unstable-debug'), (100, 'stable-updates'), (100, 'stable') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 5.6.0-1-amd64 (SMP w/12 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages python3-h5py depends on: ii python3-h5py-serial 2.10.0-7 python3-h5py recommends no packages. Versions of packages python3-h5py suggests: pn python-h5py-doc <none> -- no debconf information