Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-h5py for openSUSE:Factory 
checked in at 2021-09-09 23:07:50
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-h5py (Old)
 and      /work/SRC/openSUSE:Factory/.python-h5py.new.1899 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-h5py"

Thu Sep  9 23:07:50 2021 rev:21 rq:917807 version:3.4.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-h5py/python-h5py.changes  2021-06-25 
15:02:14.492217710 +0200
+++ /work/SRC/openSUSE:Factory/.python-h5py.new.1899/python-h5py.changes        
2021-09-09 23:08:22.700889047 +0200
@@ -1,0 +2,23 @@
+Thu Sep  9 16:08:42 UTC 2021 - Matej Cepl <mc...@suse.com>
+
+- Correct order of definitions to generate multiple packages for
+  multiple builds.
+
+-------------------------------------------------------------------
+Sun Sep  5 16:38:52 UTC 2021 - Arun Persaud <a...@gmx.de>
+
+- update to version 3.4.0:
+  * New features
+    + The pre-built wheels now bundle HDF5 1.12.1 (:pr:`1945`).
+    + len() now works on dset.astype(), .asstr() and .fields()
+      wrappers (:pr:`1913`).
+  * Bug fixes
+    + Fix bug introduced in version 3.3 that did not allow the
+      creation of files using the flag "a" for certain drivers
+      (e.g. mpiio, core and stdio) (:pr:`1922`).
+    + Dataset indexing will now use the optimized fast path, which was
+      accidentally disabled in a previous version (:pr:`1944`).
+    + Fix an error building with Cython 3.0 alpha 8 (cpdef inside
+      functions) (:pr:`1923`).
+
+-------------------------------------------------------------------

Old:
----
  h5py-3.3.0.tar.gz

New:
----
  h5py-3.4.0.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-h5py.spec ++++++
--- /var/tmp/diff_new_pack.X4vHSq/_old  2021-09-09 23:08:23.072889478 +0200
+++ /var/tmp/diff_new_pack.X4vHSq/_new  2021-09-09 23:08:23.076889483 +0200
@@ -17,9 +17,10 @@
 
 
 %global flavor @BUILD_FLAVOR@%{nil}
-
 %define pname python-h5py
-
+%{?!python_module:%define python_module() python-%{**} python3-%{**}}
+%define skip_python2 1
+%define skip_python36 1
 # SECTION MPI DEFINITIONS
 %if "%{flavor}" == "openmpi1"
 %global mpi_flavor openmpi
@@ -29,17 +30,14 @@
 %define mpi_vers 1
 %endif
 %endif
-
 %if "%{flavor}" == "openmpi2"
 %global mpi_flavor openmpi
 %define mpi_vers 2
 %endif
-
 %if "%{flavor}" == "openmpi3"
 %global mpi_flavor openmpi
 %define mpi_vers 3
 %endif
-
 %if "%{flavor}" == "openmpi4"
 %global mpi_flavor openmpi
 %define mpi_vers 4
@@ -64,12 +62,8 @@
 %define my_sitearch_in_expand %{$python_sitearch}
 %endif
 # /SECTION MPI DEFINITIONS
-
-%{?!python_module:%define python_module() python-%{**} python3-%{**}}
-%define skip_python2 1
-%define skip_python36 1
 Name:           %{pname}%{?my_suffix}
-Version:        3.3.0
+Version:        3.4.0
 Release:        0
 Summary:        Python interface to the Hierarchical Data Format library
 License:        BSD-3-Clause
@@ -93,6 +87,7 @@
 BuildRequires:  %{python_module numpy-devel >= 1.17.5 if (%python-base >= 3.8)}
 BuildRequires:  %{python_module numpy-devel >= 1.19.3 if (%python-base >= 3.9)}
 Requires:       hdf5%{?my_suffix}
+%requires_eq    libhdf5%{?my_suffix}
 %if 0%{python_version_nodots} >= 39
 Requires:       python-numpy >= 1.19.3
 %else
@@ -102,8 +97,7 @@
 Requires:       python-numpy >= 1.12
 %endif
 %endif
-%requires_eq    libhdf5%{?my_suffix}
-%if %python_version_nodots < 38
+%if %{python_version_nodots} < 38
 Requires:       python-cached-property
 %endif
 %if %{with mpi}

