-
Notifications
You must be signed in to change notification settings - Fork 129
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
Bringing our environment to modern standards (also with removal of NCL) #3812
Comments
@ESMValGroup/technical-lead-development-team this is a big red flag and something looming above us:
🍺 |
the Python 3.12 solver issue from above appears to be the solver really getting stuck in a corner case, see eg mamba-org/mamba#3290 I tried to reproduce the issue locally, but my ye olde machine promptly ran out of memory ie the solver was using more than 4GB of my free memory, again, not acceptable |
We could consider switching from mamba to pixi. That would have the advantage that we can define "extra"s as available for PyPI packages, but then for conda-forge packages, and multiple environments, such as the Linux (environment.yml) and OSX (environment_osx.yml) one, all in the pyproject.toml file. I had a go at that for ESMValCore a few months ago (see here) and then I ran into prefix-dev/pixi#2458, but that seems to be kind of solved now. |
thanks bud! I'll look into that, though I am bit weary of going for something that (I bet) not many people have heard of - let's not try that at least for the upcoming release, there are already quite a few major bits that we bring in ie Python 3.12 (hopefully 3.13 too) etc, but will defo look at it after the next release 🍺 |
love the title of that issue BTW 🤣 |
I'll take a look at Pixi, but it seems to be primarily aimed at developers. |
This discussion seems to be mostly about our environment.yml files, which are aimed at developers. People who only use the tool can already install it without NCL using e.g. |
This is an umbrella issue that is motivated by our dependencies environment being fairly patchy and out of date; there are some outstaning issues at play:
ncl
is lagging behind with every Python and co upgrade, specifically for us, it makes it impossible to:esmpy>=8.6
numpy>=2
importlib_metadata <8
(predicated by olderesmpy
, predicated, in turn, by NCL)curl
, hopefully with a correctcurl=8.11
, caused by the issues it has with Julia installing packages, see Unpincurl
#3758cartopy
, see Unpin cartopy #3769 -> this is done in Update environment: piniris>=3.11
, unpincartopy
and allow fornumpy >=2
#3811 - it is safe to do that since we pin iris therepandas
- that will be done when we release ESMValCore v2.12 since the fix forpandas
is there nownumpy<2
ie upper bound - iris 3.11 is safe for numpy>=2 - we should free it too, and consider issues with diagnostics not being numpy2 compatible as they come, probably during the release process for v2.12; unpinning upper bound for `numpy done in Update environment: piniris>=3.11
, unpincartopy
and allow fornumpy >=2
#3811r-base <4.3
- I can't remember why we are doing that, I need to look into itThe text was updated successfully, but these errors were encountered: