Skip to content

Commit

Permalink
Merge branch 'develop' into locking_protocol
Browse files Browse the repository at this point in the history
  • Loading branch information
derobins authored Oct 29, 2024
2 parents affe3a2 + 5bdd379 commit b14ce95
Show file tree
Hide file tree
Showing 122 changed files with 804 additions and 692 deletions.
8 changes: 4 additions & 4 deletions .github/workflows/abi-report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,15 +51,15 @@ jobs:
- name: Get published binary (Linux)
uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
name: tgz-ubuntu-2204_gcc-binary
name: tgz-ubuntu-2404_gcc-binary
path: ${{ github.workspace }}

- name: List files for the space (Linux)
run: |
ls -l ${{ github.workspace }}
- name: Uncompress gh binary (Linux)
run: tar -zxvf ${{ github.workspace }}/${{ inputs.file_base }}-ubuntu-2204_gcc.tar.gz
run: tar -zxvf ${{ github.workspace }}/${{ inputs.file_base }}-ubuntu-2404_gcc.tar.gz

- name: Uncompress hdf5 binary (Linux)
run: |
Expand All @@ -84,8 +84,8 @@ jobs:
run: |
mkdir "${{ github.workspace }}/hdf5R"
cd "${{ github.workspace }}/hdf5R"
wget -q https://github.com/HDFGroup/hdf5/releases/download/hdf5_${{ inputs.file_ref }}/hdf5-${{ steps.convert-hdf5lib-refname.outputs.HDF5R_DOTS }}-ubuntu-2204_gcc.tar.gz
tar zxf hdf5-${{ steps.convert-hdf5lib-refname.outputs.HDF5R_DOTS }}-ubuntu-2204_gcc.tar.gz
wget -q https://github.com/HDFGroup/hdf5/releases/download/hdf5_${{ inputs.file_ref }}/hdf5-${{ steps.convert-hdf5lib-refname.outputs.HDF5R_DOTS }}-ubuntu-2404_gcc.tar.gz
tar zxf hdf5-${{ steps.convert-hdf5lib-refname.outputs.HDF5R_DOTS }}-ubuntu-2404_gcc.tar.gz
- name: List files for the space (Linux)
run: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/cmake-bintest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ jobs:
- name: Get published binary (Linux)
uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
name: tgz-ubuntu-2204_gcc-${{ inputs.build_mode }}-binary
name: tgz-ubuntu-2404_gcc-${{ inputs.build_mode }}-binary
path: ${{ github.workspace }}