++++++ h5py-3.3.0.tar.gz -> h5py-3.4.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/h5py-3.3.0/AUTHORS new/h5py-3.4.0/AUTHORS
--- old/h5py-3.3.0/AUTHORS      2021-06-22 14:06:03.000000000 +0200
+++ new/h5py-3.4.0/AUTHORS      1970-01-01 01:00:00.000000000 +0100
@@ -1,172 +0,0 @@
-All of the people who have made at least one contribution to h5py.
-Authors are sorted by number of commits.
-
-* Andrew Collette
-* Thomas Kluyver
-* Thomas A Caswell
-* James Tocknell
-* Jerome Kieffer
-* Chen
-* Aleksandar Jelenak
-* ???????????? ??????????????????
-* Darren Dale
-* Henri Payno
-* Thomas VINCENT
-* Pierlauro Sciarelli
-* Anthony Scopatz
-* Valentin Valls
-* Satrajit Ghosh
-* Ulrik Kofoed Pedersen
-* Stan West
-* Martin Raspaud
-* John Kirkham
-* Aaron Parsons
-* Julia Garriga Ferrer
-* Jerome Kieffer
-* Hameer Abbasi
-* Cyril Danilevski
-* John Readey
-* Lawrence Chan
-* V. Armando Sol??
-* Andrey Paramonov
-* Yu Feng
-* Liu JiaLin
-* lhole
-* Ghislain Antony Vaillant
-* Seth R Johnson
-* Matthieu Brucher
-* Andrea Bedini
-* Martin Teichmann
-* Markus Gerstel
-* Axel Huebl
-* Pierre de Buyl
-* miketrumpis
-* Vladimir Brankov
-* Bruce Merry
-* Samuel Dowling
-* Florian Rathgeber
-* Chris Billington
-* Max Dietz
-* Silas-Asamoah
-* tmichela
-* Anna Padee
-* nitrocalcite
-* Orion Poplawski
-* Dieter Weber
-* Konrad Hinsen
-* Toon Verstraelen
-* Antony Lee
-* Machine User
-* Geoff Wright
-* Jordan Farquhar
-* Clemens Weninger
-* Robin De Schepper
-* aporter
-* Kai Muehlbauer
-* Thomas Donoghue
-* Kit Choi
-* lucasb-eyer
-* Matthew Brett
-* Dylan Nelson
-* Scott Sanderson
-* Matt Zwier
-* Charles Law
-* Chen Yufei
-* Simon Mutch
-* Christian Sachs
-* ebner
-* egachen
-* Gary Yendell
-* Kacper Kowalik
-* Yaroslav Halchenko
-* Sajid Ali
-* Noel Dawe
-* John Tyree
-* Christoph Gohlke
-* Carlos Pascual
-* Joe Jevnik
-* unknown
-* Jason Newton
-* Will Parkin
-* Devin
-* Nathan Goldbaum
-* paulmueller
-* Andy Salnikov
-* amcnicho
-* Jonah Bernhard
-* Antoine Pitrou
-* Joseph Kleinhenz
-* cclauss
-* Colin Gavin
-* Chris Meyer
-* Jakob Lombacher
-* Michael Boyle
-* Sam Mason
-* Peter H. Li
-* jialin
-* Alex Porter
-* jhofinger
-* Aaron Meurer
-* Guinnes Singh
-* Jonathan Okasinski
-* mattip
-* Daniel Berke
-* joydeep bhattacharjee
-* pharshalp
-* Matthias Geier
-* Eric Larson
-* Drew Parsons
-* Robert David Grant
-* JP Dehollain
-* chrisjbillington
-* Lars Viklund
-* Dan Guest
-* root
-* bpinsard
-* Barry Wardel
-* Evan Wright
-* Johannes Meixner
-* Marc Abramowitz
-* syhw
-* Stuart Berg
-* Michael V. DePalatis
-* Kwat
-* Mike Boyle
-* Peter Chang
-* Mikhail
-* Nils Werner
-* Peter Hill
-* John Benediktsson
-* Yuri D'Elia
-* Matthew Turk
-* Bradley M. Froehle
-* Dan Meliza
-* Artem Sanakoev
-* Matthias K??nig
-* Adam J. Stewart
-* Kyle Sunden
-* Caleb Morse
-* Peter Colberg
-* James Clarke
-* Sam Toyer
-* Joe Zuntz
-* Greg Allen
-* Lawrence Mitchell
-* dkriegner
-* Jens Timmerman
-* Niru Maheswaranathan
-* Paco Hope
-* Felix Yan
-* Alex Migon
-* Lisandro Dalcin
-* Alexei Colin
-* Marco Paolini
-* pierlauro
-* Philipp A
-* Csaba Kert??sz
-* Thomas Michelat
-* Luke Tudge
-* Gang Chen
-* patiencedaur
-* Tim Gates
-* Micha?? G??rny
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/h5py-3.3.0/PKG-INFO new/h5py-3.4.0/PKG-INFO
--- old/h5py-3.3.0/PKG-INFO     2021-06-22 14:25:32.937909600 +0200
+++ new/h5py-3.4.0/PKG-INFO     2021-08-23 10:31:52.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 1.2
 Name: h5py
