-
Notifications
You must be signed in to change notification settings - Fork 3
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
Get CI running again #173
Get CI running again #173
Conversation
… test' they are meant to support is not the way we do that anymore (according to desiutil docs)
Thanks for working on this. FWIW, https://github.com/desihub/desispec/blob/main/.github/workflows/python-package.yml and https://github.com/desihub/redrock/blob/main/requirements.txt are approaches taken in other packages to ensure numpy<2.0. The first one does a downgrade post-facto after installing other packages; the second one restricts it in the requirements.txt file as part of the global installation solution. |
Thanks, I think I've got it working correctly now, by pinning matplotlib and scipy (which we probably should have been doing anyway). |
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.
- switching to https://data.desi.lbl.gov/public/epo/example_files/surveyops_2.0_ops.tar.gz : good (if I understand correctly, this is the underlying change the needed to be fixed; the rest was just knock-on effects)
- scrubbing out the test_suite functions: good
- switching to python 3.10 and desiutil 3.4.2 : fine
I'm concerned about how specific you had to get on the package versions for matplotlib, scipy, numpy, fitsio, astropy. We could go ahead and accept this as working for now so that @dstndstn and @tskisner can get back to what they originally wanted to debug with desimodel, but this could be fragile and break in the future when one of those tags ages out of community repos. Maybe that is less of an issue for pip installs than it is for conda installs, where older specific package versions regularly disappear from conda-forge? Could you provide a bit more context about why you need to pin specific versions for 5 packages rather than something like numpy<2.0 for a single package?
Related: Is this PR a blocking factor for addressing the focal plane syncing issues? That could include the spirit of "get failing unit test cruft out of the way so that we can focus on the real problem".
What was happening: we installed the numpy version we wanted, but then just asked for "matplotlib", which pulled in the newest version, which required a newer numpy. I think we could solve this by installing all those packages in a single You prefer that to pinning to the DESI 24.4 versions? And yes, more broadly, it's a matter of hygiene to have the CI running before trying to tackle the focal plane sync stuff; I don't want to break something else while I'm in there monkeying around! |
Okay, @sbailey this is ready for you to look at again. I realized that |
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. This dependency installation setup looks more maintainable. In general we want the CI tests to pull in the latest versions of external packages so that we know when we are no longer compatible with the latest version (like numpy 2.x), and we let the nightly tests at NERSC and pre-PR developer testing check the compatibility with the older pinned versions.
Thanks!! |
Work In Progress -- I sent this as a PR to get the CI tests to run.