-
Notifications
You must be signed in to change notification settings - Fork 73
Pin netcdf<1.7.3 to fix failing integration tests #685
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #685 +/- ##
=========================================
Coverage 100.00% 100.00%
=========================================
Files 34 34
Lines 1997 1997
=========================================
Hits 1997 1997 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
This reverts commit c8f382e.
ae7f14c to
eafbe40
Compare
|
|
It turns out the issue wasn’t with For now, the problem can be worked around by upper-pinning An alternative would be to install all HDF5-related packages via conda-forge in CI, which would likely solve the problem too. However, that approach would effectively require us to recommend conda-forge to all users and would undermine the recent efforts to support a pure pip/uv installation workflow. Upper-pinning |
lochhh
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the detective work @niksirbi.
Just some additional notes on CI runs with different netCDF4 versions built on different netCDF-c libraries:
| Platform | Python | Status | netCDF4 Version | netCDF-c Library Version |
|---|---|---|---|---|
| windows | py13 | passing | 1.7.2 | 4.9.2 of Oct 4 2024 15:30:23 |
| mac | py13 | passing | 1.7.2 | 4.9.2 of Mar 14 2023 20:34:25 |
| ubuntu | py13 | passing | 1.7.2 | 4.9.4-development of Oct 7 2024 08:34:05 |
| ubuntu | py12 | passing | 1.7.2 | 4.9.4-development of Oct 7 2024 08:34:05 |
| ubuntu | py11 | passing | 1.7.2 | 4.9.4-development of Oct 7 2024 08:34:05 |
| windows | py13 | passing | 1.7.3 | 4.9.2 of Aug 1 2025 13:27:44 |
| mac | py13 | passing | 1.7.3 | 4.9.3 of Feb 7 2025 21:40:00 |
| ubuntu | py13 | failing | 1.7.3 | 4.9.3 of Aug 4 2025 11:49:07 |
| ubuntu | py11 | failing | 1.7.3 | 4.9.3 of Aug 4 2025 11:49:07 |
| ubuntu | py12 | failing | 1.7.3 | 4.9.3 of Aug 4 2025 11:49:07 |
Amazing, thanks @lochhh. Great to have this table for future reference. |
…nit#685) * read netCDF file with the engine used for saving them. * Revert "read netCDF file with the engine used for saving them." This reverts commit c8f382e. * exclude problematic versions of xarray * pin xarray version * try upper-pinning h5py and netcdf4 * upper pin only on linux * try upper-pinning only netCDF4 * also try without tables pip dependency
* Fixing Movement Build step * Testing movement docs deployment * Update contributors list * Update links to SLEAP docs (#681) * improve resulting displacement vectors (#657) * cart2pol now always sets phi=0 when rho=0 * Improve displace vectors computation * deprecate movement.kinematics.compute_displacement * add movement.kinematics.compute_forward_displacement * add movement.kinematics.compute_backward_displacement * adapt examples and docstrings accordingly * adapt tests to the implementation changes * update compute_kinematics example shows the existance of compute_path_length * Add backward displacement to the example. Small edits to wording and flow * Fix double ticks * Deprecation warning after short summary following numpydoc style https://numpydoc.readthedocs.io/en/latest/format.html#deprecation-warning * Factor out deprecation test for kinematics as a general test * Clarify handling of unsigned zeros in cart2pol * Fix rendering bits * Fix broken SLEAP link --------- Co-authored-by: sfmig <[email protected]> * [pre-commit.ci] pre-commit autoupdate (#682) updates: - [github.com/astral-sh/ruff-pre-commit: v0.12.11 → v0.13.3](astral-sh/ruff-pre-commit@v0.12.11...v0.13.3) - [github.com/pre-commit/mirrors-mypy: v1.17.1 → v1.18.2](pre-commit/mirrors-mypy@v1.17.1...v1.18.2) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> * update links to animovement (#684) * Pin netcdf<1.7.3 to fix failing integration tests (#685) * read netCDF file with the engine used for saving them. * Revert "read netCDF file with the engine used for saving them." This reverts commit c8f382e. * exclude problematic versions of xarray * pin xarray version * try upper-pinning h5py and netcdf4 * upper pin only on linux * try upper-pinning only netCDF4 * also try without tables pip dependency * Add documentation to specify Movement require identical keypoints (#150) (#658) * Add documentation to specify that skeleton must be identical for all individuals * Fixed tabs displaying * Fixe tabs displaying * Update docs/source/user_guide/input_output.md Co-authored-by: Niko Sirmpilatze <[email protected]> * remove note from from_file() * Update movement/io/load_poses.py Co-authored-by: Niko Sirmpilatze <[email protected]> --------- Co-authored-by: Niko Sirmpilatze <[email protected]> * [pre-commit.ci] pre-commit autoupdate (#692) updates: - [github.com/astral-sh/ruff-pre-commit: v0.13.3 → v0.14.3](astral-sh/ruff-pre-commit@v0.13.3...v0.14.3) - [github.com/mgedmin/check-manifest: 0.50 → 0.51](mgedmin/check-manifest@0.50...0.51) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> * Update contributors list (#690) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Bump actions/download-artifact from 5 to 6 (#691) Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 5 to 6. - [Release notes](https://github.com/actions/download-artifact/releases) - [Commits](actions/download-artifact@v5...v6) --- updated-dependencies: - dependency-name: actions/download-artifact dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Revert changes to main * Add function for computing homography transform * Fix unit tests and improve validation * Resolve comments and add more tests * Minor fixes as per comments * Apply suggestion from @niksirbi Co-authored-by: Niko Sirmpilatze <[email protected]> * remove duplicate entry from people --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Niko Sirmpilatze <[email protected]> Co-authored-by: carlocastoldi <[email protected]> Co-authored-by: sfmig <[email protected]> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: CeliaLrt <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>



Description
What is this PR
Why is this PR needed?
tests/test_integration/test_netcdf.pyraises in CI raises repeated errors of the form:These are due to a failing
test_ds_save_and_load_netcdftest, specifically when thenetcdf4or theh5netcdfengines are used (scipyengine is fine).See example failing CI run here.
I'm unable to reproduce the test failures locally, and I suspect the CI is using a different xarray version than I have locally.
According to the xarray release notes, they recently changed the default engine order in
v2025.09.01and reverted it inv2025.10.1, because it caused tons of issues. See references for some relevant issues/PRs.What does this PR do?
Trying around various workarounds.
References
How has this PR been tested?
CI and running
toxlocally.Is this a breaking change?
No.
Does this PR require an update to the documentation?
No.
Checklist: