From 02ac37a6c62f2f1b21f3c595c4219d79296e0f8d Mon Sep 17 00:00:00 2001 From: Nicolas Cornu Date: Tue, 31 Oct 2023 17:57:56 +0100 Subject: [PATCH 1/6] Complete changelog and authors for the next release --- AUTHORS.txt | 4 ++++ CHANGELOG.md | 14 ++++++++++++++ 2 files changed, 18 insertions(+) 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..294a97f5d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,14 +1,28 @@ # Changes ## Version 2.8.0 - 2023-MM-DD +### Removed feature + - `Eigen::Matrix` have always been buggy, the support have been removed. (#731) + ### New Features - 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. ### 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). From ed539c71bd56b97411c27884bc22af6225cfd946 Mon Sep 17 00:00:00 2001 From: Nicolas Cornu Date: Wed, 1 Nov 2023 09:49:44 +0100 Subject: [PATCH 2/6] Last 2 lines --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 294a97f5d..d276829a9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,12 +11,14 @@ - 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). + - Support of strings have been improved. `std::string` can be used for variable or not (#744). ### Bug Fix - Fix vector constructor ambiguity in H5DataType.hpp (#775). Thanks to @hn-sl. From 4535cd8279c814c49e4c73b83e24ee164dfc7ae3 Mon Sep 17 00:00:00 2001 From: Nicolas Cornu Date: Wed, 1 Nov 2023 10:11:29 +0100 Subject: [PATCH 3/6] New version number --- CMakeLists.txt | 2 +- doc/developer_guide.md | 1 + doc/installation.md | 2 +- include/highfive/H5Version.hpp | 8 ++++---- 4 files changed, 7 insertions(+), 6 deletions(-) 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" From 9b50620192c2e6565574382c198f7d67889ed244 Mon Sep 17 00:00:00 2001 From: Luc Grosheintz Date: Wed, 1 Nov 2023 15:44:24 +0100 Subject: [PATCH 4/6] Rephrase. --- CHANGELOG.md | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d276829a9..df6f924c0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,15 +1,20 @@ # Changes ## Version 2.8.0 - 2023-MM-DD -### Removed feature - - `Eigen::Matrix` have always been buggy, the support have been removed. (#731) +### 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. + - 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). @@ -18,7 +23,6 @@ - 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). - - Support of strings have been improved. `std::string` can be used for variable or not (#744). ### Bug Fix - Fix vector constructor ambiguity in H5DataType.hpp (#775). Thanks to @hn-sl. From 377bfe877922a2dbe81124f5925b938d62c927a3 Mon Sep 17 00:00:00 2001 From: Nicolas Cornu Date: Wed, 1 Nov 2023 15:57:13 +0100 Subject: [PATCH 5/6] Change date --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index df6f924c0..128eb61fd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,5 @@ # Changes -## Version 2.8.0 - 2023-MM-DD +## Version 2.8.0 - 2023-11-01 ### 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. From 8a6f32b69d0086805b9f418d57c99b6ca3333391 Mon Sep 17 00:00:00 2001 From: Luc Grosheintz Date: Thu, 2 Nov 2023 07:33:55 +0100 Subject: [PATCH 6/6] Update CHANGELOG.md --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 128eb61fd..9a8cd8613 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,5 @@ # Changes -## Version 2.8.0 - 2023-11-01 +## 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.