-Version: 3.3.0
+Version: 3.4.0
 Summary: Read and write HDF5 files from Python
 Home-page: http://www.h5py.org
 Author: Andrew Collette
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/h5py-3.3.0/README.rst new/h5py-3.4.0/README.rst
--- old/h5py-3.3.0/README.rst   2021-05-09 13:55:36.000000000 +0200
+++ new/h5py-3.4.0/README.rst   2021-07-08 14:39:25.000000000 +0200
@@ -34,7 +34,7 @@
 --------------
 
 Open a bug at https://github.com/h5py/h5py/issues.  For general questions, ask
-on the list (https://groups.google.com/d/forum/h5py).
+on the HDF forum (https://forum.hdfgroup.org/c/hdf-tools/h5py).
 
 .. _`Continuum Anaconda`: http://continuum.io/downloads
 .. _`Enthought Canopy`: https://www.enthought.com/products/canopy/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/h5py-3.3.0/docs/conf.py new/h5py-3.4.0/docs/conf.py
--- old/h5py-3.3.0/docs/conf.py 2021-06-22 14:06:03.000000000 +0200
+++ new/h5py-3.4.0/docs/conf.py 2021-08-23 10:28:23.000000000 +0200
@@ -61,7 +61,7 @@
 # built documents.
 #
 # The full version, including alpha/beta/rc tags.
-release = '3.3.0'
+release = '3.4.0'
 # The short X.Y version.
 version = '.'.join(release.split('.')[:2])
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/h5py-3.3.0/docs/high/group.rst 
new/h5py-3.4.0/docs/high/group.rst
--- old/h5py-3.3.0/docs/high/group.rst  2021-06-22 12:28:44.000000000 +0200
+++ new/h5py-3.4.0/docs/high/group.rst  2021-08-12 13:30:42.000000000 +0200
@@ -106,7 +106,7 @@
 Note that this is `not` a copy of the dataset!  Like hard links in a UNIX file
 system, objects in an HDF5 file can be stored in multiple groups::
 
-    >>> f["other name"] == f["name"]
+    >>> grp["other name"] == grp["name"]
     True
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/h5py-3.3.0/docs/whatsnew/3.4.rst 
new/h5py-3.4.0/docs/whatsnew/3.4.rst
--- old/h5py-3.3.0/docs/whatsnew/3.4.rst        1970-01-01 01:00:00.000000000 
+0100
+++ new/h5py-3.4.0/docs/whatsnew/3.4.rst        2021-08-23 10:28:23.000000000 
+0200
@@ -0,0 +1,20 @@
+What's new in h5py 3.4
+======================
+
+New features
+------------
+
+* The pre-built wheels now bundle HDF5 1.12.1 (:pr:`1945`).
+* ``len()`` now works on ``dset.astype()``, ``.asstr()`` and ``.fields()``
+  wrappers (:pr:`1913`).
+
+Bug fixes
+---------
+
+* Fix bug introduced in version 3.3 that did not allow the creation of files
+  using the flag "a" for certain drivers (e.g. mpiio, core and stdio)
+  (:pr:`1922`).
+* Dataset indexing will now use the optimized fast path, which was accidentally
+  disabled in a previous version (:pr:`1944`).
+* Fix an error building with Cython 3.0 alpha 8 (``cpdef`` inside functions)
+  (:pr:`1923`).
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/h5py-3.3.0/docs/whatsnew/index.rst 
new/h5py-3.4.0/docs/whatsnew/index.rst
--- old/h5py-3.3.0/docs/whatsnew/index.rst      2021-06-22 14:06:03.000000000 
+0200
+++ new/h5py-3.4.0/docs/whatsnew/index.rst      2021-08-23 10:28:23.000000000 
+0200
@@ -8,6 +8,7 @@
 
 .. toctree::
 
+    3.4
     3.3
     3.2
     3.1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/h5py-3.3.0/h5py/_hl/dataset.py 
new/h5py-3.4.0/h5py/_hl/dataset.py
--- old/h5py-3.3.0/h5py/_hl/dataset.py  2021-06-22 12:28:44.000000000 +0200
+++ new/h5py-3.4.0/h5py/_hl/dataset.py  2021-08-18 10:27:08.000000000 +0200
@@ -161,18 +161,25 @@
         # pylint: disable=protected-access
         self._dset._local.astype = None
 
+    def __len__(self):
+        """ Get the length of the underlying dataset
+
+        >>> length = len(dataset.astype('f8'))
+        """
+        return len(self._dset)
+
 
 class AsStrWrapper:
     """Wrapper to decode strings on reading the dataset"""
     def __init__(self, dset, encoding, errors='strict'):
-        self.dset = dset
+        self._dset = dset
         if encoding is None:
             encoding = h5t.check_string_dtype(dset.dtype).encoding
         self.encoding = encoding
         self.errors = errors
 
     def __getitem__(self, args):
-        bytes_arr = self.dset[args]
+        bytes_arr = self._dset[args]
         # numpy.char.decode() seems like the obvious thing to use. But it only
         # accepts numpy string arrays, not object arrays of bytes (which we
         # return from HDF5 variable-length strings). And the numpy
@@ -186,24 +193,38 @@
             b.decode(self.encoding, self.errors) for b in bytes_arr.flat
         ], dtype=object).reshape(bytes_arr.shape)
 
