From 77425d87de9ee4590c6dc0b7289cb50223e93d0397cc700fa3f3ca53c56c4f77 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrian=20Schr=C3=B6ter?= Date: Fri, 3 May 2024 20:55:55 +0200 Subject: [PATCH] Sync from SUSE:SLFO:Main python-h5py revision 292d969259e119bf5dca18217924354f --- .gitattributes | 23 ++ _multibuild | 4 + h5py-3.10.0.tar.gz | 3 + python-h5py.changes | 617 ++++++++++++++++++++++++++++++++++++++++++++ python-h5py.spec | 140 ++++++++++ 5 files changed, 787 insertions(+) create mode 100644 .gitattributes create mode 100644 _multibuild create mode 100644 h5py-3.10.0.tar.gz create mode 100644 python-h5py.changes create mode 100644 python-h5py.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/_multibuild b/_multibuild new file mode 100644 index 0000000..b6e7f9f --- /dev/null +++ b/_multibuild @@ -0,0 +1,4 @@ + + openmpi4 + + diff --git a/h5py-3.10.0.tar.gz b/h5py-3.10.0.tar.gz new file mode 100644 index 0000000..185a091 --- /dev/null +++ b/h5py-3.10.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d93adc48ceeb33347eb24a634fb787efc7ae4644e6ea4ba733d099605045c049 +size 403716 diff --git a/python-h5py.changes b/python-h5py.changes new file mode 100644 index 0000000..822bb22 --- /dev/null +++ b/python-h5py.changes @@ -0,0 +1,617 @@ +------------------------------------------------------------------- +Sat Dec 16 19:04:27 UTC 2023 - Dirk Müller + +- update to 3.10.0: + * The read-only S3 file driver ('ros3') now accepts an AWS session + token as part of the credentials (:pr:`2301`). Pass session_token + when opening a :class:`.File` (along with the other S3 parameters). + This requires HDF5 1.14.2 or later, with the ROS3 feature built. + * Support for the HDF5 1.8 series was dropped, along with early 1.10 + releases. The minimum required HDF5 version is now 1.10.4. + * Exposing HDF5 functions + * H5Pget_fapl_ros3_token & H5Pset_fapl_ros3_token + * Various nasty bugs when using nested compound and vlen data types + have been fixed (:pr:`2134`). + * Fixed an OverflowError in some cases when registering a filter + with :func:`h5z.register_filter`, especially on 32-bit + architectures (:pr:`2318`). + * Sequential slicing/indexing operations on a :class:`.VirtualSource` + object (e.g. source[:10][::2]) now raise an error, rather than + giving incorrect results (:pr:`2280`). + +------------------------------------------------------------------- +Mon Oct 23 12:04:17 UTC 2023 - Nicolas Morey + +- Drop support for obsolete openmpi[123] +- Prepare support for openmpi5 + +------------------------------------------------------------------- +Tue Aug 22 18:22:43 UTC 2023 - Ben Greiner + +- Update to 3.9.0 + * This version of h5py requires Python 3.8 or above. + ## New features + * New out argument to read_direct_chunk() to allow passing the + output buffer (PR 2232). + * The objects from Dataset.asstr() and Dataset.astype() now + implement the __array__() method (PR 2269). This speeds up + access for functions that support it, such as np.asarray(). + * Validate key types when creating groups and attributes, giving + better error messages when invalid types are used (PR 2266). + ## Deprecations & removals + * Using Dataset.astype() as a context manager has been removed, + after being deprecated in h5py 3.6. Read data by slicing the + returned object instead: dset.astype('f4')[:]. + * Exposing HDF5 functions + * H5Pget_elink_acc_flags & H5Pset_elink_acc_flags as + h5py.h5p.PropLAID.get_elink_acc_flags() & + h5py.h5p.PropLAID.set_elink_acc_flags(): access the external + link file access traversal flags in a link access property list + (PR 2244). + * H5Zregister as h5py.h5z.register_filter(): register an HDF5 + filter (PR 2229). + ## Bug fixes + * Group.__contains__ and Group.get now use the default link + access property list systematically (PR 2244). + * Removed various calls to the deprecated numpy.product function + (PR 2242 & PR 2273). + * Fix the IPython tab-completion integration in IPython 8.12 (PR + 2256). + * Replacing attributes with AttributeManager.create() now deletes + the old attributes before creating the new one, rather than + using a temporary name and renaming the new attribute (PR + 2274). This should avoid some confusing bugs affecting + attributes. However, failures creating an attribute are less + likely to leave an existing attribute of the same name in + place. To change an attribute value without changing its shape + or dtype, use modify() instead. + ## Building h5py + * When building with Parallel HDF5 support, the version of mpi4py + used on various Python versions is increased to 3.1.1, fixing + building with a newer setuptools (PR 2225). + * Some fixes towards compatibility with the upcoming Cython 3 (PR + 2247). + +------------------------------------------------------------------- +Thu Feb 16 10:05:30 UTC 2023 - Ben Greiner + +- Clean up build and runtime requirements +- Drop python-h5py-relax-dependency-versions.patch -- it has become + a noop at the last refresh. +- Only build for supported pythons (>= 3.7) +- PEP517 build + +------------------------------------------------------------------- +Wed Feb 8 18:59:18 UTC 2023 - Arun Persaud + +- specfile: + * update copyright year + * update patch + +- update to version 3.8.0: + * New features + + h5py now has pre-built packages for Python 3.11. + + h5py is compatible with HDF5 1.14 (:pr:`2187`). Pre-built + packages on PyPI still include HDF5 1.12 for now. + + :ref:`dataset_fancy` now accepts tuples, or any other sequence + type, rather than only lists and NumPy arrays. This also + includes range objects, but this will normally be less efficient + than the equivalent slice. + + New property :attr:`.Dataset.is_scale` for checking if the + dataset is a dimension scale (:pr:`2168`). + + :meth:`.Group.require_dataset` now validates maxshape for + resizable datasets (:pr:`2116`). + + :class:`.File` now has a meta_block_size argument and + property. This influences how the space for metadata, including + the initial header, is allocated. + + Chunk cache can be configured per individual HDF5 dataset + (:pr:`2127`). Use :meth:`.Group.create_dataset` for new datasets + or :meth:`.Group.require_dataset` for already existing + datasets. Any combination of the rdcc_nbytes, rdcc_w0, and + rdcc_nslots arguments is allowed. The file defaults apply to + those omitted. + + HDF5 file names for ros3 driver can now also be s3:// resource + locations (:pr:`2140`). h5py will translate them into AWS + path-style URLs for use by the driver. + + When using the ros3 driver, AWS authentication will be activated + only if all three driver arguments are provided. Previously AWS + authentication was active if any one of the arguments was set + causing an error from the HDF5 library. + + :meth:`.Dataset.fields` now implements the __array__() method + (:pr:`2151`). This speeds up accessing fields with functions + that expect this, like np.asarray(). + + Low-level :meth:`h5py.h5d.DatasetID.chunk_iter` method that + invokes a user-supplied callable object on every written chunk + of one dataset (:pr:`2202`). It provides much better performance + when iterating over a large number of chunks. + * Exposing HDF5 functions + + H5Dchunk_iter as :meth:`h5py.h5d.DatasetID.chunk_iter`. + + H5Pset_meta_block_size and H5Pget_meta_block_size (:pr:`2106`). + * Bug fixes + + Fixed getting the default fill value (an empty string) for + variable-length string data (:pr:`2132`). + + Complex float16 data could cause a TypeError when trying to + coerce to the currently unavailable numpy.dtype('c4'). Now a + compound type is used instead (:pr:`2157`). + + h5py 3.7 contained a performance regression when using a boolean + mask array to index a 1D dataset, which is now fixed + (:pr:`2193`). + * Building h5py + + Parallel HDF5 can be built with Microsoft MS-MPI + (:pr:`2147`). See :ref:`build_mpi` for details. + + Some 'incompatible function pointer type' compile time warnings + were fixed (:pr:`2142`). + + Fix for finding HDF5 DLL in mingw (:pr:`2105`). + +------------------------------------------------------------------- +Sun May 29 15:47:49 UTC 2022 - Atri Bhattacharya + +- Update to version 3.7.0: + * Provide the ability to use the Direct Virtual File Driver + (VFD) from HDF5 (Linux only). + * The :class:`.File` constructor contains two new parameters + alignment_threshold, and alignment_interval controling the + data alignment within the HDF5 file (gh#h5py/h5py#2040). + * :meth:`~.Group.create_dataset` and + :meth:`~.Group.require_dataset` now accept parameters + efile_prefix and virtual_prefix to set a filesystem path + prefix to use to find files for external datasets and for + virtual dataset sources (gh#h5py/h5py#2092). These only affect + the current access; the prefix is not stored in the file. + * Bugs fixed: + - Fix a deadlock which was possible when the same dataset was + accessed from multiple threads (gh#h5py/h5py#2064). + - New attributes are created directly, instead of via a + temporary attribute with subsequent renaming. This fixes + overwriting attributes with track_order=True. + - Fix for building with mpi4py on Python 3.10 + (gh#h5py/h5py#2101). + - Fixed fancy indexing with a boolean array for a single + dimension (gh#h5py/h5py#2079). + - Avoid returning unitialised memory when reading from a + chunked dataset with missing chunks and no fill value + (gh#h5py/h5py#2076). + - Enable setting of fillvalue for datasets with variable + length string dtype (gh#h5py/h5py#2044). + - Closing a file or calling get_obj_ids() no longer re-enables + Python garbage collection if it was previously disabled + (gh#h5py/h5py#2020). +- Refresh python-h5py-relax-dependency-versions.patch for updated + version. + +------------------------------------------------------------------- +Fri Mar 4 11:43:46 UTC 2022 - Atri Bhattacharya + +- Update to version 3.6.0: + * Using :meth:`.Dataset.astype` as a context manager (with + dset.astype(t):) is deprecated. Slice the object returned by + astype instead (data = dset.astype(t)[:10]). + * Getting the value of h5py.get_config().default_file_mode now + issues a deprecation warning. This has been 'r' by default + from h5py 3.0, and cannot be changed since 3.3. +- Rebase python-h5py-relax-dependency-versions.patch to apply + against updated version. +- Also enforce %requires_eq on hdf5 to force rebuilds when hdf5 + gets version updates in Factory (boo#1196682). +- Skip tests marked with 'mpi_skip' when building with openmpi + flavours (see e.g., https://github.com/h5py/h5py/issues/1997). + +------------------------------------------------------------------- +Thu Sep 9 16:08:42 UTC 2021 - Matej Cepl + +- Correct order of definitions to generate multiple packages for + multiple builds. + +------------------------------------------------------------------- +Sun Sep 5 16:38:52 UTC 2021 - Arun Persaud + +- 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`). + +------------------------------------------------------------------- +Wed Jun 23 09:37:01 UTC 2021 - andy great + +- Update to version 3.3.0. + * New features + * Compatibility with the upcoming HDF5 1.12.1 and possibly 1.14. + * H5T_BITFIELD types will now be cast to their numpy.uint + equivalent by default (:issue:`1258`). This means that + no knowledge of mixed type compound dataset schemas is + required to read these types, and can simply be read as + follows: arr = dset[:] + Alternatively, 8-bit bitfields can still be cast to booleans + explicitly: arr = dset.astype(numpy.bool_)[:] + * Key types are validated when accessing groups, to give more + helpful errors when a group is indexed like a dataset. + * A new :meth:`.Group.build_virtual_dataset` method acting as + a context manager to assemble virtual datasets. + * If the source and target of a virtual dataset mapping have + different numbers of points, an error should now be thrown + when you make the mapping in the :class:`VirtualLayout`, + rather than later when writing this into the file. This + should make it easier to find the source of such errors. + * Deprecations + * The default_file_mode config option is deprecated, and setting + it to values other than 'r' (for read-only mode) is no longer + allowed. Pass the mode when creating a :class:`.File` object + instead of setting a global default. + * Bug fixes + * Trying to open a file in append mode ('a') should now give + clearer error messages when the file exists but can't be opened. + * Protect :func:`h5py.h5f.get_obj_ids` against garbage collection + invalidating HDF5 IDs while it is retrieving them. + * Make file closing more robust, including when closing files + while the interpreter is shutting down, by using lower-level + code to close HDF5 IDs of objects inside the file. +- Updates for version 3.2.0. + * New features + * Added support to use the HDF5 ROS3 driver to access HDF5 files + on S3. + * Breaking changes & deprecations + * Setting the config option default_file_mode to values other + than 'r' is deprecated. Pass the desired mode when opening a + :class:`~.File` instead. + * Exposing HDF5 functions + * H5Pset_fapl_ros3 & H5Pget_fapl_ros3 (where HDF5 is built with + read-only S3 support). + * Bug fixes + * :exc:`OSError` exceptions raised by h5py should now have a + useful .errno attribute, where HDF5 provides this information. + Subclasses such as :exc:`FileNotFoundError` should also be + raised where appropriate. + * Fix reading data with a datatype of variable-length arrays of + fixed length strings. + * Fix :meth:`.Dataset.read_direct` and :meth:`.Dataset.write_direct` + when the source and destination have different shapes. + * Fix selecting data using integer indices in + :meth:`.Dataset.read_direct` and :meth:`.Dataset.write_direct`. + * Fix exception handling in :meth:`.Group.visititems`. + * Issue a warning when File(..., swmr=True) is specified with + any mode other than 'r', as the SWMR option is ignored in + these cases. + * Fix NumPy 1.20 deprecation warnings concerning the use of + None as shape, and the deprecated aliases np.float, np.int + and np.bool. + * 3.2.1 bug fix release + * Fix :attr:`.File.driver` when the read-only S3 driver is + available. +- Rebase python-h5py-relax-dependency-versions.patch + +------------------------------------------------------------------- +Thu Feb 18 19:40:45 UTC 2021 - Ben Greiner + +- Skip python36 build. NumPy 1.20 in Tumbleweed dropped support for + Python 3.6 (NEP 29) +- Fix sitearch handling between regular and mpi builds suitable for + singlespec with multiple python3 flavors +- Refine requirement versions based on Python version + +------------------------------------------------------------------- +Wed Jan 20 13:26:43 UTC 2021 - John Vandenberg + +- Add runtime dependency cached-property based on Python version + +------------------------------------------------------------------- +Fri Dec 11 13:48:30 UTC 2020 - Atri Bhattacharya + +- Replace %__python3 usage by %python_exec. + +------------------------------------------------------------------- +Fri Dec 4 03:15:34 UTC 2020 - Atri Bhattacharya + +- Enable parallel hdf5: + * Implement multibuild for different flavors of openmpi. + * Export env variables `HDF5_LIBDIR` and `HDF5_INCLUDEDIR` + pointing to the hdf library and headers location when enabling + openmpi flavored builds. + * Add BuildRequires: python-pytest-mpi for mpi tests. + * Replace python rpm macros with their expansions in most cases + to adapt to mpi paths. + +------------------------------------------------------------------- +Thu Nov 26 14:55:53 UTC 2020 - Atri Bhattacharya + +- Update to version 3.1.0: + * See https://docs.h5py.org/en/latest/whatsnew/3.1.html for list + of changes. +- Changes from version 3.0.0: See + https://docs.h5py.org/en/latest/whatsnew/3.0.html +- Drop upstreamed patches: + * remove_unittest2.patch. + * no_include_opt.patch. +- Add python-h5py-relax-dependency-versions.patch to allow building + against more recent versions of numpy than minimally required. +- Python 2 is no longer supported; at least version 3.6 is + required. +- Run all tests except: + * MPI based ones, as we build against the non-mpi version of + hdf5. + * Offset test which overflows on 32-bit. +- Tests require python-cached-property for openSUSE <= 1500. +- Fix `requires_eq` on libhdf5 (oS:F now has libhdf_hl103) + already. + +------------------------------------------------------------------- +Mon May 11 07:45:48 UTC 2020 - Dirk Mueller + +- ensure rebuild when hdf5 version changes (bsc#1150049) + +------------------------------------------------------------------- +Fri Sep 13 13:12:21 UTC 2019 - Tomáš Chvátal + +- Update to 2.10.0: + * no upstream changelog provided +- Update patch remove_unittest2.patch +- Remove upstream merged fix_failing_x86_test.patch + +------------------------------------------------------------------- +Wed Jul 31 19:43:07 UTC 2019 - Todd R + +- Add fix_failing_x86_test.patch + Fixes spurious test failure on x86 platfomrs + See gh#h5py/h5py#1163 + From gh#h5py/h5py#1235 + +------------------------------------------------------------------- +Mon Mar 11 12:38:35 UTC 2019 - Tomáš Chvátal + +- Yodate to 2.9.0: + Changes from 2.8.0 are too numerous to list here, complete changelog + is available online at https://github.com/h5py/h5py/releases +- Drop merged patch adjust_mapping_hdf5_error_codes.patch +- Refresh remove_unittest2.patch + +------------------------------------------------------------------- +Tue Dec 4 02:51:00 UTC 2018 - Todd R + +- Use more reliable test invocation + +------------------------------------------------------------------- +Fri Oct 12 15:00:53 UTC 2018 - Matej Cepl + +- Remove valuerror-typerror-failing-tests.patch and replace it with + proper patch (https://github.com/tacaswell/h5py/commit/6653c65e8c8d0.patch) + in adjust_mapping_hdf5_error_codes.patch. + +------------------------------------------------------------------- +Thu Oct 11 16:34:58 UTC 2018 - Todd R + +- Fix ldconfig syntax errors. + +------------------------------------------------------------------- +Wed Oct 10 14:05:08 UTC 2018 - Matěj Cepl + +- Add valuerror-typerror-failing-tests.patch to make two tests pass. + +------------------------------------------------------------------- +Mon Aug 13 08:55:13 UTC 2018 - mcepl@suse.com + +- Updated to 2.8.0 + Changes from 2.7.1 are too numerous to list here, complete changelog + is available online at https://github.com/h5py/h5py/releases + Patch dont_reorder_compund.patch has been included upstream +- Remove dependency on unittest2 + Patch remove_unittest2.patch facilitates the change + +------------------------------------------------------------------- +Thu Jan 25 22:04:22 UTC 2018 - toddrme2178@gmail.com + +- Add dont_reorder_compund.patch + Fixes builds with numpy 1.14. See: + https://github.com/h5py/h5py/issues/969 + https://github.com/h5py/h5py/pull/970 + +------------------------------------------------------------------- +Sun Nov 12 17:01:49 UTC 2017 - arun@gmx.de + +- update patch + +- update to version 2.7.1: + * Bug fixes + + :issue:`903` Fixed critical issue with cyclic gc which resulted + in segfaults + + :issue:`904` Avoid unaligned access fixing h5py on sparc64 + + :issue:`883` Fixed compilation issues for some library locations + + :issue:`868` Fix deadlock between phil and the import lock in + py2 + + :issue:`841` Improve windows handling if filenames + + :issue:`874` Allow close to be called on file multiple times + + :issue:`867`, :issue:`872` Warn on loaded vs complied hdf5 + version issues + + :issue:`902` Fix overflow computing size of dataset on windows + + :issue:`912` Do not mangle capitalization of filenames in error + messages + + :issue:`842` Fix longdouble on ppc64le + + :issue:`862`, :issue:`916` Fix compounds structs with + variable-size members + +------------------------------------------------------------------- +Thu May 11 18:04:04 UTC 2017 - toddrme2178@gmail.com + +- Implement single-spec version +- Fix source URL +- Update to version 0.2.7 + * Python 3.2 is no longer supported + * Improved testing support + * Improved python compatibility + * Documentation improvements + * setup.py improvements + * Support for additional HDF5 features added + * Improvements to type system +- Update to version 0.2.6 + * Support for HDF5 Virtual Dataset API + * Add MPI Collective I/O Support + * Numerous build/testing/CI improvements + * Cleanup of codebase based on pylint + * Fixes to low-level API + * Documentation improvements +- Add no_include_opt.patch to avoid including forbidden + directories. + +------------------------------------------------------------------- +Tue Jul 28 10:34:21 UTC 2015 - toddrme2178@gmail.com + +- Fix hdf5 version ambiguity + +------------------------------------------------------------------- +Fri Apr 10 14:15:27 UTC 2015 - toddrme2178@gmail.com + +- specfile: + * changed from 2to3 to six + * added build requirement for python3-pkgconfig + * added Cython requirement for install + * update copyright year +- update to version 2.5.0: + * Experimental SWMR support + * Group and AttributeManager classes now inherit from the appropriate ABCs + * Fixed an issue with 64-bit float VLENS + * Cython warning cleanups related to "const" + * Entire code base ported to "six"; 2to3 removed from setup.py +- update to version 2.4.0: + * This release incorporates a total re-write of the identifier + management system in h5py. As part of this refactoring, the entire + API is also now protected by threading locks. + * Files are now automatically closed when all objects within them + are unreachable. Previously, if File.close() was not explicitly + closed, files would remain open and "leaks" were possible if the + File object was lost. + * The entire API is now believed to be thread-safe (feedback + welcome!). + * External links now work if the target file is already + open. Previously this was not possible because of a mismatch in + the file close strengths. + * The options to setup.py have changed; a new top-level "configure" + command handles options like --hdf5=/path/to/hdf5 and + --mpi. Setup.py now works correctly under Python 3 when these + options are used. + * Cython (0.17+) is now required when building from source. + * The minimum NumPy version is now 1.6.1. + +------------------------------------------------------------------- +Thu Jul 17 09:35:21 UTC 2014 - toddrme2178@gmail.com + +- Update download url +- spec file cleanups + +------------------------------------------------------------------- +Mon Jul 14 16:20:53 UTC 2014 - toddrme2178@gmail.com + +- Update to 2.3.1 + - Bugfix release which fixes a build issue when using the most + recent version of HDF5 (1.8.13), and some issues with Travis-CI. + +------------------------------------------------------------------- +Thu May 8 11:23:35 UTC 2014 - toddrme2178@gmail.com + +- Update to version 2.3.0 + - Support for arbitrary vlen data + - Improved exception messages + - Improved setuptools support + - Multiple low-level additions + - Improved support for MPI features + - Readonly files can now be opened in default mode + - Single-step build for HDF5 on Windows + +------------------------------------------------------------------- +Mon Dec 16 13:56:43 UTC 2013 - toddrme2178@gmail.com + +- Update to version 2.2.1 + + Critical bugfixes + +------------------------------------------------------------------- +Tue Dec 10 14:28:44 UTC 2013 - p.drouand@gmail.com + +- Update to version 2.2.0 + + This version of h5py introduces support for MPI/Parallel HDF5, + using the mpi4py package. Parallel HDF5 is the "native" method + in HDF5 for sharing files and objects across multiple processes, + in contrast to the "threading" package or "multiprocessing". + There is a guide to using Parallel HDF5 at the h5py web site: + http://www.h5py.org/docs/topics/mpi.html + + Support for Python 3.3 + + Support for 16-bit "mini" floats + + Access to the HDF5 scale-offset filter + + Field names are now allowed when writing to a dataset + + Region references now preserve the shape of their selections + + File-resident "committed" types can be linked to datasets and attributes + + Make object mtime tracking optional + + A new "move" method on Group objects + + Many new options for Group.copy + + Access to HDF5's get_vfd_handle + + Many bug fixes +- Remove depreciated %{py_requires} +- Remove redundant %clen section +- Remove useless %post/postun sections +- Package ANN.rst, lzf/LICENSE.txt, lzf/README.txt and examples to + documentation directory + +------------------------------------------------------------------- +Wed Apr 24 03:45:08 UTC 2013 - highwaystar.ru@gmail.com + +- update to version 2.1.3 + - no changelog + +------------------------------------------------------------------- +Sun Nov 25 11:34:42 UTC 2012 - toddrme2178@gmail.com + +- Update to 2.1.0 + - No changelog + +------------------------------------------------------------------- +Thu Apr 26 02:33:56 UTC 2012 - highwaystar.ru@gmail.com + +- python3 package added + +------------------------------------------------------------------- +Sun Jan 8 00:47:03 UTC 2012 - toddrme2178@gmail.com + +- new version 2.0.1 +- cleaned up spec file +- merged changes lists + +------------------------------------------------------------------- +Thu Aug 4 02:44:19 UTC 2011 - highwaystar.ru@gmail.com + +- version bump to 2.0.0 + +------------------------------------------------------------------- +Sun May 29 00:00:00 UTC 2011 - werner.ho@gmx.de + +- fixed hdf5-devel package name change + +------------------------------------------------------------------- +Thu Mar 17 00:00:00 UTC 2011 - werner.ho@gmx.de + +- new version 1.3.1 + +------------------------------------------------------------------- +Sun Sep 19 00:00:00 UTC 2010 - werner.ho@gmx.de + +- fixed libhdf5-dependancy + +------------------------------------------------------------------- +Mon Jul 5 03:12:54 UTC 2010 - highwaystar.ru@gmail.com + +- fixed libhdf5-devel to hdf5-devel + +------------------------------------------------------------------- +Mon Mar 22 08:39:48 UTC 2010 - highwaystar.ru@gmail.com + +- initial release for openSUSE +- version 1.3.0 + +------------------------------------------------------------------- +Mon Mar 22 00:00:00 UTC 2010 - tomin@frame10 + +- initial build for openSUSE diff --git a/python-h5py.spec b/python-h5py.spec new file mode 100644 index 0000000..cc9b085 --- /dev/null +++ b/python-h5py.spec @@ -0,0 +1,140 @@ +# +# spec file +# +# Copyright (c) 2023 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%global flavor @BUILD_FLAVOR@%{nil} +%define pname python-h5py +# SECTION MPI DEFINITIONS +%if "%{flavor}" == "openmpi4" +%global mpi_flavor openmpi +%define mpi_vers 4 +%endif +%if "%{flavor}" == "openmpi5" +%global mpi_flavor openmpi +%define mpi_vers 5 +%endif + +%{?mpi_flavor:%{bcond_without mpi}}%{!?mpi_flavor:%{bcond_with mpi}} +%{?with_mpi:%{!?mpi_flavor:error "No MPI family specified!"}} + +%if %{with mpi} +%define my_prefix %{_libdir}/mpi/gcc/%{mpi_flavor}%{?mpi_vers} +%define my_bindir %{my_prefix}/bin +%define my_libdir %{my_prefix}/%{_lib} +%define my_incdir %{my_prefix}/include +%define my_suffix -%{mpi_flavor}%{?mpi_vers} +%define my_sitearch_in_expand %{my_libdir}/python%{$python_version}/site-packages +%else +%define my_prefix %{_prefix} +%define my_bindir %{_bindir} +%define my_libdir %{_libdir} +%define my_incdir %{_includedir} +%define my_datadir %{_datadir} +%define my_sitearch_in_expand %{$python_sitearch} +%endif +# /SECTION MPI DEFINITIONS +Name: %{pname}%{?my_suffix} +Version: 3.10.0 +Release: 0 +Summary: Python interface to the Hierarchical Data Format library +License: BSD-3-Clause +Group: Development/Libraries/Python +URL: https://github.com/h5py/h5py +Source: https://files.pythonhosted.org/packages/source/h/h5py/h5py-%{version}.tar.gz +BuildRequires: %{python_module Cython >= 0.29 with %python-Cython < 1} +BuildRequires: %{python_module devel >= 3.8} +BuildRequires: %{python_module numpy-devel >= 1.17.3} +BuildRequires: %{python_module pip} +BuildRequires: %{python_module pkgconfig} +BuildRequires: %{python_module pytest} +BuildRequires: %{python_module setuptools >= 61} +BuildRequires: %{python_module wheel} +BuildRequires: fdupes +BuildRequires: hdf5%{?my_suffix}-devel +BuildRequires: python-rpm-macros +%requires_eq hdf5%{?my_suffix} +%requires_eq libhdf5%{?my_suffix} +Requires: python-numpy >= 1.17.3 +%if %{with mpi} +BuildRequires: %{mpi_flavor}%{mpi_vers}-devel +BuildRequires: %{python_module mpi4py >= 3.1.1 if %python-base < 3.11} +BuildRequires: %{python_module mpi4py >= 3.1.4 if %python-base >= 3.11} +BuildRequires: %{python_module pytest-mpi} +Requires: python-mpi4py >= 3.1.1 +%endif +%python_subpackages + +%description +H5py provides a simple, robust read/write interface to HDF5 data from Python. +Existing Python and Numpy concepts are used for the interface; for example, +datasets on disk are represented by a proxy class that supports slicing, and +has dtype and shape attributes. HDF5 groups are presented using a dictionary +metaphor, indexed by name. + +%prep +%autosetup -p1 -n h5py-%{version} + +%build +%if %{with mpi} +source %{my_bindir}/mpivars.sh +export CC=mpicc +export HDF5_MPI="ON" +export HDF5_LIBDIR=%{my_libdir} +export HDF5_INCLUDEDIR=%{my_incdir} +%endif +export CFLAGS="%{optflags} -fno-strict-aliasing" +%pyproject_wheel + +%install +%if %{with mpi} +%pyproject_install --prefix %{my_prefix} +%else +%pyproject_install +%endif +%python_expand %fdupes %{buildroot}%{my_sitearch_in_expand}/h5py/ + +%check +donttest="dummytest" +%ifarch %{ix86} %{arm} +# overflow +donttest="test_float_round_tripping or test_register_filter" +%endif +%{python_expand # +%if %{with mpi} +source %{my_bindir}/mpivars.sh +%endif +export LD_LIBRARY_PATH=%{my_libdir} +export PYTHONPATH=%{buildroot}%{my_sitearch_in_expand} +export PYTHONDONTWRITEBYTECODE=1 +pytest-%{$python_bin_suffix} %{buildroot}%{my_sitearch_in_expand}/h5py/ \ +%{?with_mpi:-k "not ($donttest)" -m 'not mpi_skip'}%{!?with_mpi:-k "not (TestMPI or $donttest)"} +} + +%files %{python_files} +%license lzf/LICENSE.txt +%doc README.rst lzf/README.txt examples licenses/* +%if %{with mpi} +%dir %{my_libdir}/python%{python_version} +%dir %{my_libdir}/python%{python_version}/site-packages +%{my_libdir}/python%{python_version}/site-packages/h5py +%{my_libdir}/python%{python_version}/site-packages/h5py-%{version}*-info +%else +%{python_sitearch}/h5py/ +%{python_sitearch}/h5py-%{version}*-info +%endif + +%changelog