- name: Uncompress hdf5 binary (Linux)
Expand Down
30 changes: 15 additions & 15 deletions .github/workflows/cmake-ctest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -266,21 +266,21 @@ jobs:
cp ${{ runner.workspace }}/hdf5/build/${{ inputs.preset_name }}-GNUC/README.md ${{ runner.workspace }}/build/hdf5
cp ${{ runner.workspace }}/hdf5/build/${{ inputs.preset_name }}-GNUC/*.tar.gz ${{ runner.workspace }}/build/hdf5
cd "${{ runner.workspace }}/build"
tar -zcvf ${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2204_gcc.tar.gz hdf5
tar -zcvf ${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2404_gcc.tar.gz hdf5
shell: bash

- name: Publish deb binary (Linux)
id: publish-ctest-deb-binary
run: |
mkdir "${{ runner.workspace }}/builddeb"
cp ${{ runner.workspace }}/hdf5/build/${{ inputs.preset_name }}-GNUC/*.deb ${{ runner.workspace }}/builddeb/${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2204_gcc.deb
cp ${{ runner.workspace }}/hdf5/build/${{ inputs.preset_name }}-GNUC/*.deb ${{ runner.workspace }}/builddeb/${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2404_gcc.deb
shell: bash

- name: Publish rpm binary (Linux)
id: publish-ctest-rpm-binary
run: |
mkdir "${{ runner.workspace }}/buildrpm"
cp ${{ runner.workspace }}/hdf5/build/${{ inputs.preset_name }}-GNUC/*.rpm ${{ runner.workspace }}/buildrpm/${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2204_gcc.rpm
cp ${{ runner.workspace }}/hdf5/build/${{ inputs.preset_name }}-GNUC/*.rpm ${{ runner.workspace }}/buildrpm/${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2404_gcc.rpm
shell: bash

- name: List files in the space (Linux)
Expand All @@ -292,22 +292,22 @@ jobs:
- name: Save published binary (Linux)
uses: actions/upload-artifact@v4
with:
name: tgz-ubuntu-2204_gcc-binary
path: ${{ runner.workspace }}/build/${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2204_gcc.tar.gz
name: tgz-ubuntu-2404_gcc-binary
path: ${{ runner.workspace }}/build/${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2404_gcc.tar.gz
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn`

- name: Save published binary deb (Linux)
uses: actions/upload-artifact@v4
with:
name: deb-ubuntu-2204_gcc-binary
path: ${{ runner.workspace }}/builddeb/${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2204_gcc.deb
name: deb-ubuntu-2404_gcc-binary
path: ${{ runner.workspace }}/builddeb/${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2404_gcc.deb
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn`

- name: Save published binary rpm (Linux)
uses: actions/upload-artifact@v4
with:
name: rpm-ubuntu-2204_gcc-binary
path: ${{ runner.workspace }}/buildrpm/${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2204_gcc.rpm
name: rpm-ubuntu-2404_gcc-binary
path: ${{ runner.workspace }}/buildrpm/${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2404_gcc.rpm
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn`

# Save doxygen files created by ctest script
Expand Down Expand Up @@ -589,7 +589,7 @@ jobs:
cp ${{ runner.workspace }}/hdf5/build/${{ inputs.preset_name }}-GNUC-S3/README.md ${{ runner.workspace }}/build/hdf5
cp ${{ runner.workspace }}/hdf5/build/${{ inputs.preset_name }}-GNUC-S3/*.tar.gz ${{ runner.workspace }}/build/hdf5
cd "${{ runner.workspace }}/build"
tar -zcvf ${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2204_gcc_s3.tar.gz hdf5
tar -zcvf ${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2404_gcc_s3.tar.gz hdf5
shell: bash

- name: List files in the space (Linux S3)
Expand All @@ -601,8 +601,8 @@ jobs:
- name: Save published binary (Linux S3)
uses: actions/upload-artifact@v4
with:
name: tgz-ubuntu-2204_gcc_s3-binary
path: ${{ runner.workspace }}/build/${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2204_gcc_s3.tar.gz
name: tgz-ubuntu-2404_gcc_s3-binary
path: ${{ runner.workspace }}/build/${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2404_gcc_s3.tar.gz
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn`

####### intel builds
Expand Down Expand Up @@ -812,7 +812,7 @@ jobs:
cp ${{ runner.workspace }}/hdf5/build/${{ inputs.preset_name }}-Intel/README.md ${{ runner.workspace }}/build/hdf5
cp ${{ runner.workspace }}/hdf5/build/${{ inputs.preset_name }}-Intel/*.tar.gz ${{ runner.workspace }}/build/hdf5
cd "${{ runner.workspace }}/build"
tar -zcvf ${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2204_intel.tar.gz hdf5
tar -zcvf ${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2404_intel.tar.gz hdf5
shell: bash

- name: List files in the space (Linux_intel)
Expand All @@ -824,6 +824,6 @@ jobs:
- name: Save published binary (Linux_intel)
uses: actions/upload-artifact@v4
with:
name: tgz-ubuntu-2204_intel-binary
path: ${{ runner.workspace }}/build/${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2204_intel.tar.gz
name: tgz-ubuntu-2404_intel-binary
path: ${{ runner.workspace }}/build/${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2404_intel.tar.gz
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn`
16 changes: 11 additions & 5 deletions .github/workflows/cmake.yml
Original file line number Diff line number Diff line change
Expand Up @@ -129,8 +129,14 @@ jobs:
name: "CMake TestExpress Workflows"
uses: ./.github/workflows/testxpr-cmake.yml

# call-release-cmake-julia:
# name: "CMake Julia Workflows"
# uses: ./.github/workflows/julia-cmake.yml
# with:
# build_mode: "Release"
# call-release-cmake-julia:
# name: "CMake Julia Workflows"
# uses: ./.github/workflows/julia-cmake.yml
# with:
# build_mode: "Release"

call-release-cmake-msys2:
name: "CMake Msys2 Workflows"
uses: ./.github/workflows/msys2-cmake.yml
with:
build_mode: "Release"
4 changes: 2 additions & 2 deletions .github/workflows/h5py.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,8 @@ jobs:
sed -i 's/[email protected]:1.14/[email protected]:/g' \
./spack/var/spack/repos/builtin/packages/py-h5py/package.py
. ./spack/share/spack/setup-env.sh
./spack/bin/spack spec py-h5py@master+mpi ^hdf5@develop-1.17
./spack/bin/spack install py-h5py@master+mpi ^hdf5@develop-1.17
./spack/bin/spack spec py-h5py@master+mpi ^hdf5@develop-2.0
./spack/bin/spack install py-h5py@master+mpi ^hdf5@develop-2.0
./spack/bin/spack install py-pytest
./spack/bin/spack install py-ipython
./spack/bin/spack install py-pytest-mpi
Expand Down
34 changes: 17 additions & 17 deletions .github/workflows/main-cmake-spc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -293,20 +293,20 @@ jobs:
run: ctest . --parallel 2 -C Debug -V
working-directory: ${{ runner.workspace }}/build

build_v1_16:
name: "gcc DBG v1.16 default API"
build_v2_0:
name: "gcc DBG v2.0.0 default API"
runs-on: ubuntu-latest
steps:
# SETUP
- name: Install Linux Dependencies
run: |
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
echo "CC=gcc-12" >> $GITHUB_ENV
echo "CXX=g++-12" >> $GITHUB_ENV
echo "FC=gfortran-12" >> $GITHUB_ENV
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
echo "CC=gcc-12" >> $GITHUB_ENV
echo "CXX=g++-12" >> $GITHUB_ENV
echo "FC=gfortran-12" >> $GITHUB_ENV
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- name: Get Sources
Expand All @@ -333,7 +333,7 @@ jobs:
-DHDF5_ENABLE_DIRECT_VFD:BOOL=ON \
-DHDF5_ENABLE_ROS3_VFD:BOOL=ON \
-DH5_NO_DEPRECATED_SYMBOLS:BOOL=OFF \
-DHDF5_DEFAULT_API_VERSION:STRING=v116 \
-DHDF5_DEFAULT_API_VERSION:STRING=v200 \
$GITHUB_WORKSPACE
shell: bash

Expand All @@ -354,13 +354,13 @@ jobs:
# SETUP
- name: Install Linux Dependencies
run: |
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
echo "CC=gcc-12" >> $GITHUB_ENV
echo "CXX=g++-12" >> $GITHUB_ENV
echo "FC=gfortran-12" >> $GITHUB_ENV
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
echo "CC=gcc-12" >> $GITHUB_ENV
echo "CXX=g++-12" >> $GITHUB_ENV
echo "FC=gfortran-12" >> $GITHUB_ENV
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- name: Get Sources
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 @@ -285,7 +285,7 @@ jobs:
- name: Save published binary (linux)
uses: actions/upload-artifact@v4
with:
name: tgz-ubuntu-2204_gcc-${{ inputs.build_mode }}-binary
name: tgz-ubuntu-2404_gcc-${{ inputs.build_mode }}-binary
path: ${{ runner.workspace }}/build/HDF5-*-Linux.tar.gz
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn`
if: ${{ (matrix.os == 'ubuntu-latest') && (inputs.thread_safety != 'TS') && (inputs.concurrent != 'CC') && ( inputs.build_mode != 'Debug') }}
Expand Down
91 changes: 91 additions & 0 deletions .github/workflows/msys2-cmake.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
name: hdf5 dev CMake MSys2 CI

# Triggers the workflow on a call from another workflow
on:
workflow_call:
inputs:
build_mode:
description: "release vs. debug build"
required: true
type: string

permissions:
contents: read

jobs:

CMake_build_and_test:

# The type of runner that the job will run on
runs-on: windows-latest
strategy:
matrix:
include:
- { icon: '⬛', sys: mingw32 }
- { icon: '🟦', sys: mingw64 }
- { icon: '🟨', sys: ucrt64 }
- { icon: '🟧', sys: clang64 }
name: ${{ matrix.icon }} MSYS2-${{ matrix.sys }}-${{ inputs.build_mode }}
defaults:
run:
shell: msys2 {0}

steps:
- name: '${{ matrix.icon }} Setup MSYS2'
uses: msys2/setup-msys2@v2
with:
msystem: ${{matrix.sys}}
update: true
install: >-
base-devel
git
gcc
make
development
pacboy: >-
toolchain:p
cmake:p
ninja:p
- name: Set git to use LF
run: |
git config --global core.autocrlf input
- name: Get Sources
uses: actions/[email protected]

- name: CMake Configure
run: |
mkdir "${{ runner.workspace }}/build"
cd "${{ runner.workspace }}/build"
cmake -C $GITHUB_WORKSPACE/config/cmake/cacheinit.cmake \
-G Ninja \
-DCMAKE_BUILD_TYPE=${{ inputs.build_mode }} \
-DCMAKE_TOOLCHAIN_FILE="" \
-DHDF5_GENERATE_HEADERS=OFF \
-DBUILD_SHARED_LIBS=ON \
-DHDF5_ENABLE_ALL_WARNINGS=ON \
-DHDF5_ENABLE_PARALLEL:BOOL=OFF \
-DHDF5_BUILD_CPP_LIB:BOOL=OFF \
-DHDF5_BUILD_FORTRAN=OFF \
-DHDF5_BUILD_JAVA=OFF \
-DHDF5_BUILD_DOC=OFF \
-DLIBAEC_USE_LOCALCONTENT=OFF \
-DZLIB_USE_LOCALCONTENT=OFF \
$GITHUB_WORKSPACE
- name: CMake Build
run: |
cmake --build . --parallel 3 --config ${{ inputs.build_mode }}
working-directory: ${{ runner.workspace }}/build

- name: CMake Run Tests
run: |
ctest . --parallel 2 -C ${{ inputs.build_mode }} -V -E "tfloatsattrs|testhdf5-base|cache_api|dt_arith|H5TEST-dtypes|err_compat"
working-directory: ${{ runner.workspace }}/build

- name: CMake Run Expected to Fail Tests
run: |
ctest . --parallel 2 -C ${{ inputs.build_mode }} -V -R "tfloatsattrs|testhdf5-base|cache_api|dt_arith|H5TEST-dtypes|err_compat"
working-directory: ${{ runner.workspace }}/build
continue-on-error: true
7 changes: 7 additions & 0 deletions .github/workflows/nvhpc-cmake.yml
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,13 @@ jobs:
ctest . -E "MPI_TEST|H5TEST-dt_arith|H5TEST-dtransform" --parallel 2 -C ${{ inputs.build_mode }} -V
working-directory: ${{ runner.workspace }}/build

- name: CMake Run Expected To Fail Tests
shell: bash
run: |
ctest . -R "H5TEST-dt_arith|H5TEST-dtransform" --parallel 2 -C ${{ inputs.build_mode }} -V
working-directory: ${{ runner.workspace }}/build
continue-on-error: true

- name: CMake Run Parallel Tests
shell: bash
run: |
Expand Down
Loading

0 comments on commit b14ce95

Please sign in to comment.