-
Notifications
You must be signed in to change notification settings - Fork 10
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
add py3.9 to ci #256
add py3.9 to ci #256
Conversation
Xarray still supports 3.9, that's convincing to me. I might have been a bit cavalier when bumping to 3.10 -- I must've had a reason, but I cannot recall at the moment... Apparent numpy 2.0 failures seem to be indexing with a boolean array. That should be tedious but straightforward to fix, I guess. The single failure for numpy < 2 looks like a weird numba failure. Tests do run with NUMBA_DISABLE_JIT, I guess. Good call about the outdated lockfile. If we configure a bot to update it regularly, we have the best of all worlds. Pretty sure this works for the Ribasim repo, but I haven't quite found the option yet. I'll take a look into the Python 3.9 pixi thing, it should just work. |
Solved by #260 |
This is to test if xugrid still works on Python 3.9. I think it does.
There are 75 failing testcases when running it as is: https://github.com/Deltares/xugrid/actions/runs/9891762563/job/27322884959
When requiring
numpy<2.0.0
there is 1 failing testcase: https://github.com/Deltares/xugrid/actions/runs/9891771516/job/27322914549I could not get this to work in pixi, but I think it would be valuable to re-add py3.9 support since it will take >1 year before being EOL: https://endoflife.date/python. Also, if xugrid drops python 3.9 support, this means that all Deltares packages that use xugrid should drop python 3.9 support and it is still a bit early for that in my opinion.
Furthermore, I think this PR makes clear that xugrid does not support numpy>=2.0.0. This is typically an issue that does not show up when using a lockfile. I see the benefits of a lockfile, but I think it is wise to have a parallel pip-only testcase for say python 3.12 that checks with all latest dependency versions so you are always aware of new dependency versions that cause issues. Also, I think the numpy dependency restriction (upper limit) should be introduced. I consider upper limits very dangerous, but as long as it is temporary I guess it is fine.