Skip to content

fix Linux/macOS HDF5_PLUGIN_PATH in miniconda.yml (compression plugin tests silently skip on ubuntu/macos) - #1495

Open
glaziermag wants to merge 1 commit into
Unidata:masterfrom
glaziermag:fix-unix-plugin-path
Open

fix Linux/macOS HDF5_PLUGIN_PATH in miniconda.yml (compression plugin tests silently skip on ubuntu/macos)#1495
glaziermag wants to merge 1 commit into
Unidata:masterfrom
glaziermag:fix-unix-plugin-path

Conversation

@glaziermag

Copy link
Copy Markdown

On Linux and macOS, the Tests step in miniconda.yml exports HDF5_PLUGIN_PATH="${CONDA_PREFIX}/hdf5/lib/plugin/" — a directory that doesn't exist in the micromamba env. conda-forge installs the netcdf-c filter plugins at ${CONDA_PREFIX}/lib/hdf5/plugin (the H5_DEFAULT_PLUGINDIR baked into conda-forge hdf5 — hdf5-feedstock build.sh L88 — which the libnetcdf feedstock uses as its plugin install dir). With the variable pointing at the empty path, has_zstd_filter()/has_bzip2_filter()/has_blosc_filter() return False and test_compression_{zstd,bzip2,blosc}.py skip with "filter not available" on every ubuntu/macos job of Build and Test, while the Windows jobs — whose ${CONDA_PREFIX}\Library\hdf5\lib\plugin path is correct — run them. Latest master run: ubuntu 3.12 109 passed, 6 skipped vs windows 3.12 111 passed, 3 skipped, 1 xpassed.

Inside the workflow's env:

$ ls "${CONDA_PREFIX}/hdf5/lib/plugin/"     # what the workflow exports
ls: cannot access '.../hdf5/lib/plugin/': No such file or directory
$ ls "${CONDA_PREFIX}/lib/hdf5/plugin"      # where the plugins are
lib__nch5blosc.so  lib__nch5bzip2.so  lib__nch5zstd.so  ...

Verified on my fork at current master (ad9d7d8), runs 1 and 2: the unchanged path reproduces the three skips on ubuntu and macos (109 passed, 6 skipped), and with this one-line change they run and pass, matching Windows (111 passed, 3 skipped, 1 xpassed). The Windows half of this export was tuned against CI directory listings in #1450 (8f83e40 "set HDF5_PLUGIN_PATH for tests"), but the Linux/macOS half kept the original guess from 2d6c8d4, and the skips keep the jobs green.

Disclosure: found while auditing CI logs with an AI assistant (Claude); I re-read the workflow history and ran the fork verifications myself before opening this.

@CLAassistant

Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants