Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/develop' into threading_updates
Browse files Browse the repository at this point in the history
  • Loading branch information
qkoziol committed Apr 2, 2024
2 parents 13cd597 + f2cf0be commit 64851bc
Show file tree
Hide file tree
Showing 27 changed files with 69 additions and 49 deletions.
4 changes: 3 additions & 1 deletion .github/workflows/cmake-bintest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,9 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Install CMake Dependencies (Linux)
run: sudo apt-get install ninja-build doxygen graphviz
run: |
sudo apt-get update
sudo apt-get install ninja-build doxygen graphviz
- name: Set up JDK 19
uses: actions/setup-java@v4
Expand Down
13 changes: 9 additions & 4 deletions .github/workflows/cmake-ctest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,9 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Install CMake Dependencies (Linux)
run: sudo apt-get install ninja-build graphviz
run: |
sudo apt-get update
sudo apt-get install ninja-build graphviz
- name: Install Dependencies
uses: ssciwr/doxygen-install@v1
Expand Down Expand Up @@ -330,8 +332,9 @@ jobs:
steps:
- name: Install CMake Dependencies (Linux S3)
run: |
sudo apt-get install ninja-build doxygen graphviz
sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev
sudo apt-get update
sudo apt-get install ninja-build doxygen graphviz
sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev
- name: Set file base name (Linux S3)
id: set-file-base
Expand Down Expand Up @@ -493,7 +496,9 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Install CMake Dependencies (Linux_intel)
run: sudo apt-get install ninja-build doxygen graphviz
run: |
sudo apt-get update
sudo apt-get install ninja-build doxygen graphviz
- name: add oneAPI to env
uses: fortran-lang/setup-fortran@v1
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/intel-cmake.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
- name: Install Dependencies (Linux)
shell: bash
run: |
sudo apt update
sudo apt-get update
sudo apt-get install ninja-build doxygen graphviz
sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/julia-cmake.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
- name: Install Dependencies
shell: bash
run: |
sudo apt update
sudo apt-get update
sudo apt-get install ninja-build doxygen graphviz
sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev
sudo apt install -y libaec-dev zlib1g-dev wget curl bzip2 flex bison cmake libzip-dev openssl build-essential
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/main-auto-par-spc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ jobs:
# libssl, etc. are needed for the ros3 VFD
- name: Install Linux Dependencies
run: |
sudo apt update
sudo apt-get update
sudo apt-get install ninja-build doxygen graphviz
sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev
sudo apt install gcc-12 g++-12 gfortran-12
Expand Down Expand Up @@ -86,7 +86,7 @@ jobs:
# libssl, etc. are needed for the ros3 VFD
- name: Install Linux Dependencies
run: |
sudo apt update
sudo apt-get update
sudo apt-get install ninja-build doxygen graphviz
sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev
sudo apt install gcc-12 g++-12 gfortran-12
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/main-auto-par.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ jobs:
# SETUP
- name: Install Linux Dependencies
run: |
sudo apt update
sudo apt-get update
sudo apt-get install ninja-build doxygen graphviz
sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev
sudo apt install gcc-12 g++-12 gfortran-12
Expand Down
16 changes: 8 additions & 8 deletions .github/workflows/main-auto-spc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ jobs:
# libssl, etc. are needed for the ros3 VFD
- name: Install Linux Dependencies
run: |
sudo apt update
sudo apt-get update
sudo apt-get install ninja-build doxygen graphviz
sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev
sudo apt install gcc-12 g++-12 gfortran-12
Expand Down Expand Up @@ -89,7 +89,7 @@ jobs:
# libssl, etc. are needed for the ros3 VFD
- name: Install Linux Dependencies
run: |
sudo apt update
sudo apt-get update
sudo apt-get install ninja-build doxygen graphviz
sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev
sudo apt install gcc-12 g++-12 gfortran-12
Expand Down Expand Up @@ -150,7 +150,7 @@ jobs:
# libssl, etc. are needed for the ros3 VFD
- name: Install Linux Dependencies
run: |
sudo apt update
sudo apt-get update
sudo apt-get install ninja-build doxygen graphviz
sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev
sudo apt install gcc-12 g++-12 gfortran-12
Expand Down Expand Up @@ -211,7 +211,7 @@ jobs:
# libssl, etc. are needed for the ros3 VFD
- name: Install Linux Dependencies
run: |
sudo apt update
sudo apt-get update
sudo apt-get install ninja-build doxygen graphviz
sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev
sudo apt install gcc-12 g++-12 gfortran-12
Expand Down Expand Up @@ -272,7 +272,7 @@ jobs:
# libssl, etc. are needed for the ros3 VFD
- name: Install Linux Dependencies
run: |
sudo apt update
sudo apt-get update
sudo apt-get install ninja-build doxygen graphviz
sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev
sudo apt install gcc-12 g++-12 gfortran-12
Expand Down Expand Up @@ -333,7 +333,7 @@ jobs:
# libssl, etc. are needed for the ros3 VFD
- name: Install Linux Dependencies
run: |
sudo apt update
sudo apt-get update
sudo apt-get install ninja-build doxygen graphviz
sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev
sudo apt install gcc-12 g++-12 gfortran-12
Expand Down Expand Up @@ -394,7 +394,7 @@ jobs:
# libssl, etc. are needed for the ros3 VFD
- name: Install Linux Dependencies
run: |
sudo apt update
sudo apt-get update
sudo apt-get install ninja-build doxygen graphviz
sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev
sudo apt install gcc-12 g++-12 gfortran-12
Expand Down Expand Up @@ -457,7 +457,7 @@ jobs:
# libssl, etc. are needed for the ros3 VFD
- name: Install Linux Dependencies
run: |
sudo apt update
sudo apt-get update
sudo apt-get install ninja-build doxygen graphviz
sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev
sudo apt install gcc-12 g++-12 gfortran-12
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/main-auto.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ jobs:
# SETUP
- name: Install Linux Dependencies
run: |
sudo apt update
sudo apt-get update
sudo apt-get install ninja-build doxygen graphviz
sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev
sudo apt install gcc-12 g++-12 gfortran-12
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/main-cmake-par.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ jobs:

- name: Install Linux Dependencies
run: |
sudo apt update
sudo apt-get update
sudo apt-get install ninja-build doxygen graphviz
sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev
sudo apt install gcc-12 g++-12 gfortran-12
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/main-cmake-spc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ jobs:
# SETUP
- name: Install Linux Dependencies
run: |
sudo apt update
sudo apt-get update
sudo apt-get install ninja-build doxygen graphviz
sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev
sudo apt install gcc-12 g++-12 gfortran-12
Expand Down Expand Up @@ -86,7 +86,7 @@ jobs:
# SETUP
- name: Install Linux Dependencies
run: |
sudo apt update
sudo apt-get update
sudo apt-get install ninja-build doxygen graphviz
sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev
sudo apt install gcc-12 g++-12 gfortran-12
Expand Down Expand Up @@ -146,7 +146,7 @@ jobs:
# SETUP
- name: Install Linux Dependencies
run: |
sudo apt update
sudo apt-get update
sudo apt-get install ninja-build doxygen graphviz
sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev
sudo apt install gcc-12 g++-12 gfortran-12
Expand Down Expand Up @@ -206,7 +206,7 @@ jobs:
# SETUP
- name: Install Linux Dependencies
run: |
sudo apt update
sudo apt-get update
sudo apt-get install ninja-build doxygen graphviz
sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev
sudo apt install gcc-12 g++-12 gfortran-12
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/main-cmake.yml
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@ jobs:

- name: Install CMake Dependencies (Linux)
run: |
sudo apt update
sudo apt-get update
sudo apt-get install ninja-build graphviz
sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev
sudo apt install gcc-12 g++-12 gfortran-12
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/nvhpc-cmake.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
- name: Install Dependencies
shell: bash
run: |
sudo apt update
sudo apt-get update
sudo apt-get install ninja-build doxygen graphviz
sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev
sudo apt install -y libaec-dev zlib1g-dev wget curl bzip2 flex bison cmake libzip-dev openssl build-essential
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/release-files.yml
Original file line number Diff line number Diff line change
Expand Up @@ -167,7 +167,7 @@ jobs:
echo "${{ steps.get-file-base.outputs.FILE_BASE }}" > ./last-file.txt
- name: Get NEWSLETTER
uses: actions/download-artifact@6b208ae046db98c579e8a3aa621ab581ff575935 # v4.1.1
uses: actions/download-artifact@c850b930e6ba138125429b7e5c93fc707a7f8427 # v4.1.4
with:
name: NEWSLETTER
path: ${{ github.workspace }}
Expand All @@ -179,7 +179,7 @@ jobs:
- name: PreRelease tag
id: create_prerelease
if: ${{ (inputs.use_environ == 'snapshots') }}
uses: softprops/action-gh-release@de2c0eb89ae2a093876385947365aca7b0e5f844 # v1
uses: softprops/action-gh-release@9d7c94cfd0a1f3ed45544c887983e9fa900f0564 # v2.0.4
with:
tag_name: "${{ inputs.use_tag }}"
prerelease: true
Expand All @@ -204,7 +204,7 @@ jobs:
- name: Release tag
id: create_release
if: ${{ (inputs.use_environ == 'release') }}
uses: softprops/action-gh-release@de2c0eb89ae2a093876385947365aca7b0e5f844 # v1
uses: softprops/action-gh-release@9d7c94cfd0a1f3ed45544c887983e9fa900f0564 # v2.0.4
with:
tag_name: "${{ inputs.use_tag }}"
prerelease: false
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/scorecard.yml
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,6 @@ jobs:

# Upload the results to GitHub's code scanning dashboard.
- name: "Upload to code-scanning"
uses: github/codeql-action/upload-sarif@8a470fddafa5cbb6266ee11b37ef4d8aae19c571 # v3.24.6
uses: github/codeql-action/upload-sarif@1b1aada464948af03b950897e5eb522f92603cc2 # v3.24.9
with:
sarif_file: results.sarif
2 changes: 1 addition & 1 deletion .github/workflows/testxpr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ jobs:
steps:
- name: Install Linux Dependencies
run: |
sudo apt update
sudo apt-get update
sudo apt-get install ninja-build doxygen graphviz
sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev
sudo apt install gcc-12 g++-12 gfortran-12
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/vfd-subfiling.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ jobs:
steps:
- name: Install Linux Dependencies
run: |
sudo apt update
sudo apt-get update
sudo apt-get install automake autoconf libtool libtool-bin
if: ${{ matrix.os == 'ubuntu-latest' }}

Expand All @@ -56,14 +56,14 @@ jobs:
# versions of each, then build and cache those installations
- name: Install OpenMPI
run: |
sudo apt update
sudo apt-get update
sudo apt-get install libopenmpi-dev
echo "CC=mpicc" >> $GITHUB_ENV
if: ${{ matrix.os == 'ubuntu-latest' && matrix.mpi_lib == 'OpenMPI' }}

