CI: failure in runtime job with h5py
Closed this issue · 5 comments
Example CI failure in gh-894 for the runtime job to build h5py
from source with MPI support: https://github.com/darshan-hpc/darshan/actions/runs/4078783404/jobs/7029407901
Snippet of the error is below. Since h5py
release went up on PyPI on January 23/2023, it may be worth a temporary pin to circumvent for now...
Collecting h5py
Downloading h5py-3.8.0.tar.gz (400 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 400.8/400.8 kB 6.5 MB/s eta 0:00:00
Installing build dependencies: started
Installing build dependencies: finished with status 'done'
Getting requirements to build wheel: started
Getting requirements to build wheel: finished with status 'done'
Installing backend dependencies: started
Installing backend dependencies: finished with status 'error'
error: subprocess-exited-with-error
× pip subprocess to install backend dependencies did not run successfully.
│ exit code: 1
╰─> [26 lines of output]
DEPRECATION: --no-binary currently disables reading from the cache of locally built wheels. In the future --no-binary will not influence the wheel cache. pip 23.1 will enforce this behaviour change. A possible replacement is to use the --no-cache-dir option. You can use the flag --use-feature=no-binary-enable-wheel-cache to test the upcoming behaviour. Discussion can be found at https://github.com/pypa/pip/issues/11453
Collecting wheel
Using cached wheel-0.38.4-py3-none-any.whl (36 kB)
Collecting mpi4py==3.1.0
Downloading mpi4py-3.1.0.tar.gz (2.4 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.4/2.4 MB 25.0 MB/s eta 0:00:00
Installing build dependencies: started
Installing build dependencies: finished with status 'done'
Getting requirements to build wheel: started
Getting requirements to build wheel: finished with status 'error'
error: subprocess-exited-with-error
× Getting requirements to build wheel did not run successfully.
│ exit code: 1
╰─> [1 lines of output]
error in mpi4py setup command: 'python_requires' must be a string containing valid version specifiers; Invalid specifier: '!=3.4.*''
[end of output]
If that doesn't work, it is probably pip
that needs to be pinned, since the complaint is about mpi4py
in the end, and a new pip
version was uploaded to PyPI even more recently.
Here is the upstream issue in h5py
: h5py/h5py#2222
The problem is setuptools not pip.
Unless you specifically need to make a redistributable wheel, it is probably safe to use --no-build-isolation
and make sure you have pre-installed mpi4py.
sounds good, I'll try that
This was circumvented by gh-896 -- let's close this since whatever issues we see will likely be different the next time we bump up versions in this CI job.