diff options
Diffstat (limited to 'release_docs/RELEASE.txt')
-rw-r--r-- | release_docs/RELEASE.txt | 218 |
1 files changed, 48 insertions, 170 deletions
diff --git a/release_docs/RELEASE.txt b/release_docs/RELEASE.txt index 4d1b1a8..a083c13 100644 --- a/release_docs/RELEASE.txt +++ b/release_docs/RELEASE.txt @@ -36,7 +36,7 @@ CONTENTS - New Features - Support for new platforms and languages -- Bug Fixes since HDF5-1.14.0 +- Bug Fixes since HDF5-1.14.2 - Platforms Tested - Known Problems - CMake vs. Autotools installations @@ -47,24 +47,12 @@ New Features Configuration: ------------- - - Updated HDF5 API tests CMake code to support VOL connectors - - * Implemented support for fetching, building and testing HDF5 - VOL connectors during the library build process and documented - the feature under doc/cmake-vols-fetchcontent.md - - * Implemented the HDF5_TEST_API_INSTALL option that enables - installation of the HDF5 API tests on the system + - Library: -------- - - Change the error handling for a not found path in the find plugin process. - - While attempting to load a plugin the HDF5 library will fail if one of the - directories in the plugin paths does not exist, even if there are more paths - to check. Instead of exiting the function with an error, just logged the error - and continue processing the list of paths to check. + - Parallel Library: @@ -117,111 +105,26 @@ Support for new platforms, languages and compilers - -Bug Fixes since HDF5-1.14.1 release +Bug Fixes since HDF5-1.14.2 release =================================== Library ------- - - Fixed CVE-2018-13867 - - A corrupt file containing an invalid local heap datablock address - could trigger an assert failure when the metadata cache attempted - to load the datablock from storage. - - The local heap now verifies that the datablock address is valid - when the local heap header information is parsed. - - - Fixed CVE-2018-11202 - - A malformed file could result in chunk index memory leaks. Under most - conditions (i.e., when the --enable-using-memchecker option is NOT - used), this would result in a small memory leak and and infinite loop - and abort when shutting down the library. The infinite loop would be - due to the "free list" package not being able to clear its resources - so the library couldn't shut down. When the "using a memory checker" - option is used, the free lists are disabled so there is just a memory - leak with no abort on library shutdown. - - The chunk index resources are now correctly cleaned up when reading - misparsed files and valgrind confirms no memory leaks. - - - Fixed an issue where an assert statement was converted to an - incorrect error check statement - - An assert statement in the library dealing with undefined dataset data - fill values was converted to an improper error check that would always - trigger when a dataset's fill value was set to NULL (undefined). This - has now been fixed. - - - Fixed an assertion failure when attempting to use the Subfiling IOC - VFD directly - - The Subfiling feature makes use of two Virtual File Drivers, the - Subfiling VFD and the IOC (I/O Concentrator) VFD. The two VFDs are - intended to be stacked together such that the Subfiling VFD sits - "on top" of the IOC VFD and routes I/O requests through it; using the - IOC VFD alone is currently unsupported. The IOC VFD has been fixed so - that an error message is displayed in this situation rather than causing - an assertion failure. - - - Fixed a potential bug when copying empty enum datatypes - - Copying an empty enum datatype (including implicitly, as when an enum - is a part of a compound datatype) would fail in an assert in debug - mode and could fail in release mode depending on how the platform - handles undefined behavior regarding size 0 memory allocations and - using memcpy with a NULL src pointer. - - The library is now more careful about using memory operations when - copying empty enum datatypes and will not error or raise an assert. - - - Added an AAPL check to H5Acreate - - A check was added to H5Acreate to ensure that a failure is correctly - returned when an invalid Attribute Access Property List is passed - in to the function. The HDF5 API tests were failing for certain - build types due to this condition not being checked previously. + - Java Library ------------ - - Fixed switch case 'L' block missing a break statement. - - The HDF5Array.arrayify method is missing a break statement in the case 'L': section - which causes it to fall through and throw an HDF5JavaException when attempting to - read an Array[Array[Long]]. - - The error was fixed by inserting a break statement at the end of the case 'L': sections. - - Fixes GitHub issue #3056 + - Configuration ------------- - - Fixed a configuration issue that prevented building of the Subfiling VFD on macOS - - Checks were added to the CMake and Autotools code to verify that CLOCK_MONOTONIC_COARSE, - PTHREAD_MUTEX_ADAPTIVE_NP and pthread_condattr_setclock() are available before attempting - to use them in Subfiling VFD-related utility code. Without these checks, attempting - to build the Subfiling VFD on macOS would fail. + - Tools ----- - - Fixed an issue in h5repack for variable-length typed datasets - - When repacking datasets into a new file, h5repack tries to determines whether - it can use H5Ocopy to copy each dataset into the new file, or if it needs to - manually re-create the dataset, then read data from the old dataset and write - it to the new dataset. H5repack was previously using H5Ocopy for datasets with - variable-length datatypes, but this can be problematic if the global heap - addresses involved do not match exactly between the old and new files. These - addresses could change for a variety of reasons, such as the command-line options - provided to h5repack, how h5repack allocate space in the repacked file, etc. - Since H5Ocopy does not currently perform any translation when these addresses - change, datasets that were repacked with H5Ocopy could become unreadable in the - new file. H5repack has been fixed to repack variable-length typed datasets without - using H5Ocopy to ensure that the new datasets always have the correct global heap - addresses. + - Performance @@ -233,6 +136,7 @@ Bug Fixes since HDF5-1.14.1 release ----------- - + High-Level Library ------------------ - @@ -260,69 +164,51 @@ Bug Fixes since HDF5-1.14.1 release Testing ------- - - Fixed a testing failure in testphdf5 on Cray machines - - On some Cray machines, what appears to be a bug in Cray MPICH was causing - calls to H5Fis_accessible to create a 0-byte file with strange Unix - permissions. This was causing an H5Fdelete file deletion test in the - testphdf5 program to fail due to a just-deleted HDF5 file appearing to - still be accessible on the file system. The issue in Cray MPICH has been - worked around for the time being by resetting the MPI_Info object on the - File Access Property List used to MPI_INFO_NULL before passing it to the - H5Fis_accessible call. - - - A bug was fixed in the HDF5 API test random datatype generation code - - A bug in the random datatype generation code could cause test failures - when trying to generate an enumeration datatype that has duplicated - name/value pairs in it. This has now been fixed. - - - A bug was fixed in the HDF5 API test VOL connector registration checking code - - The HDF5 API test code checks to see if the VOL connector specified by the - HDF5_VOL_CONNECTOR environment variable (if any) is registered with the library - before attempting to run tests with it so that testing can be skipped and an - error can be returned when a VOL connector fails to register successfully. - Previously, this code didn't account for VOL connectors that specify extra - configuration information in the HDF5_VOL_CONNECTOR environment variable and - would incorrectly report that the specified VOL connector isn't registered - due to including the configuration information as part of the VOL connector - name being checked for registration status. This has now been fixed. + - Platforms Tested =================== + Linux 5.19.0-1023-aws GNU gcc, gfortran, g++ + #24-Ubuntu SMP x86_64 GNU/Linux (Ubuntu 11.3.0-1ubuntu1~22.04) 11.3.0 + Ubuntu 22.04 Ubuntu clang version 14.0.0-1ubuntu1 + Intel(R) oneAPI DPC++/C++ Compiler 2023.1.0 + ifort (IFORT) 2021.9.0 20230302 + (cmake and autotools) + Linux 5.16.14-200.fc35 GNU gcc (GCC) 11.2.1 20220127 (Red Hat 11.2.1-9) #1 SMP x86_64 GNU/Linux GNU Fortran (GCC) 11.2.1 20220127 (Red Hat 11.2.1-9) Fedora35 clang version 13.0.0 (Fedora 13.0.0-3.fc35) (cmake and autotools) - Linux 5.11.0-34-generic GNU gcc (GCC) 9.3.0-17ubuntu1 - #36-Ubuntu SMP x86_64 GNU/Linux GNU Fortran (GCC) 9.3.0-17ubuntu1 - Ubuntu 20.04 Ubuntu clang version 10.0.0-4 - (cmake and autotools) - - Linux 5.3.18-150300-cray_shasta_c cray-mpich/8.1.16 - #1 SMP x86_64 GNU/Linux Cray clang 14.0.0 - (crusher) GCC 11.2.0 + Linux 5.14.21-cray_shasta_c cray-mpich/8.1.23 + #1 SMP x86_64 GNU/Linux cce/15.0.0 + (frontier) gcc/12.2.0 (cmake) - Linux 4.14.0-115.35.1.1chaos openmpi 4.0.5 - #1 SMP aarch64 GNU/Linux GCC 9.2.0 (ARM-build-5) - (stria) GCC 7.2.0 (Spack GCC) + Linux 5.11.0-34-generic GNU gcc (GCC) 9.4.0-1ubuntu1 + #36-Ubuntu SMP x86_64 GNU/Linux GNU Fortran (GCC) 9.4.0-1ubuntu1 + Ubuntu 20.04 Ubuntu clang version 10.0.0-4ubuntu1 + Intel(R) oneAPI DPC++/C++ Compiler 2023.1.0 + ifort (IFORT) 2021.9.0 20230302 + (cmake and autotools) + + Linux 4.14.0-115.35.1.1chaos aue/openmpi/4.1.4-arm-22.1.0.12 + #1 SMP aarch64 GNU/Linux Arm C/C++/Fortran Compiler version 22.1 + (stria) (based on LLVM 13.0.1) (cmake) Linux 4.14.0-115.35.1.3chaos spectrum-mpi/rolling-release #1 SMP ppc64le GNU/Linux clang 12.0.1 (vortex) GCC 8.3.1 - XL 16.1.1 + XL 2021.09.22 (cmake) Linux-4.14.0-115.21.2 spectrum-mpi/rolling-release #1 SMP ppc64le GNU/Linux clang 12.0.1, 14.0.5 (lassen) GCC 8.3.1 - XL 16.1.1.2, 2021,09.22, 2022.08.05 + XL 16.1.1.2, 2021.09.22, 2022.08.05 (cmake) Linux-4.12.14-197.99-default cray-mpich/7.7.14 @@ -338,41 +224,43 @@ Platforms Tested Linux 3.10.0-1160.24.1.el7 GNU C (gcc), Fortran (gfortran), C++ (g++) #1 SMP x86_64 GNU/Linux compilers: Centos7 Version 4.8.5 20150623 (Red Hat 4.8.5-4) - (jelly/kituo/moohan) Version 4.9.3, Version 5.3.0, Version 6.3.0, - Version 7.2.0, Version 8.3.0, Version 9.1.0 + (jelly/kituo/moohan) Version 4.9.3, Version 7.2.0, Version 8.3.0, + Version 9.1.0, Version 10.2.0 Intel(R) C (icc), C++ (icpc), Fortran (icc) compilers: Version 17.0.0.098 Build 20160721 GNU C (gcc) and C++ (g++) 4.8.5 compilers - with NAG Fortran Compiler Release 6.1(Tozai) + with NAG Fortran Compiler Release 7.1(Hanzomon) Intel(R) C (icc) and C++ (icpc) 17.0.0.098 compilers - with NAG Fortran Compiler Release 6.1(Tozai) + with NAG Fortran Compiler Release 7.1(Hanzomon) MPICH 3.1.4 compiled with GCC 4.9.3 MPICH 3.3 compiled with GCC 7.2.0 - OpenMPI 2.1.6 compiled with icc 18.0.1 - OpenMPI 3.1.3 and 4.0.0 compiled with GCC 7.2.0 + OpenMPI 3.1.3 compiled with GCC 7.2.0 and 4.1.2 + compiled with GCC 9.1.0 PGI C, Fortran, C++ for 64-bit target on x86_64; - Version 19.10-0 + Versions 18.4.0 and 19.10-0 + NVIDIA nvc, nvfortran and nvc++ version 22.5-0 (autotools and cmake) + Linux-3.10.0-1160.0.0.1chaos openmpi-4.1.2 #1 SMP x86_64 GNU/Linux clang 6.0.0, 11.0.1 (quartz) GCC 7.3.0, 8.1.0 Intel 19.0.4, 2022.2, oneapi.2022.2 - Linux-3.10.0-1160.71.1.1chaos openmpi/4.1 + Linux-3.10.0-1160.90.1.1chaos openmpi/4.1 #1 SMP x86_64 GNU/Linux GCC 7.2.0 (skybridge) Intel/19.1 (cmake) - Linux-3.10.0-1160.66.1.1chaos openmpi/4.1 + Linux-3.10.0-1160.90.1.1chaos openmpi/4.1 #1 SMP x86_64 GNU/Linux GCC 7.2.0 (attaway) Intel/19.1 (cmake) - Linux-3.10.0-1160.59.1.1chaos openmpi/4.1 - #1 SMP x86_64 GNU/Linux Intel/19.1 + Linux-3.10.0-1160.90.1.1chaos openmpi-intel/4.1 + #1 SMP x86_64 GNU/Linux Intel/19.1.2, 21.3.0 and 22.2.0 (chama) (cmake) macOS Apple M1 11.6 Apple clang version 12.0.5 (clang-1205.0.22.11) @@ -383,14 +271,6 @@ Platforms Tested Darwin 20.4.0 x86_64 gfortran GNU Fortran (Homebrew GCC 10.2.0_3) 10.2.0 (bigsur-1) Intel icc/icpc/ifort version 2021.2.0 20210228 - macOS High Sierra 10.13.6 Apple LLVM version 10.0.0 (clang-1000.10.44.4) - 64-bit gfortran GNU Fortran (GCC) 6.3.0 - (bear) Intel icc/icpc/ifort version 19.0.4.233 20190416 - - macOS Sierra 10.12.6 Apple LLVM version 9.0.0 (clang-900.39.2) - 64-bit gfortran GNU Fortran (GCC) 7.4.0 - (kite) Intel icc/icpc/ifort version 17.0.2 - Mac OS X El Capitan 10.11.6 Apple clang version 7.3.0 from Xcode 7.3 64-bit gfortran GNU Fortran (GCC) 5.2.0 (osx1011test) Intel icc/icpc/ifort version 16.0.2 @@ -405,14 +285,12 @@ Platforms Tested x86_64; Version 19.10-0 - Windows 10 x64 Visual Studio 2015 w/ Intel C/C++/Fortran 18 (cmake) - Visual Studio 2017 w/ Intel C/C++/Fortran 19 (cmake) - Visual Studio 2019 w/ clang 12.0.0 + Windows 10 x64 Visual Studio 2019 w/ clang 12.0.0 with MSVC-like command-line (C/C++ only - cmake) - Visual Studio 2019 w/ Intel C/C++/Fortran oneAPI 2022 (cmake) + Visual Studio 2019 w/ Intel C/C++ only cmake) Visual Studio 2022 w/ clang 15.0.1 with MSVC-like command-line (C/C++ only - cmake) - Visual Studio 2022 w/ Intel C/C++/Fortran oneAPI 2022 (cmake) + Visual Studio 2022 w/ Intel C/C++/Fortran oneAPI 2023 (cmake) Visual Studio 2019 w/ MSMPI 10.1 (C only - cmake) |