+    def __len__(self):
+        """ Get the length of the underlying dataset
+
+        >>> length = len(dataset.asstr())
+        """
+        return len(self._dset)
+
 
 class FieldsWrapper:
     """Wrapper to extract named fields from a dataset with a struct dtype"""
     extract_field = None
 
     def __init__(self, dset, prior_dtype, names):
-        self.dset = dset
+        self._dset = dset
         if isinstance(names, str):
             self.extract_field = names
             names = [names]
         self.read_dtype = readtime_dtype(prior_dtype, names)
 
     def __getitem__(self, args):
-        data = self.dset.__getitem__(args, new_dtype=self.read_dtype)
+        data = self._dset.__getitem__(args, new_dtype=self.read_dtype)
         if self.extract_field is not None:
             data = data[self.extract_field]
         return data
 
+    def __len__(self):
+        """ Get the length of the underlying dataset
+
+        >>> length = len(dataset.fields(['x', 'y']))
+        """
+        return len(self._dset)
+
 
 def readtime_dtype(basetype, names):
     """Make a NumPy compound dtype with a subset of available fields"""
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/h5py-3.3.0/h5py/_hl/files.py 
new/h5py-3.4.0/h5py/_hl/files.py
--- old/h5py-3.3.0/h5py/_hl/files.py    2021-06-22 12:28:44.000000000 +0200
+++ new/h5py-3.4.0/h5py/_hl/files.py    2021-07-21 12:48:19.000000000 +0200
@@ -209,7 +209,18 @@
         # existing one (ACC_EXCL)
         try:
             fid = h5f.open(name, h5f.ACC_RDWR, fapl=fapl)
-        except FileNotFoundError:
+        # Not all drivers raise FileNotFoundError (commented those that do not)
+        except FileNotFoundError if fapl.get_driver() in (
+            h5fd.SEC2,
+            # h5fd.STDIO,
+            # h5fd.CORE,
+            h5fd.FAMILY,
+            h5fd.WINDOWS,
+            # h5fd.MPIO,
+            # h5fd.MPIPOSIX,
+            h5fd.fileobj_driver,
+            h5fd.ROS3D if ros3 else -1,
+        ) else OSError:
             fid = h5f.create(name, h5f.ACC_EXCL, fapl=fapl, fcpl=fcpl)
     else:
         raise ValueError("Invalid mode; must be one of r, r+, w, w-, x, a")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/h5py-3.3.0/h5py/_selector.pyx 
new/h5py-3.4.0/h5py/_selector.pyx
--- old/h5py-3.3.0/h5py/_selector.pyx   2021-05-09 13:55:36.000000000 +0200
+++ new/h5py-3.4.0/h5py/_selector.pyx   2021-08-20 14:27:02.000000000 +0200
@@ -309,7 +309,7 @@
         h5_stored_datatype = typewrap(H5Dget_type(self.dataset))
         np_dtype = h5_stored_datatype.py_dtype()
         self.np_typenum = np_dtype.num