- name: Install MPICH
run: |
sudo apt update
sudo apt-get update
sudo apt-get install libmpich-dev
echo "CC=mpicc" >> $GITHUB_ENV
if: ${{ matrix.os == 'ubuntu-latest' && matrix.mpi_lib == 'MPICH' }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/vol_adios2.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
steps:
- name: Install dependencies
run: |
sudo apt update
sudo apt-get update
sudo apt-get install automake autoconf libtool libtool-bin libopenmpi-dev
- name: Checkout HDF5
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/vol_async.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:
steps:
- name: Install dependencies
run: |
sudo apt update
sudo apt-get update
sudo apt-get install automake autoconf libtool libtool-bin libopenmpi-dev
- name: Checkout HDF5
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/vol_cache.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ jobs:
steps:
- name: Install dependencies
run: |
sudo apt update
sudo apt-get update
sudo apt-get install automake autoconf libtool libtool-bin libopenmpi-dev
- name: Checkout HDF5
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/vol_ext_passthru.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:
steps:
- name: Install dependencies
run: |
sudo apt update
sudo apt-get update
sudo apt-get install automake autoconf libtool libtool-bin libopenmpi-dev
- name: Checkout HDF5
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/vol_log.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:
steps:
- name: Install dependencies
run: |
sudo apt update
sudo apt-get update
sudo apt-get install automake autoconf libtool libtool-bin libopenmpi-dev zlib1g-dev
#mpich
Expand Down
9 changes: 9 additions & 0 deletions release_docs/RELEASE.txt
Original file line number Diff line number Diff line change
Expand Up @@ -746,6 +746,15 @@ Bug Fixes since HDF5-1.14.0 release

Library
-------
- Fixed a divide-by-zero issue when a corrupt file sets the page size to 0

If a corrupt file sets the page buffer size in the superblock to zero,
the library could attempt to divide by zero when allocating space in
the file. The library now checks for valid page buffer sizes when
reading the superblock message.

Fixes oss-fuzz issue 58762

- Fixed a bug when using array datatypes with certain parent types

Array datatype conversion would never use a background buffer, even if the
Expand Down
7 changes: 5 additions & 2 deletions src/H5Fsuper.c
Original file line number Diff line number Diff line change
Expand Up @@ -800,8 +800,11 @@ H5F__super_read(H5F_t *f, H5P_genplist_t *fa_plist, bool initial_read)
HGOTO_ERROR(H5E_FILE, H5E_CANTSET, FAIL, "unable to set file space strategy");
} /* end if */

assert(f->shared->fs_page_size >= H5F_FILE_SPACE_PAGE_SIZE_MIN);
assert(fsinfo.page_size >= H5F_FILE_SPACE_PAGE_SIZE_MIN);
if (f->shared->fs_page_size < H5F_FILE_SPACE_PAGE_SIZE_MIN)
HGOTO_ERROR(H5E_FILE, H5E_BADVALUE, FAIL, "file space page size too small");
if (fsinfo.page_size < H5F_FILE_SPACE_PAGE_SIZE_MIN)
HGOTO_ERROR(H5E_FILE, H5E_BADVALUE, FAIL, "file space page size too small");

if (f->shared->fs_page_size != fsinfo.page_size) {
f->shared->fs_page_size = fsinfo.page_size;

Expand Down
7 changes: 3 additions & 4 deletions src/H5Gmodule.h
Original file line number Diff line number Diff line change
Expand Up @@ -775,8 +775,8 @@
* \image html Groups_fig9_aa.gif "c) A link named dset2 to the same dataset is created in /group2."
* </td>
* <td>
* \image html Groups_fig9_bb.gif "d) The link from /group1 to dset1 is removed. The dataset is
* still in the file, but can be accessed only as /group2/dset2."
* \image html Groups_fig9_bb.gif "d) The link from /group1 to dset1 is removed."
* The dataset is still in the file, but can be accessed only as /group2/dset2.
* </td>
* </tr>
* </table>
Expand Down Expand Up @@ -811,8 +811,7 @@
* </tr>
* <tr>
* <td>
* \image html Groups_fig10_c.gif "c) dset1 has three names: /group1/dset1, /group2/dset2, and
* /group1/GXX/dset2."
* \image html Groups_fig10_c.gif "c) dset1 has 3 names: /group1/dset1, /group2/dset2, and /group1/GXX/dset2."
* </td>
* <td>
* \image html Groups_fig10_d.gif "d) dset1 has an infinite number of available path names."
Expand Down
Loading

0 comments on commit 64851bc

Please sign in to comment.