diff --git a/AUTHORS.txt b/AUTHORS.txt index 0a3cdf580..78f573a9a 100644 --- a/AUTHORS.txt +++ b/AUTHORS.txt @@ -2,6 +2,7 @@ Adrien Devresse Alexandru Săvulescu Ali Can Demiralp Angelos Plastropoulos +@antonysigma Chris Byrohl Chris De Grendele @contre @@ -12,6 +13,8 @@ Fernando L. Pereira @guoxy Haoran Ni Henry Schreiner +@hn-sl +Hunter Belanger @JaWSnl Jia Li John W. Peterson @@ -49,6 +52,7 @@ Tino Wagner Tobias Klauser Tom de Geus Tom Vander Aa +Torsten Reuschel Tristan Carel Wolf Vollprecht Y. Yang diff --git a/CHANGELOG.md b/CHANGELOG.md index eeeb628c9..9a8cd8613 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,14 +1,34 @@ # Changes -## Version 2.8.0 - 2023-MM-DD +## Version 2.8.0 - 2023-11-02 +### Important Change + - `Eigen::Matrix` is (by default) stored with column-major index ordering. Under + certain conditions `Eigen::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 commited `DataType` (#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` 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 + - Fix vector constructor ambiguity in H5DataType.hpp (#775). Thanks to @hn-sl. + - `getElementCount()` fixed. (#787) + - Remove leak when calling dtor of `CompoundType`. (#798) + ## Version 2.7.1 - 2023-04-04 ### Bug Fix - Revert removing `#include "H5FileDriver.hpp"` from `H5File.hpp` (#711). diff --git a/CMakeLists.txt b/CMakeLists.txt index 867981020..af274d9e2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -5,7 +5,7 @@ else() cmake_policy(VERSION 3.13) endif() -project(HighFive VERSION 2.7.1) +project(HighFive VERSION 2.8.0) configure_file(${CMAKE_CURRENT_SOURCE_DIR}/include/highfive/H5Version.hpp.in ${CMAKE_CURRENT_SOURCE_DIR}/include/highfive/H5Version.hpp) diff --git a/doc/developer_guide.md b/doc/developer_guide.md index 44ee0fd00..3017289b5 100644 --- a/doc/developer_guide.md +++ b/doc/developer_guide.md @@ -57,6 +57,7 @@ your changes.) Before releasing a new version perform the following: * Update `CHANGELOG.md` and `AUTHORS.txt` as required. +* Update `CMakeLists.txt` and `include/highfive/H5Version.hpp`. * Follow semantic versioning when deciding the next version number. * Check that [HighFive-testing](https://github.com/BlueBrain/HighFive-testing/actions) ran diff --git a/doc/installation.md b/doc/installation.md index 808e34532..41521bba5 100644 --- a/doc/installation.md +++ b/doc/installation.md @@ -202,7 +202,7 @@ install. The detailed instructions would be git clone --recursive https://github.com/BlueBrain/HighFive.git cd HighFive - git checkout v2.7.1 + git checkout v2.8.0 If it complains that Catch is missing, you forgot the `--recursive`. To fix this you type diff --git a/include/highfive/H5Version.hpp b/include/highfive/H5Version.hpp index 49b0e8016..dc238432c 100644 --- a/include/highfive/H5Version.hpp +++ b/include/highfive/H5Version.hpp @@ -9,8 +9,8 @@ #pragma once #define HIGHFIVE_VERSION_MAJOR 2 -#define HIGHFIVE_VERSION_MINOR 7 -#define HIGHFIVE_VERSION_PATCH 1 +#define HIGHFIVE_VERSION_MINOR 8 +#define HIGHFIVE_VERSION_PATCH 0 /** \brief Concatenated representation of the HighFive version. * @@ -24,10 +24,10 @@ * std::cout << STRINGIFY_VALUE(HIGHFIVE_VERSION) << "\n"; * \endcode */ -#define HIGHFIVE_VERSION 2.7.1 +#define HIGHFIVE_VERSION 2.8.0 /** \brief String representation of the HighFive version. * * \warning This macro only exists from 2.7.1 onwards. */ -#define HIGHFIVE_VERSION_STRING "2.7.1" +#define HIGHFIVE_VERSION_STRING "2.8.0"