-        self.native_byteorder = PyArray_IsNativeByteOrder(np_dtype.byteorder)
+        self.native_byteorder = 
PyArray_IsNativeByteOrder(ord(np_dtype.byteorder))
         self.h5_memory_datatype = py_create(np_dtype)
 
     cdef ndarray make_array(self, hsize_t* mshape):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/h5py-3.3.0/h5py/h5pl.pyx new/h5py-3.4.0/h5py/h5pl.pyx
--- old/h5py-3.3.0/h5py/h5pl.pyx        2021-05-09 13:55:36.000000000 +0200
+++ new/h5py-3.4.0/h5py/h5pl.pyx        2021-07-08 10:44:27.000000000 +0200
@@ -62,8 +62,8 @@
         Get the directory path at the given index (starting from 0) in the
         plugin search path. Returns a Python bytes object.
         """
-        cpdef size_t n
-        cpdef char* buf = NULL
+        cdef size_t n
+        cdef char* buf = NULL
 
         n = H5PLget(index, NULL, 0)
         buf = <char*>emalloc(sizeof(char)*(n + 1))
@@ -78,6 +78,6 @@
 
         Get the number of directories currently in the plugin search path.
         """
-        cpdef unsigned int n = 0
+        cdef unsigned int n = 0
         H5PLsize(&n)
         return n
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/h5py-3.3.0/h5py/tests/common.py 
new/h5py-3.4.0/h5py/tests/common.py
--- old/h5py-3.3.0/h5py/tests/common.py 2021-05-09 13:55:36.000000000 +0200
+++ new/h5py-3.4.0/h5py/tests/common.py 2021-08-20 14:27:02.000000000 +0200
@@ -130,7 +130,7 @@
             assert np.all(dset[...] == arr[...]), \
                 "Arrays are not equal (dtype %s) %s" % (arr.dtype.str, message)
 
-    def assertNumpyBehavior(self, dset, arr, s):
+    def assertNumpyBehavior(self, dset, arr, s, skip_fast_reader=False):
         """ Apply slicing arguments "s" to both dset and arr.
 
         Succeeds if the results of the slicing are identical, or the
@@ -144,12 +144,24 @@
         except Exception as e:
             exc = type(e)
 
+        s_fast = s if isinstance(s, tuple) else (s,)
+
         if exc is None:
             self.assertArrayEqual(dset[s], arr_result)
+
+            if not skip_fast_reader:
+                self.assertArrayEqual(
+                    dset._fast_reader.read(s_fast),
+                    arr_result,
+                )
         else:
             with self.assertRaises(exc):
                 dset[s]
 
+            if not skip_fast_reader:
+                with self.assertRaises(exc):
+                    dset._fast_reader.read(s_fast)
+
 NUMPY_RELEASE_VERSION = tuple([int(i) for i in np.__version__.split(".")[0:2]])
 
 @contextmanager
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/h5py-3.3.0/h5py/tests/test_dataset.py 
new/h5py-3.4.0/h5py/tests/test_dataset.py
--- old/h5py-3.3.0/h5py/tests/test_dataset.py   2021-06-22 12:28:44.000000000 
+0200
+++ new/h5py-3.4.0/h5py/tests/test_dataset.py   2021-08-18 10:27:08.000000000 
+0200
@@ -1151,6 +1151,10 @@
         # latin-1 will decode it but give the wrong text
         self.assertNotEqual(ds.asstr('latin-1')[0], data)
 
+        # len of ds
+        self.assertEqual(10, len(ds.asstr()))
+
+
         # Array output
         np.testing.assert_array_equal(
             ds.asstr()[:1], np.array([data], dtype=object)
@@ -1274,6 +1278,9 @@
             self.f['test'].fields('x')[:], testdata['x']
         )
 
+        # Check len() on fields wrapper
+        assert len(self.f['test'].fields('x')) == 16
+
 
 class TestSubarray(BaseDataset):
     def test_write_list(self):
@@ -1464,6 +1471,13 @@
         arr = dset.astype('f4')[:]
         self.assertArrayEqual(arr, np.arange(100, dtype='f4'))
 
+
+    def test_astype_wrapper_len(self):
+        dset = self.f.create_dataset('x', (100,), dtype='i2')
+        dset[...] = np.arange(100)
+        self.assertEqual(100, len(dset.astype('f4')))
+
+
 class TestScalarCompound(BaseDataset):
 
     """
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/h5py-3.3.0/h5py/tests/test_dataset_getitem.py 
new/h5py-3.4.0/h5py/tests/test_dataset_getitem.py
--- old/h5py-3.3.0/h5py/tests/test_dataset_getitem.py   2021-05-09 
13:55:36.000000000 +0200
+++ new/h5py-3.4.0/h5py/tests/test_dataset_getitem.py   2021-08-20 
14:27:02.000000000 +0200
@@ -366,7 +366,13 @@
     def test_mask(self):
         """ mask -> ndarray of matching shape """
         mask = np.ones((0,), dtype='bool')
