Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
HDF5 version 2.0.1 currently under development
HDF5 version 2.1.0 currently under development

> [!WARNING]
> **Heads Up: HDF5 Dropped Autotools March 10th**
Expand Down
2 changes: 1 addition & 1 deletion config/cmake/scripts/HDF5config.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ cmake_minimum_required (VERSION 3.26)
# CTEST_SOURCE_NAME - source folder
##############################################################################

set (CTEST_SOURCE_VERSION "2.0.1")
set (CTEST_SOURCE_VERSION "2.1.0")
set (CTEST_SOURCE_VERSEXT "")

##############################################################################
Expand Down
2 changes: 1 addition & 1 deletion config/examples/HDF5AsSubdirMacros.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
# and build it. The HDF5 options should be set after the FetchContent_Declare command and before
# the add_subdirectory command..
macro (EXTERNAL_HDF5_LIBRARY compress_type)
set (HDF5_VERSION "2.0.1")
set (HDF5_VERSION "2.1.0")
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Doesn't CMake already have, or can it get, this information?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's a bit awkward, but in this case HDF5_VERSION may not be available as the library is being obtained with FetchContent. However, the only use seems to be in a status message that could be printed later anyway, so this occurrence could probably be removed.

set (HDF5_VERSEXT "")
set (HDF5_VERSION_MAJOR "2.0")
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same here

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

And if it's not removed, it looks like HDF5_VERSION_MAJOR needs to be updated anyway. Plus the naming doesn't make much sense, as it includes both the major and minor versions

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suspect this is a carryover of CMake code from pre-2.0.0 days. HDF5_VERSION_MAJOR is set to ${HDF5_PACKAGE_VERSION_MAJOR} which is set to ${H5_VERS_MAJOR}.${H5_VERS_MINOR}.

There are no occurrences of HDF5_PACKAGE_VERSION_RELEASE nor of HDF5_VERSION_RELEASE.

Prior to 2.0 the major version was 1.x and there are 101 comparisons of HDF5_VERSION_MAJOR to versions "1.8" through "2.0". 16 of those are with "2.0". Would it be appropriate and improvements to replace them?

HDF5_PACKAGE_VERSION_MAJOR => HDF5_PACKAGE_VERSION_MAJ_MIN
HDF5_VERSION_MAJOR => HDF5_VERSION_MAJ_MIN

HDF5_VERSION_MINOR is set to ${HDF5_PACKAGE_VERSION_MINOR}, but neither are used except for in config/README.md.cmake.in where it appears they are used incorrectly (once in the line that creates the incorrect link that currently causes linkchecker to fail). Maybe these 2 should be removed.

HDF5_PACKAGE_VERSION_RELEASE and HDF5_VERSION_RELEASE don't exist.

