Up to [cvs.NetBSD.org] / pkgsrc / devel / py-h5py
Request diff between arbitrary revisions
Default branch: MAIN
Revision 1.11 / (download) - annotate - [select for diffs], Thu Aug 31 11:58:40 2023 UTC (3 weeks, 5 days ago) by adam
Branch: MAIN
CVS Tags: HEAD
Changes since 1.10: +4 -5
lines
Diff to previous 1.10 (colored)
py-h5py: updated to 3.9.0 What's new in h5py 3.9 ====================== This version of h5py requires Python 3.8 or above. New features ------------ * New ``out`` argument to :meth:`~h5py.h5d.DatasetID.read_direct_chunk` to allow passing the output buffer (:pr:`2232`). * The objects from :meth:`.Dataset.asstr` and :meth:`.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 :meth:`.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 :meth:`h5py.h5p.PropLAID.get_elink_acc_flags` & :meth:`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 :func:`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 :meth:`.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 :meth:`~.AttributeManager.modify` instead. Building h5py ------------- * When building with :ref:`parallel` 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`).
Revision 1.10 / (download) - annotate - [select for diffs], Tue Oct 26 10:18:32 2021 UTC (23 months ago) by nia
Branch: MAIN
CVS Tags: pkgsrc-2023Q2-base,
pkgsrc-2023Q2,
pkgsrc-2023Q1-base,
pkgsrc-2023Q1,
pkgsrc-2022Q4-base,
pkgsrc-2022Q4,
pkgsrc-2022Q3-base,
pkgsrc-2022Q3,
pkgsrc-2022Q2-base,
pkgsrc-2022Q2,
pkgsrc-2022Q1-base,
pkgsrc-2022Q1,
pkgsrc-2021Q4-base,
pkgsrc-2021Q4
Changes since 1.9: +2 -2
lines
Diff to previous 1.9 (colored)
archivers: Replace RMD160 checksums with BLAKE2s checksums All checksums have been double-checked against existing RMD160 and SHA512 hashes Could not be committed due to merge conflict: devel/py-traitlets/distinfo The following distfiles were unfetchable (note: some may be only fetched conditionally): ./devel/pvs/distinfo pvs-3.2-solaris.tgz ./devel/eclipse/distinfo eclipse-sourceBuild-srcIncluded-3.0.1.zip
Revision 1.9 / (download) - annotate - [select for diffs], Thu Oct 7 13:43:14 2021 UTC (23 months, 2 weeks ago) by nia
Branch: MAIN
Changes since 1.8: +1 -2
lines
Diff to previous 1.8 (colored)
devel: Remove SHA1 hashes for distfiles
Revision 1.8 / (download) - annotate - [select for diffs], Fri Jun 18 12:15:22 2021 UTC (2 years, 3 months ago) by nia
Branch: MAIN
CVS Tags: pkgsrc-2021Q3-base,
pkgsrc-2021Q3,
pkgsrc-2021Q2-base,
pkgsrc-2021Q2
Changes since 1.7: +2 -1
lines
Diff to previous 1.7 (colored)
py-h5py: Fix numpy requirement in setup.py for pkgsrc-friendliness
Revision 1.7 / (download) - annotate - [select for diffs], Mon Jun 7 11:57:50 2021 UTC (2 years, 3 months ago) by adam
Branch: MAIN
Changes since 1.6: +5 -5
lines
Diff to previous 1.6 (colored)
py-h5py: updated to 3.2.1 What's new in h5py 3.2 ====================== New features ------------ * Added support to use the HDF5 ROS3 driver to access HDF5 files on S3 (:pr:`1755`). This is not enabled in the pre-built packages on PyPI. To use it, ensure HDF5 is built with read-only S3 support enabled, and then :ref:`build h5py from source <source_install>` using that HDF5 library. Breaking changes & deprecations ------------------------------- * Python 3.7 is now the minimum supported version. It may still be possible to use this release with Python 3.6, but it isn't tested and wheels are not provided for Python 3.6. * 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 (:pr:`1815`). * Fix reading data with a datatype of variable-length arrays of fixed length strings (:issue:`1817`). * Fix :meth:`.Dataset.read_direct` and :meth:`.Dataset.write_direct` when the source and destination have different shapes (:pr:`1796`). * Fix selecting data using integer indices in :meth:`.Dataset.read_direct` and :meth:`.Dataset.write_direct` (:pr:`1818`). * Fix exception handling in :meth:`.Group.visititems` (:issue:`1740`). * Issue a warning when ``File(..., swmr=True)`` is specified with any mode other than ``'r'``, as the SWMR option is ignored in these cases (:pr:`1812`). * Fix NumPy 1.20 deprecation warnings concerning the use of None as shape, and the deprecated aliases np.float, np.int and np.bool (:pr:`1780`). 3.2.1 bug fix release --------------------- * Fix :attr:`.File.driver` when the read-only S3 driver is available (:pr:`1844`). What's new in h5py 3.1 ====================== Bug fixes --------- * Fix reading numeric data which is not in the native endianness, e.g. big-endian data on a little-endian system (:issue:`1729`). * Fix using bytes as names for :meth:`.Group.create_dataset` and :meth:`.Group.create_virtual_dataset` (:issue:`1732`). * Fix writing data as a list to a dataset with a sub-array data type (:issue:`1735`). Building h5py ------------- * Allow building against system lzf library by setting ``H5PY_SYSTEM_LZF=1``. See :ref:`custom_install`. Development ----------- * If pytest is missing `pytest-mpi <https://pytest-mpi.readthedocs.io/en/latest/>`_ it will now fail with a clear error. * Fix a test which was failing on big-endian systems. What's new in h5py 3.0 ====================== New features ------------ * The interface for storing & reading strings has changed - see :doc:`/strings`. The new rules are hopefully more consistent, but may well require some changes in coding using h5py. * Reading & writing data now releases the GIL, so another Python thread can continue while HDF5 accesses data. Where HDF5 can call back into Python, such as for data conversion, h5py re-acquires the GIL. However, HDF5 has its own global lock, so this won't speed up parallel data access using multithreading. * Numpy datetime and timedelta arrays can now be stored and read as HDF5 opaque data (:issue:`1339`), though other tools will not understand them. See :ref:`opaque_dtypes` for more information. * New :meth:`.Dataset.iter_chunks` method, to iterate over chunks within the given selection. * Compatibility with HDF5 1.12. * Methods which accept a shape tuple, e.g. to create a dataset, now also allow an integer for a 1D shape (:pr:`1340`). * Casting data to a specified type on reading (:meth:`.Dataset.astype`) can now be done without a with statement, like this:: data = dset.astype(np.int32)[:] * A new :meth:`.Dataset.fields` method lets you read only selected fields from a dataset with a compound datatype. * Reading data has less overhead, as selection has been implemented in Cython. Making many small reads from the same dataset can be as much as 10 times faster, but there are many factors that can affect performance. * A new NumPy-style :attr:`.Dataset.nbytes` attribute to get the size of the dataset's data in bytes. This differs from the :attr:`~.Dataset.size` attribute, which gives the number of elements. * The ``external`` argument of :meth:`.Group.create_dataset`, which specifies any external storage for the dataset, accepts more types (:issue:`1260`), as follows: * The top-level container may be any iterable, not only a list. * The names of external files may be not only ``str`` but also ``bytes`` or ``os.PathLike`` objects. * The offsets and sizes may be NumPy integers as well as Python integers. See also the deprecation related to the ``external`` argument. * Support for setting file space strategy at file creation. Includes option to persist empty space tracking between sessions. See :class:`.File` for details. * More efficient writing when assiging a scalar to a chunked dataset, when the number of elements to write is no more than the size of one chunk. * Introduced support for the split :ref:`file driver <file_driver>` (:pr:`1468`). * Allow making virtual datasets which can grow as the source data is resized - see :doc:`/vds`. * New `allow_unknown_filter` option to :meth:`.Group.create_dataset`. This should only be used if you will compress the data before writing it with the low-level :meth:`~h5py.h5d.DatasetID.write_direct_chunk` method. * The low-level chunk query API provides information about dataset chunks in an HDF5 file: :meth:`~h5py.h5d.DatasetID.get_num_chunks`, :meth:`~h5py.h5d.DatasetID.get_chunk_info` and :meth:`~h5py.h5d.DatasetID.get_chunk_info_by_coord`. * The low-level :meth:`h5py.h5f.FileID.get_vfd_handle` method now works for any file driver that supports it, not only the sec2 driver. Breaking changes & deprecations ------------------------------- * h5py now requires Python 3.6 or above; it is no longer compatible with Python 2.7. * The default mode for opening files is now 'r' (read-only). See :ref:`file_open` for other possible modes if you need to write to a file. * In previous versions, creating a dataset from a list of bytes objects would choose a fixed length string datatype to fit the biggest item. It will now use a variable length string datatype. To store fixed length strings, use a suitable dtype from :func:`h5py.string_dtype`. * Variable-length UTF-8 strings in datasets are now read as ``bytes`` objects instead of ``str`` by default, for consistency with other kinds of strings. See :doc:`/strings` for more details. * When making a virtual dataset, a dtype must be specified in :class:`.VirtualLayout`. There is no longer a default dtype, as this was surprising in some cases. * The ``external`` argument of :meth:`Group.create_dataset` no longer accepts the following forms (:issue:`1260`): * a list containing *name*, [*offset*, [*size*]]; * a list containing *name1*, *name2*, ãà and * a list containing tuples such as ``(name,)`` and ``(name, offset)`` that lack the offset or size. Furthermore, each *name*offset*ãàsize* triplet now must be a tuple rather than an arbitrary iterable. See also the new feature related to the ``external`` argument. * The MPI mode no longer supports mpi4py 1.x. * The deprecated ``h5py.h5t.available_ftypes`` dictionary was removed. * The deprecated ``Dataset.value`` property was removed. Use ``ds[()]`` to read all data from any dataset. * The deprecated functions ``new_vlen``, ``new_enum``, ``get_vlen`` and ``get_enum`` have been removed. See :doc:`/special` for the newer APIs. * Removed deprecated File.fid attribute. Use :attr:`.File.id` instead. * Remove the deprecated ``h5py.highlevel`` module. The high-level API is available directly in the ``h5py`` module. * The third argument of ``h5py._hl.selections.select()`` is now an optional high-level :class:`.Dataset` object, rather than a ``DatasetID``. This is not really a public API - it has to be imported through the private ``_hl`` module - but probably some people are using it anyway. Exposing HDF5 functions ----------------------- * H5Dget_num_chunks * H5Dget_chunk_info * H5Dget_chunk_info_by_coord * H5Oget_info1 * H5Oget_info_by_name1 * H5Oget_info_by_idx1 * H5Ovisit1 * H5Ovisit_by_name1 * H5Pset_attr_phase_change * H5Pset_fapl_split * H5Pget_file_space_strategy * H5Pset_file_space_strategy * H5Sencode1 * H5Tget_create_plist Bug fixes --------- * Fix segmentation fault when accessing vlen of strings (:issue:`1336`). * Fix the storage of non-contiguous arrays, such as numpy slices, as HDF5 vlen data (:issue:`1649`). * Fix pathologically slow reading/writing in certain conditions with integer indexing (:issue:`492`). * Fix bug when :meth:`.Group.copy` source is a high-level object and destination is a Group (:issue:`1005`). * Fix reading data for region references pointing to an empty selection. * Unregister converter functions at exit, preventing segfaults on exit in some situations with threads (:pr:`1440`). * As HDF5 1.10.6 and later support UTF-8 paths on Windows, h5py built against HDF5 1.10.6 will use UTF-8 for file names, allowing all filenames. * Fixed :meth:`h5py.h5d.DatasetID.get_storage_size` to report storage size of zero bytes without raising an exception (:issue:`1475`). * Attribute Managers (``obj.attrs``) can now work on HDF5 stored datatypes (:issue:`1476`). * Remove broken inherited ``ds.dims.values()`` and ``ds.dims.items()`` methods. The dimensions interface behaves as a sequence, not a mapping (:issue:`744`). * Fix creating attribute with :class:`.Empty` by converting its dtype to a numpy dtype object. * Fix getting :attr:`~.Dataset.maxshape` on empty/null datasets. * The :attr:`.File.swmr_mode` property is always available (:issue:`1580`). * The :attr:`.File.mode` property handles SWMR access modes in addition to plain RDONLY/RDWR modes * Importing an MPI build of h5py no longer initialises MPI immediately, which will hopefully avoid various strange behaviours. * Avoid launching a subprocess by using ``platform.machine()`` at import time. This could trigger a warning in MPI. * Removed an equality comparison with an empty array, which will cause problems with future versions of numpy. * Better error message if you try to use the mpio driver and h5py was not built with MPI support. * Improved error messages when requesting chunked storage for an empty dataset. * Data conversion functions should fail more gracefully if no memory is available. * Fix some errors for internal functions that were raising "TypeError: expected bytes, str found" instead of the correct error. * Use relative path for virtual data sources if the source dataset is in the same file as the virtual dataset. * Generic exception types used in tests' assertRaise (exception types changed in new HDF5 version) * Use ``dtype=object`` in tests with ragged arrays Building h5py ------------- * The ``setup.py configure`` command was removed. Configuration for the build can be specified with environment variables instead. See :ref:`custom_install` for details. * It is now possible to specify separate include and library directories for HDF5 via environment variables. See :ref:`custom_install` for more details. * The pkg-config name to use when looking up the HDF5 library can now be configured, this can assist with selecting the correct HDF5 library when using MPI. See :ref:`custom_install` for more details. * Using bare ``char*`` instead of ``array.array`` in h5d.read_direct_chunk since ``array.array`` is a private CPython C-API interface * Define ``NPY_NO_DEPRECATED_API`` to silence a warning. * Make the lzf filter build with HDF5 1.10 (:issue:`1219`). * If HDF5 is not loaded, an additional message is displayed to check HDF5 installation * Rely much more on the C-interface provided by Cython to call Python and NumPy. * Removed an old workaround which tried to run Cython in a subprocess if cythonize() didn't work. This shouldn't be necessary for any recent version of setuptools. * Migrate all Cython code base to Cython3 syntax * The only noticeable change is in exception raising from cython which use bytes * Massively use local imports everywhere as expected from Python3 * Explicitly mark several Cython functions as non-binding Development ----------- * Unregistering converter functions on exit (:pr:`1440`) should allow profiling and code coverage tools to work on Cython code.
Revision 1.6 / (download) - annotate - [select for diffs], Sun Jun 16 14:11:49 2019 UTC (4 years, 3 months ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2021Q1-base,
pkgsrc-2021Q1,
pkgsrc-2020Q4-base,
pkgsrc-2020Q4,
pkgsrc-2020Q3-base,
pkgsrc-2020Q3,
pkgsrc-2020Q2-base,
pkgsrc-2020Q2,
pkgsrc-2020Q1-base,
pkgsrc-2020Q1,
pkgsrc-2019Q4-base,
pkgsrc-2019Q4,
pkgsrc-2019Q3-base,
pkgsrc-2019Q3,
pkgsrc-2019Q2-base,
pkgsrc-2019Q2
Changes since 1.5: +5 -5
lines
Diff to previous 1.5 (colored)
py-h5py: updated to 2.9.0 What's new in h5py 2.9 New features * A convenient high-level API for creating virtual datasets, HDF5 objects which act as a view over one or more real datasets. See :ref:vds for details. * :class:File can now be constructed with a Python file-like object, making it easy to create an HDF5 file in memory using :class:io.BytesIO See :ref:file_fileobj for details. * :class:File now accepts parameters to control the chunk cache. See :ref:file_cache for details. * New options to record the order of insertion for attributes and group entries. Iterating over these collections now follows insertion order if it was recorded, or name order if not. * A new method :meth:Group.create_dataset_like to create a new dataset with similar properties to an existing one. * Datasets can now be created with storage backed by external non-HDF5 files * Lists or tuples of unicode strings can now be stored as HDF5 attributes * Inspecting the view returned by .keys() now shows the key names, for convenient interactive use. Exposing HDF5 functions * H5LTopen_file_image as :func:h5py.h5f.open_file_image. * External dataset storage functions H5Pset_external, H5Pget_external and H5Pget_external_count as methods on :class:h5py.h5p.PropDCID Bugfixes * Fix reading/writing of float128 data. * Converting data to float16 when creating a dataset. Support for old Python Support for Python 3.3 has been dropped. Support for Python 2.6 has been dropped.
Revision 1.5 / (download) - annotate - [select for diffs], Tue Nov 20 05:39:28 2018 UTC (4 years, 10 months ago) by markd
Branch: MAIN
CVS Tags: pkgsrc-2019Q1-base,
pkgsrc-2019Q1,
pkgsrc-2018Q4-base,
pkgsrc-2018Q4
Changes since 1.4: +5 -5
lines
Diff to previous 1.4 (colored)
py-h5py: update to 2.8.0 Features - allow registration of new drivers - add option to track object creation order Bug fixes - allow slices with stop < start as empty - improve building with custom hdf5 installation - ensure libver defaults to LIBVER_EARLIEST - improve handling of float types - support non-ascii external paths on py2 - avoid crashing IPython auto-completer API changes - deprecate ``h5t.available_ftypes``. This is no longer used internally and will be removed in the future. There is no replacement public API. - Do not sort fields in compound types. This is account for changes in numpy 1.14. - Minimum version of cython is now 0.23
Revision 1.4 / (download) - annotate - [select for diffs], Thu Nov 16 22:36:04 2017 UTC (5 years, 10 months ago) by minskim
Branch: MAIN
CVS Tags: pkgsrc-2018Q3-base,
pkgsrc-2018Q3,
pkgsrc-2018Q2-base,
pkgsrc-2018Q2,
pkgsrc-2018Q1-base,
pkgsrc-2018Q1,
pkgsrc-2017Q4-base,
pkgsrc-2017Q4
Changes since 1.3: +5 -5
lines
Diff to previous 1.3 (colored)
devel/py-h5py: Update to 2.7.1 Notable changes since 2.5.0: - Support for HDF5 Virtual Dataset API - Add MPI Collective I/O Support
Revision 1.3 / (download) - annotate - [select for diffs], Tue Nov 3 03:29:08 2015 UTC (7 years, 10 months ago) by agc
Branch: MAIN
CVS Tags: pkgsrc-2017Q3-base,
pkgsrc-2017Q3,
pkgsrc-2017Q2-base,
pkgsrc-2017Q2,
pkgsrc-2017Q1-base,
pkgsrc-2017Q1,
pkgsrc-2016Q4-base,
pkgsrc-2016Q4,
pkgsrc-2016Q3-base,
pkgsrc-2016Q3,
pkgsrc-2016Q2-base,
pkgsrc-2016Q2,
pkgsrc-2016Q1-base,
pkgsrc-2016Q1,
pkgsrc-2015Q4-base,
pkgsrc-2015Q4
Changes since 1.2: +2 -1
lines
Diff to previous 1.2 (colored)
Add SHA512 digests for distfiles for devel category Issues found with existing distfiles: distfiles/eclipse-sourceBuild-srcIncluded-3.0.1.zip distfiles/fortran-utils-1.1.tar.gz distfiles/ivykis-0.39.tar.gz distfiles/enum-1.11.tar.gz distfiles/pvs-3.2-libraries.tgz distfiles/pvs-3.2-linux.tgz distfiles/pvs-3.2-solaris.tgz distfiles/pvs-3.2-system.tgz No changes made to these distinfo files. Otherwise, existing SHA1 digests verified and found to be the same on the machine holding the existing distfiles (morden). All existing SHA1 digests retained for now as an audit trail.
Revision 1.2 / (download) - annotate - [select for diffs], Wed Sep 23 12:11:47 2015 UTC (8 years ago) by joerg
Branch: MAIN
CVS Tags: pkgsrc-2015Q3-base,
pkgsrc-2015Q3
Changes since 1.1: +4 -4
lines
Diff to previous 1.1 (colored)
Update py-h5py to 2.5.0 to sync with the API changes in devel/hdf. cython is now unconditional and the package is installed as egg.
Revision 1.1 / (download) - annotate - [select for diffs], Thu Feb 6 14:22:51 2014 UTC (9 years, 7 months ago) by drochner
Branch: MAIN
CVS Tags: pkgsrc-2015Q2-base,
pkgsrc-2015Q2,
pkgsrc-2015Q1-base,
pkgsrc-2015Q1,
pkgsrc-2014Q4-base,
pkgsrc-2014Q4,
pkgsrc-2014Q3-base,
pkgsrc-2014Q3,
pkgsrc-2014Q2-base,
pkgsrc-2014Q2,
pkgsrc-2014Q1-base,
pkgsrc-2014Q1
add py-h5py-2.2.1, Python bindings to hdf5, from Kamel Derouiche per pkgsrc-wip