-        self.assertNumpyBehavior(self.dset, self.data, np.s_[mask])
+        self.assertNumpyBehavior(
+            self.dset,
+            self.data,
+            np.s_[mask],
+            # Fast reader doesn't work with boolean masks
+            skip_fast_reader=True,
+        )
 
     def test_fieldnames(self):
         """ field name -> ValueError (no fields) """
@@ -481,13 +487,31 @@
             self.dset[[1,1,2]]
 
     def test_mask_true(self):
-        self.assertNumpyBehavior(self.dset, self.data, np.s_[self.data > -100])
+        self.assertNumpyBehavior(
+            self.dset,
+            self.data,
+            np.s_[self.data > -100],
+            # Fast reader doesn't work with boolean masks
+            skip_fast_reader=True,
+        )
 
     def test_mask_false(self):
-        self.assertNumpyBehavior(self.dset, self.data, np.s_[self.data > 100])
+        self.assertNumpyBehavior(
+            self.dset,
+            self.data,
+            np.s_[self.data > 100],
+            # Fast reader doesn't work with boolean masks
+            skip_fast_reader=True,
+        )
 
     def test_mask_partial(self):
-        self.assertNumpyBehavior(self.dset, self.data, np.s_[self.data > 5])
+        self.assertNumpyBehavior(
+            self.dset,
+            self.data,
+            np.s_[self.data > 5],
+            # Fast reader doesn't work with boolean masks
+            skip_fast_reader=True,
+        )
 
     def test_mask_wrongsize(self):
         """ we require the boolean mask shape to match exactly """
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/h5py-3.3.0/h5py/tests/test_dtype.py 
new/h5py-3.4.0/h5py/tests/test_dtype.py
--- old/h5py-3.3.0/h5py/tests/test_dtype.py     2021-06-22 12:28:44.000000000 
+0200
+++ new/h5py-3.4.0/h5py/tests/test_dtype.py     2021-08-12 13:30:42.000000000 
+0200
@@ -287,7 +287,7 @@
             self.assertArrayEqual(fd['data'], data)
 
     def test_float_round_tripping(self):