set (HDF5LIB_TGZ_NAME "hdf5.tar.gz" CACHE STRING "Use HDF5LIB from compressed file" FORCE)
Expand Down
4 changes: 2 additions & 2 deletions java/hdf/hdf5lib/H5.java
Original file line number Diff line number Diff line change
Expand Up @@ -256,7 +256,7 @@
* which prints out the HDF5 error stack, as described in the HDF5 C API <i><b>@ref H5Eprint()</b>.</i> This
* may be used by Java exception handlers to print out the HDF5 error stack. <hr>
*
* @version HDF5 2.0.1 <BR>
* @version HDF5 2.1.0 <BR>
* <b>See also: </b>
* @ref HDFARRAY hdf.hdf5lib.HDFArray<br />
* @ref HDF5CONST hdf.hdf5lib.HDF5Constants<br />
Expand Down Expand Up @@ -298,7 +298,7 @@ public class H5 implements java.io.Serializable {
* </ul>
* Make sure to update the versions number when a different library is used.
*/
public final static int LIB_VERSION[] = {2, 0, 1};
public final static int LIB_VERSION[] = {2, 1, 0};

private final static LinkedHashSet<Long> OPEN_IDS = new LinkedHashSet<Long>();
private static boolean isLibraryLoaded = false;
Expand Down
4 changes: 2 additions & 2 deletions java/src-jni/hdf/hdf5lib/H5.java
Original file line number Diff line number Diff line change
Expand Up @@ -231,7 +231,7 @@
* which prints out the HDF5 error stack, as described in the HDF5 C API <i><b>@ref H5Eprint()</b>.</i> This
* may be used by Java exception handlers to print out the HDF5 error stack. <hr>
*
* @version HDF5 2.0.1 <BR>
* @version HDF5 2.1.0 <BR>
* <b>See also: </b>
* @ref HDFARRAY hdf.hdf5lib.HDFArray<br />
* @ref HDF5CONST hdf.hdf5lib.HDF5Constants<br />
Expand Down Expand Up @@ -273,7 +273,7 @@ public class H5 implements java.io.Serializable {
* </ul>
* Make sure to update the versions number when a different library is used.
*/
public final static int LIB_VERSION[] = {2, 0, 1};
public final static int LIB_VERSION[] = {2, 1, 0};

/**
* @ingroup JH5
Expand Down
4 changes: 2 additions & 2 deletions java/src-jni/test/TestH5.java
Original file line number Diff line number Diff line change
Expand Up @@ -313,7 +313,7 @@ public void testH5set_free_list_limits()
@Test
public void testH5get_libversion()
{
int libversion[] = {2, 0, 1};
int libversion[] = {2, 1, 0};

try {
H5.H5get_libversion(libversion);
Expand Down Expand Up @@ -351,7 +351,7 @@ public void testH5get_libversion_null_param()
@Test
public void testH5check_version()
{
int majnum = 2, minnum = 0, relnum = 1;
int majnum = 2, minnum = 1, relnum = 0;

try {
H5.H5check_version(majnum, minnum, relnum);
Expand Down
4 changes: 2 additions & 2 deletions java/test/TestH5.java
Original file line number Diff line number Diff line change
Expand Up @@ -313,7 +313,7 @@ public void testH5set_free_list_limits()
@Test
public void testH5get_libversion()
{
int libversion[] = {2, 0, 1};
int libversion[] = {2, 1, 0};

try {
H5.H5get_libversion(libversion);
Expand Down Expand Up @@ -351,7 +351,7 @@ public void testH5get_libversion_null_param()
@Test
public void testH5check_version()
{
int majnum = 2, minnum = 0, relnum = 1;
int majnum = 2, minnum = 1, relnum = 0;

try {
H5.H5check_version(majnum, minnum, relnum);
Expand Down
4 changes: 2 additions & 2 deletions release_docs/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
HDF5 version 2.0.1 currently under development
HDF5 version 2.1.0 currently under development
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why do we need the "currently under development"? It is evident from examining the current release.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This line appears at the top of the CHANGELOG.md file and the top-level README.md file. The release script would change it to HDF5 version 2.1.0 released on 2026-05-15. (whatever the release date would be.

If the release date is not needed in downloaded code (and maybe binaries) is not needed, and the version is not needed the line can be removed from these files. (CHANGELOG.md currently has the version in the Executive Summary section.)

The version number and the release date could also be moved elsewhere in the README.md file.

Alternatively, the first half of the string could be kept and the release date added to it when the release occurs.


# 🔺 HDF5 Changelog
All notable changes to this project will be documented in this file. This document describes the differences between this release and the previous
Expand All @@ -21,7 +21,7 @@ For releases prior to version 2.0.0, please see the release.txt file and for mor
* [Platforms Tested](CHANGELOG.md#%EF%B8%8F-platforms-tested)
* [Known Problems](CHANGELOG.md#-known-problems)

# 🔆 Executive Summary: HDF5 Version 2.0.1
# 🔆 Executive Summary: HDF5 Version 2.1.0

## Performance Enhancements:

Expand Down
8 changes: 4 additions & 4 deletions src/H5public.h
Original file line number Diff line number Diff line change
Expand Up @@ -65,23 +65,23 @@
/**
* For minor interface/format changes
*/
#define H5_VERS_MINOR 0
#define H5_VERS_MINOR 1
/**
* For tweaks, bug-fixes, or development
*/
#define H5_VERS_RELEASE 1
#define H5_VERS_RELEASE 0
/**
* For pre-releases like \c snap0. Empty string for official releases.
*/
#define H5_VERS_SUBRELEASE ""
/**
* Short version string
*/
#define H5_VERS_STR "2.0.1"
#define H5_VERS_STR "2.1.0"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why can't we use a single set of #define H5_VERS_* and utilize those in the remaining #defines instead of the version number being hardcoded in multiple places across the various flavors?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we just keep the H5_VERS_(MAJOR/MINOR/RELEASE) macros, it should be straightforward to form the others from those

/**
* Full version string
*/
#define H5_VERS_INFO "HDF5 library version: 2.0.1"
#define H5_VERS_INFO "HDF5 library version: 2.1.0"

#define H5check() H5check_version(H5_VERS_MAJOR, H5_VERS_MINOR, H5_VERS_RELEASE)

Expand Down
Loading