From e92faa23a69805ec7215f265e356451c0863e96c Mon Sep 17 00:00:00 2001 From: osobh Date: Sat, 26 Sep 2026 00:29:38 -0500 Subject: [PATCH] ci: install hdf5-tools for the h5rs interop tests The clawhdf5-tools interop tests compare h5rs with h5ls, h5stat, h5dump and h5diff, and CLAWHDF5_REQUIRE_INTEROP=1 turns a missing tool into a failure. Also hold clawhdf5-tools to the no-C-in-the-default-build check. Co-Authored-By: Claude Opus 5.5 (1M context) --- .gitea/workflows/ci.yml | 4 +++- scripts/ci-test.sh | 3 ++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index 1a7cdde..fcc2d23 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -31,7 +31,9 @@ jobs: # cmake builds libz-ng-sys for the opt-in `fast-deflate` (zlib-ng) # steps in ci-test.sh; rust:latest does not ship it. The default # build (pure-Rust zlib-rs) does not need it. - apt-get install -y --no-install-recommends python3 python3-venv cmake + # hdf5-tools: h5ls/h5stat/h5dump/h5diff, which the h5rs + # (clawhdf5-tools) interop tests compare against. + apt-get install -y --no-install-recommends python3 python3-venv cmake hdf5-tools python3 -m venv /opt/interop /opt/interop/bin/pip install --no-cache-dir h5py numpy netCDF4 xarray hdf5plugin echo "/opt/interop/bin" >> "$GITHUB_PATH" diff --git a/scripts/ci-test.sh b/scripts/ci-test.sh index 1d7a7f9..af9dec6 100755 --- a/scripts/ci-test.sh +++ b/scripts/ci-test.sh @@ -92,7 +92,8 @@ run_step "cargo clippy (fast-deflate / zlib-ng)" cargo clippy \ no_c_in_default_build() { local crate found=0 for crate in clawhdf5-format clawhdf5-io clawhdf5-filters clawhdf5 \ - clawhdf5-agent clawhdf5-ann clawhdf5-accel clawhdf5-netcdf4 clawhdf5-cli; do + clawhdf5-agent clawhdf5-ann clawhdf5-accel clawhdf5-netcdf4 clawhdf5-cli \ + clawhdf5-tools; do local c_deps c_deps=$(cargo tree -q -p "$crate" -e normal,build --prefix none \ | grep -E '^([a-z0-9_-]+-sys|cc|cmake) v' | sort -u)