Releases: BlueBrain/HighFive
Releases · BlueBrain/HighFive
v3.0.0-beta1
Version 3.0.0-beta - 2024-08-20
This version is a major one and is breaking some usage compare to v2.
Read the migration guide from the documentation: https://bluebrain.github.io/HighFive/md__2home_2runner_2work_2_high_five_2_high_five_2doc_2migration__guide.html
The minimum version for C++ has been moved to C++14
.
Removed
- Removed `read(T*, ...)`, use explicit `read_raw(T*, ...)` for `Slice` or `Attribute`. (#928)
- Removed `FixedLenStringArray`, use any container with strings instead. (#932)
- Removed `FileDriver` and `MPIOFileDriver`, use file access properties instead. (#949)
- Removed default constructor for `Group` and `DataSet`. (#947, #948)
- Broadcasting have been removed. Use `squeeze` and `reshape` feature instead. (#992)
- `ObjectCreateProps` and `ObjectAccessProps` those don't map well to HighFive and are unused. (#1002)
New Features
- Added support for `std::span`. (#987)
- Added `squeezeMemSpace` and `reshapeMemSpace` for `Attribute` and `Slice` to reshape the memory space. (#991)
- Added `ProductSet` to select a Cartesian products of (generalized) slices. (#842)
Improvements
- Optimized chained hyperslab selection. (#1031)
- Type `T[N]` or `T[N][M]` will work better. (#929)
- `DataspaceType` is now an enum class for `dataspace_scalar` or `dataspace_null`. (#900)
- `File::AccessMode` is now an enum class. (#1020)
Version 2.9.0 - 2024-01-25
New Features
- Add named ctors for scalar and null dataspaces. (#899)
- Named ctor for empty property lists. (#904)
Improvements
- Enable running tests in parallel. (#849)
- Wrap all used HDF5 function calls and always check status codes. (#863)
- Utilities for writing tests in a container independent manner. (#871)
- Improve test rigour.
Bug Fix
- Log messages were slightly misformatted. (#854)
- Fix bug in `enforce_ascii_hack`. (#856)
- Fix `create_datatype<bool>()`. (#869)
- Guard functionality introduced in 1.10.0. (#905)
- `inspector` guard for empty containers. (#913)
- Avoid non-collective behaviour. (#912)
v2.10.0
Version 2.10.0 - 2024-07-29
New Features
Deprecations
Please consult the Migration Guide for details about migrating away from
deprecated features.
- Deprecated
FixedLenStringArray
(#932) - The overload
read(T*, ...)
has been deprecated, but notread(T&, ...)
. (#928)
Improvements
- Improved documentation.
Bug Fixes
- Fixed a performance bug involving
HyperSlab
s (#1032)
v2.9.0
v2.8.0
Important Change
Eigen::Matrix
is (by default) stored with column-major index ordering. Under
certain conditionsEigen::Matrix
was written and read as row-major.
Due to code duplication H5Easy isn't affected by this bug. Starting
2.8.0
HighFive will now throw an exception whenever prior versions would
have read with incorrect assumptions about the index ordering. (#731)
New Features
- Improve reading and writing
std::string
as fixed and variable length HDF5 strings (#744). - Implement creation of hard links (#765). Thanks to @Quark-X10.
- Get the size of file and amound of tracked unused space (#764). Thanks to @Quark-X10.
class DataType
has a new ctor to open a commitedDataType
(#796). Thanks to @Quark-X10.- Allow user-specified
mem_space
for hyperslabs. (#740) - New properties:
AttributePhaseChange
. (#785) - New options to link against HDF5 statically (#823). Thanks @HunterBelanger.
- Add support for
std::complex<integral_type>
valid with C++23 (#828). Thanks @unbtorsten. - Add a top-level header to include all compononents (#818).
Improvements
- Add concept checks to
Property
if C++20 for better errors (#811). Thanks @antonysigma. - Add parallel HDF5 test in CI (#760).
- Simplify github workflow (#761).
- Move inspectors in their own file to be able to better implements strings (#759).
Bug Fix
v2.7.1
v2.7.0
New Features
- Properties can now be read (#684).
- Adding a property for LinkCreationOrder (#683).
- Adding a logging infrastructure (#690).
- Support of bool in the way of h5py (#654).
- Support
std::byte
in C++17 mode (#698).
Improvements
- Catch2 move to v3 (#655).
Bug Fix
- To avoid build failure in certain circumstances, user can not set
Boost_NO_BOOST_CMAKE
(#687). - Fix leak when reading variable length strings (#660).
- Use
H5free_memory
instead offree
in error handler (#665). Thanks to @lefi7z - Fix a bug with old GCC due to templated friend classes (#688).
- Fix regression in broadcasting support (#697).
- Fix bug related to zero-length datasets (#702).