summaryrefslogtreecommitdiffstats
path: root/release_docs
diff options
context:
space:
mode:
Diffstat (limited to 'release_docs')
-rw-r--r--release_docs/INSTALL_CMake.txt129
-rw-r--r--release_docs/INSTALL_Cygwin.txt1
-rw-r--r--release_docs/NEWSLETTER.txt2
-rw-r--r--release_docs/RELEASE.txt120
4 files changed, 179 insertions, 73 deletions
diff --git a/release_docs/INSTALL_CMake.txt b/release_docs/INSTALL_CMake.txt
index 9e0797b..8fc2dee 100644
--- a/release_docs/INSTALL_CMake.txt
+++ b/release_docs/INSTALL_CMake.txt
@@ -307,7 +307,7 @@ IV. Further considerations
CMake options:
HDF5_ALLOW_EXTERNAL_SUPPORT:STRING="TGZ"
ZLIB_TGZ_NAME:STRING="zlib_src.ext"
- SZAEC_TGZ_NAME:STRING="szaec_src.ext"
+ LIBAEC_TGZ_NAME:STRING="szaec_src.ext"
TGZPATH:STRING="some_location"
where "some_location" is the URL or full path to the compressed
file and ext is the type of compression file. Also set CMAKE_BUILD_TYPE
@@ -316,12 +316,10 @@ IV. Further considerations
D. Use original source packages from a compressed file by adding the following
CMake options:
- BUILD_SZIP_WITH_FETCHCONTENT:BOOL=ON
- LIBAEC_TGZ_ORIGNAME:STRING="szip_src.ext"
+ LIBAEC_TGZ_NAME:STRING="szip_src.ext"
LIBAEC_TGZ_ORIGPATH:STRING="some_location"
- BUILD_ZLIB_WITH_FETCHCONTENT:BOOL=ON
- ZLIB_TGZ_ORIGNAME:STRING="zlib_src.ext"
+ ZLIB_TGZ_NAME:STRING="zlib_src.ext"
ZLIB_TGZ_ORIGPATH:STRING="some_location"
HDF5_ALLOW_EXTERNAL_SUPPORT:STRING="TGZ"
@@ -329,8 +327,6 @@ IV. Further considerations
ZLIB_USE_LOCALCONTENT:BOOL=OFF
LIBAEC_USE_LOCALCONTENT:BOOL=OFF
or full path to the compressed file and ext is the type of compression file.
- The individual filters are enabled by setting the BUILD_<filter>_WITH_FETCHCONTENT
- CMake variable to ON.
Also set CMAKE_BUILD_TYPE to the configuration type during configuration.
See the settings in the config/cmake/cacheinit.cmake file HDF uses for testing.
@@ -527,75 +523,82 @@ These five steps are described in detail below.
set (HDF5_ALLOW_EXTERNAL_SUPPORT "TGZ" CACHE STRING "Allow External Library Building (NO GIT TGZ)" FORCE)
set_property (CACHE HDF5_ALLOW_EXTERNAL_SUPPORT PROPERTY STRINGS NO GIT TGZ)
set (ZLIB_PACKAGE_NAME "zlib" CACHE STRING "Name of ZLIB package" FORCE)
- set (ZLIB_TGZ_NAME "ZLib.tar.gz" CACHE STRING "Use HDF5_ZLib from compressed file" FORCE)
- set (ZLIB_TGZ_ORIGPATH "https://github.com/madler/zlib/releases/download/v1.2.13" CACHE STRING "Use ZLIB from original location" FORCE)
- set (ZLIB_TGZ_ORIGNAME "zlib-1.2.13.tar.gz" CACHE STRING "Use ZLIB from original compressed file" FORCE)
+ set (ZLIB_TGZ_NAME "zlib-1.3.tar.gz" CACHE STRING "Use HDF5_ZLib from compressed file" FORCE)
+ set (ZLIB_TGZ_ORIGPATH "https://github.com/madler/zlib/releases/download/v1.3" CACHE STRING "Use ZLIB from original location" FORCE)
+ set (ZLIB_TGZ_NAME "zlib-1.3.tar.gz" CACHE STRING "Use ZLIB from original compressed file" FORCE)
set (ZLIB_USE_LOCALCONTENT ON CACHE BOOL "Use local file for ZLIB FetchContent" FORCE)
set (LIBAEC_PACKAGE_NAME "libaec" CACHE STRING "Name of AEC SZIP package" FORCE)
- set (SZAEC_TGZ_NAME "LIBAEC.tar.gz" CACHE STRING "Use SZip AEC from compressed file" FORCE)
set (LIBAEC_TGZ_ORIGPATH "https://github.com/MathisRosenhauer/libaec/releases/download/v1.0.6" CACHE STRING "Use LIBAEC from original location" FORCE)
- set (LIBAEC_TGZ_ORIGNAME "libaec-1.0.6.tar.gz" CACHE STRING "Use LIBAEC from original compressed file" FORCE)
+ set (LIBAEC_TGZ_NAME "libaec-1.0.6.tar.gz" CACHE STRING "Use LIBAEC from original compressed file" FORCE)
set (LIBAEC_USE_LOCALCONTENT ON CACHE BOOL "Use local file for LIBAEC FetchContent" FORCE)
#######################
# filter plugin options
#######################
- set (PLUGIN_TGZ_NAME "hdf5_plugins.tar.gz" CACHE STRING "Use PLUGINS from compressed file" FORCE)
+ set (PLUGIN_TGZ_ORIGPATH "https://github.com/HDFGroup/hdf5_plugins/releases/download/snapshots" CACHE STRING "Use PLUGINS from original location" FORCE)
+ set (PLUGIN_TGZ_NAME "hdf5_plugins-master.tar.gz" CACHE STRING "Use PLUGINS from compressed file" FORCE)
+ set (PLUGIN_USE_LOCALCONTENT ON CACHE BOOL "Use local file for PLUGIN FetchContent" FORCE)
set (PLUGIN_PACKAGE_NAME "pl" CACHE STRING "Name of PLUGIN package" FORCE)
############
# bitshuffle
###########
- set (BSHUF_GIT_URL "https://someurl/bitshuffle.git" CACHE STRING "Use BSHUF from HDF repository" FORCE)
+ set (BSHUF_GIT_URL "https://github.com/kiyo-masui/bitshuffle.git" CACHE STRING "Use BSHUF from HDF repository" FORCE)
set (BSHUF_GIT_BRANCH "master" CACHE STRING "" FORCE)
- set (BSHUF_TGZ_NAME "bitshuffle.tar.gz" CACHE STRING "Use BSHUF from compressed file" FORCE)
+ set (BSHUF_TGZ_ORIGPATH "https://github.com/kiyo-masui/bitshuffle/archive/refs/tags" CACHE STRING "Use PLUGINS from original location" FORCE)
+ set (BSHUF_TGZ_NAME "bitshuffle-0.5.1.tar.gz" CACHE STRING "Use BSHUF from compressed file" FORCE)
set (BSHUF_PACKAGE_NAME "bshuf" CACHE STRING "Name of BSHUF package" FORCE)
#######
# blosc
#######
- set (BLOSC_GIT_URL "https://github.com/Blosc/c-blosc.git" CACHE STRING "Use BLOSC from Github" FORCE)
- set (BLOSC_GIT_BRANCH "master" CACHE STRING "" FORCE)
- set (BLOSC_TGZ_NAME "c-blosc.tar.gz" CACHE STRING "Use BLOSC from compressed file" FORCE)
+ set (BLOSC_GIT_URL "https://github.com/Blosc/c-blosc.git" CACHE STRING "Use BLOSC from Github repository" FORCE)
+ set (BLOSC_GIT_BRANCH "main" CACHE STRING "" FORCE)
+ set (BLOSC_TGZ_ORIGPATH "https://github.com/Blosc/c-blosc/archive/refs/tags" CACHE STRING "Use PLUGINS from original location" FORCE)
+ set (BLOSC_TGZ_NAME "c-blosc-1.21.5.tar.gz" CACHE STRING "Use BLOSC from compressed file" FORCE)
set (BLOSC_PACKAGE_NAME "blosc" CACHE STRING "Name of BLOSC package" FORCE)
- set (ZLIB_GIT_URL "https://someurl/zlib.git" CACHE STRING "Use ZLIB from HDF repo" FORCE)
- set (ZLIB_GIT_BRANCH "master" CACHE STRING "" FORCE)
- set (ZLIB_TGZ_NAME "ZLib.tar.gz" CACHE STRING "Use ZLib from compressed file" FORCE)
- set (ZLIB_PACKAGE_NAME "zlib" CACHE STRING "Name of ZLIB package" FORCE)
+ set (BLOSC_ZLIB_GIT_URL "https://github.com/madler/zlib.git" CACHE STRING "Use ZLIB from GitHub repository" FORCE)
+ set (BLOSC_ZLIB_GIT_BRANCH "develop" CACHE STRING "" FORCE)
+ set (BLOSC_ZLIB_TGZ_ORIGPATH "https://github.com/madler/zlib/releases/download/v1.3" CACHE STRING "Use PLUGINS from original location" FORCE)
+ set (BLOSC_ZLIB_TGZ_NAME "zlib-1.3.tar.gz" CACHE STRING "Use ZLib from compressed file" FORCE)
+ set (BLOSC_ZLIB_PACKAGE_NAME "zlib" CACHE STRING "Name of BLOSC_ZLIB package" FORCE)
#######
# bzip2
######
#
- set (BZ2_GIT_URL "https://someurl/bzip2.git" CACHE STRING "Use BZ2 from HDF repository" FORCE)
+ set (BZ2_GIT_URL "https://github.com/libarchive/bzip2.git" CACHE STRING "Use BZ2 from GitHub repository" FORCE)
set (BZ2_GIT_BRANCH "master" CACHE STRING "" FORCE)
- set (BZ2_TGZ_NAME "BZ2.tar.gz" CACHE STRING "Use BZ2 from compressed file" FORCE)
+ set (BZ2_TGZ_ORIGPATH "https://github.com/libarchive/bzip2/archive/refs/tags" CACHE STRING "Use PLUGINS from original location" FORCE)
+ set (BZ2_TGZ_NAME "bzip2-bzip2-1.0.8.tar.gz" CACHE STRING "Use BZ2 from compressed file" FORCE)
set (BZ2_PACKAGE_NAME "bz2" CACHE STRING "Name of BZ2 package" FORCE)
#######
# fpzip
#######
- set (FPZIP_GIT_URL "https://github.com/LLNL/fpzip" CACHE STRING "Use FPZIP from github repository" FORCE)
- set (FPZIP_GIT_BRANCH "master" CACHE STRING "" FORCE)
- set (FPZIP_TGZ_NAME "fpzip.tar.gz" CACHE STRING "Use FPZIP from compressed file" FORCE)
+ set (FPZIP_GIT_URL "https://github.com/LLNL/fpzip.git" CACHE STRING "Use FPZIP from GitHub repository" FORCE)
+ set (FPZIP_GIT_BRANCH "develop" CACHE STRING "" FORCE)
+ set (FPZIP_TGZ_ORIGPATH "https://github.com/LLNL/fpzip/releases/download/1.3.0" CACHE STRING "Use PLUGINS from original location" FORCE)
+ set (FPZIP_TGZ_NAME "fpzip-1.3.0.tar.gz" CACHE STRING "Use FPZIP from compressed file" FORCE)
set (FPZIP_PACKAGE_NAME "fpzip" CACHE STRING "Name of FPZIP package" FORCE)
######
# jpeg
######
- set (JPEG_GIT_URL "https://someurl/jpeg.git" CACHE STRING "Use JPEG from HDF repository" FORCE)
- set (JPEG_GIT_BRANCH "jpeg9c" CACHE STRING "" FORCE)
- #set (JPEG_TGZ_NAME "JPEG9c.tar.gz" CACHE STRING "Use JPEG from compressed file" FORCE)
- set (JPEG_TGZ_NAME "JPEG.tar.gz" CACHE STRING "Use JPEG from compressed file" FORCE)
+ set (JPEG_GIT_URL "No repo www.ijg.org/files" CACHE STRING "Use JPEG from ILG" FORCE)
+ set (JPEG_GIT_BRANCH "v9e" CACHE STRING "" FORCE)
+ set (JPEG_TGZ_ORIGPATH "https://www.ijg.org/files" CACHE STRING "Use PLUGINS from original location" FORCE)
+ set (JPEG_TGZ_NAME "jpegsrc.v9e.tar.gz" CACHE STRING "Use JPEG from compressed file" FORCE)
set (JPEG_PACKAGE_NAME "jpeg" CACHE STRING "Name of JPEG package" FORCE)
######
# lz4
######
set (BUILD_LZ4_LIBRARY_SOURCE ON CACHE BOOL "build the lz4 library within the plugin" FORCE)
- set (LZ4_GIT_URL "https://someurl/lz4.git" CACHE STRING "Use LZ4 from HDF repository" FORCE)
- set (LZ4_GIT_BRANCH "master" CACHE STRING "" FORCE)
- set (LZ4_TGZ_NAME "lz4.tar.gz" CACHE STRING "Use LZ4 from compressed file" FORCE)
+ set (LZ4_GIT_URL "https://github.com/lz4/lz4.git" CACHE STRING "Use LZ4 from GitHub repository" FORCE)
+ set (LZ4_GIT_BRANCH "dev" CACHE STRING "" FORCE)
+ set (LZ4_TGZ_ORIGPATH "https://github.com/lz4/lz4/releases/download/v1.9.4" CACHE STRING "Use PLUGINS from original location" FORCE)
+ set (LZ4_TGZ_NAME "lz4-1.9.4.tar.gz" CACHE STRING "Use LZ4 from compressed file" FORCE)
set (LZ4_PACKAGE_NAME "lz4" CACHE STRING "Name of LZ4 package" FORCE)
######
# lzf
######
- set (LZF_GIT_URL "https://someurl/lzf.git" CACHE STRING "Use LZF from HDF repository" FORCE)
- set (LZF_GIT_BRANCH "master" CACHE STRING "" FORCE)
- set (LZF_TGZ_NAME "lzf.tar.gz" CACHE STRING "Use LZF from compressed file" FORCE)
+ set (LZF_URL "http://software.schmorp.de/pkg/liblzf.html" CACHE STRING "LZF home" FORCE)
+ set (LZF_TGZ_ORIGPATH "http://dist.schmorp.de/liblzf" CACHE STRING "Use LZF from original location" FORCE)
+ set (LZF_TGZ_NAME "liblzf-3.6.tar.gz" CACHE STRING "Use LZF from compressed file" FORCE)
set (LZF_PACKAGE_NAME "lzf" CACHE STRING "Name of LZF package" FORCE)
########
# mafisc
@@ -605,23 +608,26 @@ These five steps are described in detail below.
######
# szf
######
- set (SZF_GIT_URL "https://github.com/disheng222/SZ" CACHE STRING "Use SZ from github repository" FORCE)
- set (SZF_GIT_BRANCH "master" CACHE STRING "" FORCE)
- set (SZF_TGZ_NAME "szf.tar.gz" CACHE STRING "Use SZ from compressed file" FORCE)
+ set (SZ_GIT_URL "https://github.com/szcompressor/SZ.git" CACHE STRING "Use SZ filter from GitHub repository" FORCE)
+ set (SZ_GIT_BRANCH "master" CACHE STRING "" FORCE)
+ set (SZ_TGZ_ORIGPATH "https://github.com/szcompressor/SZ/releases/download/v2.1.12.5" CACHE STRING "Use PLUGINS from original location" FORCE)
+ set (SZ_TGZ_NAME "SZ-2.1.12.5.tar.gz" CACHE STRING "Use SZ filter from compressed file" FORCE)
set (SZF_PACKAGE_NAME "szf" CACHE STRING "Name of SZ package" FORCE)
######
# zfp
######
- set (ZFP_GIT_URL "https://github.com/LLNL/zfp.git" CACHE STRING "Use ZFP from Github" FORCE)
- set (ZFP_GIT_BRANCH "master" CACHE STRING "" FORCE)
- set (ZFP_TGZ_NAME "zfp.tar.gz" CACHE STRING "Use ZFP from compressed file" FORCE)
+ set (ZFP_GIT_URL "https://github.com/LLNL/zfp.git" CACHE STRING "Use ZFP from GitHub repository" FORCE)
+ set (ZFP_GIT_BRANCH "develop" CACHE STRING "" FORCE)
+ set (ZFP_TGZ_ORIGPATH "https://github.com/LLNL/zfp/releases/download/1.0.0" CACHE STRING "Use PLUGINS from original location" FORCE)
+ set (ZFP_TGZ_NAME "zfp-1.0.0.tar.gz" CACHE STRING "Use ZFP from compressed file" FORCE)
set (ZFP_PACKAGE_NAME "zfp" CACHE STRING "Name of ZFP package" FORCE)
######
# zstd
######
- set (ZSTD_GIT_URL "https://github.com/facebook/zstd" CACHE STRING "Use ZSTD from repository" FORCE)
+ set (ZSTD_GIT_URL "https://github.com/facebook/zstd.git" CACHE STRING "Use ZSTD from GitHub repository" FORCE)
set (ZSTD_GIT_BRANCH "dev" CACHE STRING "" FORCE)
- set (ZSTD_TGZ_NAME "zstd.tar.gz" CACHE STRING "Use ZSTD from compressed file" FORCE)
+ set (ZSTD_TGZ_ORIGPATH "https://github.com/facebook/zstd/releases/download/v1.5.5" CACHE STRING "Use PLUGINS from original location" FORCE)
+ set (ZSTD_TGZ_NAME "zstd-1.5.5.tar.gz" CACHE STRING "Use ZSTD from compressed file" FORCE)
set (ZSTD_PACKAGE_NAME "zstd" CACHE STRING "Name of ZSTD package" FORCE)
2. Configure the cache settings
@@ -876,17 +882,26 @@ if (BUILD_TESTING)
---------------- External Library Options ---------------------
HDF5_ALLOW_EXTERNAL_SUPPORT "Allow External Library Building (NO GIT TGZ)" "NO"
HDF5_ENABLE_PLUGIN_SUPPORT "Enable PLUGIN Filters" OFF
-HDF5_ENABLE_SZIP_SUPPORT "Use SZip Filter" OFF
+HDF5_ENABLE_SZIP_SUPPORT "Use SZip Filter" ON
HDF5_ENABLE_Z_LIB_SUPPORT "Enable Zlib Filters" ON
-PLUGIN_USE_EXTERNAL "Use External Library Building for PLUGINS" 0
-ZLIB_USE_EXTERNAL "Use External Library Building for ZLIB" 0
-SZIP_USE_EXTERNAL "Use External Library Building for SZIP" 0
+
+ZLIB_USE_EXTERNAL "Use External Library Building for ZLIB" 0
+ZLIB_TGZ_ORIGPATH "Use ZLIB from original location" "https://github.com/madler/zlib/releases/download/v1.2.13"
+ZLIB_TGZ_NAME "Use ZLIB from original compressed file" "zlib-1.2.13.tar.gz"
+ZLIB_USE_LOCALCONTENT "Use local file for ZLIB FetchContent" ON
+
+SZIP_USE_EXTERNAL "Use External Library Building for SZIP" 0
if (HDF5_ENABLE_SZIP_SUPPORT)
HDF5_ENABLE_SZIP_ENCODING "Use SZip Encoding" ON
+LIBAEC_TGZ_ORIGPATH "Use LIBAEC from original location" "https://github.com/MathisRosenhauer/libaec/releases/download/v1.0.6/libaec-1.0.6.tar.gz"
+LIBAEC_TGZ_NAME "Use LIBAEC from original compressed file" "libaec-v1.0.6.tar.gz"
+LIBAEC_USE_LOCALCONTENT "Use local file for LIBAEC FetchContent" ON
+
+PLUGIN_USE_EXTERNAL "Use External Library Building for PLUGINS" 0
if (WINDOWS)
- H5_DEFAULT_PLUGINDIR "%ALLUSERSPROFILE%/hdf5/lib/plugin"
+ H5_DEFAULT_PLUGINDIR "%ALLUSERSPROFILE%/hdf5/lib/plugin"
else ()
- H5_DEFAULT_PLUGINDIR "/usr/local/hdf5/lib/plugin"
+ H5_DEFAULT_PLUGINDIR "/usr/local/hdf5/lib/plugin"
endif ()
if (BUILD_SZIP_WITH_FETCHCONTENT)
LIBAEC_TGZ_ORIGPATH "Use LIBAEC from original location" "https://github.com/MathisRosenhauer/libaec/releases/download/v1.0.6/libaec-1.0.6.tar.gz"
@@ -1060,15 +1075,15 @@ Available configurations presets can be displayed by executing:
Using individual command presets (where <compiler-type> is GNUC or MSVC or Clang):
change directory to the hdf5 source folder
- cmake --presets=ci-StdShar-<compiler-type>
- cmake --build --presets=ci-StdShar-<compiler-type>
- ctest --presets=ci-StdShar-<compiler-type>
- cpack --presets=ci-StdShar-<compiler-type>
+ cmake --preset ci-StdShar-<compiler-type>
+ cmake --build --preset ci-StdShar-<compiler-type>
+ ctest --preset ci-StdShar-<compiler-type>
+ cpack --preset ci-StdShar-<compiler-type>
Using the workflow preset to configure, build, test and package the standard configuration is:
change directory to the hdf5 source folder
- execute "cmake --workflow --presets=ci-StdShar-<compiler-type> --fresh"
+ execute "cmake --workflow --preset ci-StdShar-<compiler-type> --fresh"
where <compiler-type> is GNUC or MSVC or Clang
Creating your own configurations
@@ -1088,7 +1103,7 @@ For instance, to change the support files to use a local directory, edit CMakeUs
"inherits": "ci-base",
"cacheVariables": {
"HDF5_ALLOW_EXTERNAL_SUPPORT": {"type": "STRING", "value": "TGZ"},
- "TGZPATH": {"type": "STRING", "value": "${sourceParentDir}/temp"}
+ "TGZPATH": {"type": "PATH", "value": "${sourceParentDir}/temp"}
}
},
{
diff --git a/release_docs/INSTALL_Cygwin.txt b/release_docs/INSTALL_Cygwin.txt
index a605f4d..c78f61f 100644
--- a/release_docs/INSTALL_Cygwin.txt
+++ b/release_docs/INSTALL_Cygwin.txt
@@ -98,6 +98,7 @@ Build, Test and Install HDF5 on Cygwin
The HDF5 source code is distributed in a variety of formats which
can be unpacked with the following commands, each of which creates
+
an `hdf5-1.14.x' directory.
2.1 Non-compressed tar archive (*.tar)
diff --git a/release_docs/NEWSLETTER.txt b/release_docs/NEWSLETTER.txt
index fe4a0fd..084d892 100644
--- a/release_docs/NEWSLETTER.txt
+++ b/release_docs/NEWSLETTER.txt
@@ -32,4 +32,4 @@ memory leak fixes, etc. do not require entries.
for a few years. We removed the options for using the old SZIP library. All
current szip and libaec options only work for building the libaec library.
- \ No newline at end of file
+
diff --git a/release_docs/RELEASE.txt b/release_docs/RELEASE.txt
index f68775c..9e0a5cc 100644
--- a/release_docs/RELEASE.txt
+++ b/release_docs/RELEASE.txt
@@ -47,6 +47,39 @@ New Features
Configuration:
-------------
+ - Converted the build of libaec and zlib to use FETCH_CONTENT with CMake.
+
+ Using the CMake FetchContent module, the external filters can populate
+ content at configure time via any method supported by the ExternalProject
+ module. Whereas ExternalProject_Add() downloads at build time, the
+ FetchContent module makes content available immediately, allowing the
+ configure step to use the content in commands like add_subdirectory(),
+ include() or file() operations.
+
+ Removed HDF options for using FETCH_CONTENT explicitly:
+ BUILD_SZIP_WITH_FETCHCONTENT:BOOL
+ BUILD_ZLIB_WITH_FETCHCONTENT:BOOL
+
+ - Thread-safety + static library disabled on Windows w/ CMake
+
+ The thread-safety feature requires hooks in DllMain(), which is only
+ present in the shared library.
+
+ We previously just warned about this, but now any CMake configuration
+ that tries to build thread-safety and the static library will fail.
+ This cannot be overridden with ALLOW_UNSUPPORTED.
+
+ Fixes GitHub issue #3613
+
+ - Autotools builds now build the szip filter by default when an appropriate
+ library is found
+
+ Since libaec is prevalent and BSD-licensed for both encoding and
+ decoding, we build the szip filter by default now.
+
+ Both autotools and CMake build systems will process the szip filter the same as
+ the zlib filter is processed.
+
- Removed CMake cross-compiling variables
* HDF5_USE_PREGEN
@@ -65,17 +98,6 @@ New Features
The functionality of H5detect is now exercised at library startup,
so H5detect has been removed.
- - Thread-safety + static library disabled on Windows w/ CMake
-
- The thread-safety feature requires hooks in DllMain(), which is only
- present in the shared library.
-
- We previously just warned about this, but now any CMake configuration
- that tries to build thread-safety and the static library will fail.
- This cannot be overridden with ALLOW_UNSUPPORTED.
-
- Fixes GitHub issue #3613
-
Library:
--------
@@ -84,11 +106,40 @@ New Features
Parallel Library:
-----------------
- -
+ - Added optimized support for the parallel compression feature when
+ using the multi-dataset I/O API routines collectively
+
+ Previously, calling H5Dwrite_multi/H5Dread_multi collectively in parallel
+ with a list containing one or more filtered datasets would cause HDF5 to
+ break out of the optimized multi-dataset I/O mode and instead perform I/O
+ by looping over each dataset in the I/O request. The library has now been
+ updated to perform I/O in a more optimized manner in this case by first
+ performing I/O on all the filtered datasets at once and then performing
+ I/O on all the unfiltered datasets at once.
Fortran Library:
----------------
+ - Fixed an uninitialized error return value for hdferr
+ to return the error state of the h5aopen_by_idx_f API.
+
+ - Added h5pget_vol_cap_flags_f and related Fortran VOL
+ capability definitions.
+
+ - Fortran async APIs H5A, H5D, H5ES, H5G, H5F, H5L and H5O were added.
+
+ - Added Fortran APIs:
+ h5pset_selection_io_f, h5pget_selection_io_f
+ h5pset_modify_write_buf_f, h5pget_modify_write_buf_f
+
+ - Added Fortran APIs:
+ h5get_free_list_sizes_f, h5dwrite_chunk_f, h5dread_chunk_f,
+ h5fget_info_f, h5lvisit_f, h5lvisit_by_name_f,
+ h5pget_no_selection_io_cause_f, h5pget_mpio_no_collective_cause_f,
+ h5sselect_shape_same_f, h5sselect_intersect_block_f,
+ h5pget_file_space_page_size_f, h5pset_file_space_page_size_f,
+ h5pget_file_space_strategy_f, h5pset_file_space_strategy_f
+
- Removed "-commons" linking option on Darwin, as COMMON and EQUIVALENCE
are no longer used in the Fortran source.
@@ -111,7 +162,7 @@ New Features
High-Level APIs:
----------------
- -
+ - Added Fortran HL API: h5doappend_f
C Packet Table API:
@@ -195,6 +246,17 @@ Bug Fixes since HDF5-1.14.2 release
this optimized conversion and there is no benefit in terms of the I/O
size.
+ - Reading a H5std_string (std::string) via a C++ DataSet previously
+ truncated the string at the first null byte as if reading a C string.
+ Fixed length datasets are now read into H5std_string as a fixed length
+ string of the appropriate size. Variable length datasets will still be
+ truncated at the first null byte.
+
+ Fixes Github issue #3034
+
+ - Fixed write buffer overflow in H5O__alloc_chunk
+
+ The overflow was found by OSS-Fuzz https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=58658
Java Library
------------
@@ -203,7 +265,36 @@ Bug Fixes since HDF5-1.14.2 release
Configuration
-------------
- -
+ - Fixes the ordering of INCLUDES when building with CMake
+
+ Include directories in the source or build tree should come before other
+ directories to prioritize headers in the sources over installed ones.
+
+ Fixes GitHub #1027
+
+ - The accum test now passes on macOS 12+ (Monterey) w/ CMake
+
+ Due to changes in the way macOS handles LD_LIBRARY_PATH, the accum test
+ started failing on macOS 12+ when building with CMake. CMake has been
+ updated to set DYLD_LIBRARY_PATH on macOS and the test now passes.
+
+ Fixes GitHub #2994, #2261, and #1289
+
+ - Changed the default settings used by CMake for the GZIP filter
+
+ The default for the option HDF5_ENABLE_Z_LIB_SUPPORT was OFF. Now the default is ON.
+ This was done to match the defaults used by the autotools configure.ac.
+ In addition, the CMake message level for not finding a suitable filter library was
+ changed from FATAL_ERROR (which would halt the build process) to WARNING (which
+ will print a message to stderr). Associated files and documentation were changed to match.
+
+ In addition, the default settings in the config/cmake/cacheinit.cmake file were changed to
+ allow CMake to disable building the filters if the tgz file could not be found. The option
+ to allow CMake to download the file from the original Github location requires setting
+ the ZLIB_USE_LOCALCONTENT option to OFF for gzip. And setting the LIBAEC_USE_LOCALCONTENT
+ option to OFF for libaec (szip).
+
+ Fixes GitHub issue #2926
Tools
@@ -366,7 +457,6 @@ Platforms Tested
64-bit gfortran GNU Fortran (GCC) 5.2.0
(osx1011test) Intel icc/icpc/ifort version 16.0.2
-
Linux 2.6.32-573.22.1.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
#1 SMP x86_64 GNU/Linux compilers:
Centos6 Version 4.4.7 20120313