-        dtypes = set(f for f in np.typeDict.values()
+        dtypes = set(f for f in np.sctypeDict.values()
                      if (np.issubdtype(f, np.floating) or
                          np.issubdtype(f, np.complexfloating)))
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/h5py-3.3.0/h5py/tests/test_file.py 
new/h5py-3.4.0/h5py/tests/test_file.py
--- old/h5py-3.3.0/h5py/tests/test_file.py      2021-06-22 12:28:44.000000000 
+0200
+++ new/h5py-3.4.0/h5py/tests/test_file.py      2021-07-21 12:48:19.000000000 
+0200
@@ -240,6 +240,12 @@
         self.assertEqual(fid.driver, 'stdio')
         fid.close()
 
+        # Testing creation with append flag
+        fid = File(self.mktemp(), 'a', driver='stdio')
+        self.assertTrue(fid)
+        self.assertEqual(fid.driver, 'stdio')
+        fid.close()
+
     @ut.skipUnless(os.name == 'posix', "Sec2 driver is supported on posix")
     def test_sec2(self):
         """ Sec2 driver is supported on posix """
@@ -248,6 +254,12 @@
         self.assertEqual(fid.driver, 'sec2')
         fid.close()
 
+        # Testing creation with append flag
+        fid = File(self.mktemp(), 'a', driver='sec2')
+        self.assertTrue(fid)
+        self.assertEqual(fid.driver, 'sec2')
+        fid.close()
+
     def test_core(self):
         """ Core driver is supported (no backing store) """
         fname = self.mktemp()
@@ -257,6 +269,12 @@
         fid.close()
         self.assertFalse(os.path.exists(fname))
 
+        # Testing creation with append flag
+        fid = File(self.mktemp(), 'a', driver='core')
+        self.assertTrue(fid)
+        self.assertEqual(fid.driver, 'core')
+        fid.close()
+
     def test_backing(self):
         """ Core driver saves to file when backing store used """
         fname = self.mktemp()
@@ -762,6 +780,14 @@
             assert f
             assert f.driver == 'mpio'
 
+    def test_mpio_append(self, mpi_file_name):
+        """ Testing creation of file with append """
+        from mpi4py import MPI
+
+        with File(mpi_file_name, 'a', driver='mpio', comm=MPI.COMM_WORLD) as f:
+            assert f
+            assert f.driver == 'mpio'
+
     @pytest.mark.skipif(h5py.version.hdf5_version_tuple < (1, 8, 9),
         reason="mpio atomic file operations were added in HDF5 1.8.9+")
     def test_mpi_atomic(self, mpi_file_name):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/h5py-3.3.0/h5py/version.py 
new/h5py-3.4.0/h5py/version.py
--- old/h5py-3.3.0/h5py/version.py      2021-06-22 14:06:03.000000000 +0200
+++ new/h5py-3.4.0/h5py/version.py      2021-08-23 10:28:23.000000000 +0200
@@ -23,7 +23,7 @@
 
 hdf5_built_version_tuple = _h5.HDF5_VERSION_COMPILED_AGAINST
 
-version_tuple = _H5PY_VERSION_CLS(3, 3, 0, None, None, None)
+version_tuple = _H5PY_VERSION_CLS(3, 4, 0, None, None, None)
 
 version = "{0.major:d}.{0.minor:d}.{0.bugfix:d}".format(version_tuple)
 if version_tuple.pre is not None:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/h5py-3.3.0/h5py.egg-info/PKG-INFO 
new/h5py-3.4.0/h5py.egg-info/PKG-INFO
--- old/h5py-3.3.0/h5py.egg-info/PKG-INFO       2021-06-22 14:25:32.000000000 
+0200
+++ new/h5py-3.4.0/h5py.egg-info/PKG-INFO       2021-08-23 10:31:52.000000000 
+0200
@@ -1,6 +1,6 @@
 Metadata-Version: 1.2
 Name: h5py
-Version: 3.3.0
+Version: 3.4.0
 Summary: Read and write HDF5 files from Python
 Home-page: http://www.h5py.org
 Author: Andrew Collette
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/h5py-3.3.0/h5py.egg-info/SOURCES.txt 
new/h5py-3.4.0/h5py.egg-info/SOURCES.txt
--- old/h5py-3.3.0/h5py.egg-info/SOURCES.txt    2021-06-22 14:25:32.000000000 
+0200
+++ new/h5py-3.4.0/h5py.egg-info/SOURCES.txt    2021-08-23 10:31:52.000000000 
+0200
@@ -1,4 +1,3 @@
-AUTHORS
 LICENSE
 MANIFEST.in
 README.rst
@@ -53,6 +52,7 @@
 docs/whatsnew/3.1.rst
 docs/whatsnew/3.2.rst
 docs/whatsnew/3.3.rst
+docs/whatsnew/3.4.rst
 docs/whatsnew/index.rst
 docs_api/Makefile
 docs_api/automod.py
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/h5py-3.3.0/setup.py new/h5py-3.4.0/setup.py
--- old/h5py-3.3.0/setup.py     2021-06-22 14:06:03.000000000 +0200
+++ new/h5py-3.4.0/setup.py     2021-08-23 10:28:23.000000000 +0200
@@ -22,7 +22,7 @@
 import setup_build, setup_configure
 
 
-VERSION = '3.3.0'
+VERSION = '3.4.0'
 
 # Minimum supported versions of Numpy & Cython depend on the Python version
 NUMPY_MIN_VERSIONS = [
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/h5py-3.3.0/tox.ini new/h5py-3.4.0/tox.ini
--- old/h5py-3.3.0/tox.ini      2021-06-22 12:28:44.000000000 +0200
+++ new/h5py-3.4.0/tox.ini      2021-08-12 13:30:42.000000000 +0200
@@ -100,4 +100,4 @@
     lazyasd
     ruamel.yaml
 commands=
-    rever check --activities authors,version_bump,changelog
+    rever check --activities version_bump,changelog

Reply via email to