E3SM-Project / e3sm-unified

A metapackage for a unified anaconda environment for analyzing results from the Energy Exascale Earth System Model (E3SM).
BSD 3-Clause "New" or "Revised" License
8 stars 8 forks source link

Update to E3SM-Unified 1.6.0 #99

Closed xylar closed 2 years ago

xylar commented 2 years ago

This update includes:

Deployed on:

xylar commented 2 years ago

@forsyth2 and @chengzhuzhang, I'm about to start building and deploying E3SM-Unified in about an hour, once MPAS-Analysis is available. Do you have time to give the meta.yaml in this PR a quick sanity check? I would hate to mess anything up.

forsyth2 commented 2 years ago

Do you have time to give the meta.yaml in this PR a quick sanity check?

The 3 occurrences each of zstash and zppy look correct to me.

Do the dependencies of these packages also need to be listed? Referring to https://github.com/E3SM-Project/zstash/blob/master/conda/meta.yaml, I don't see six or fair-research-login listed. Referring to https://github.com/E3SM-Project/zppy/blob/main/conda/meta.yaml, I don't see configobj or jinja2 listed. The tests (and my own use of recent Unified release candidates) worked though.

chengzhuzhang commented 2 years ago

The package versions look good to me. We probably can add e3sm_to_cmip into the test session as well:https://github.com/E3SM-Project/e3sm-unified/blob/5f61615a3550240e7c861d20805a28620027085d/recipes/e3sm-unified/meta.yaml#L109

xylar commented 2 years ago

Do the dependencies of these packages also need to be listed?

No, the dependencies always come along with any package. We only list dependencies if we are constraining them to a specific version (or range) that E3SM-Unified as a whole will use, or if we want to emphasize that that particular package is available for other purposes. I believe some dependencies that are listed probably don't need to be and we could consider dropping many of them in the next version.

xylar commented 2 years ago

@chengzhuzhang, thanks for the suggestion, I added e3sm_to_cmip (and also e3sm_diags) to the import tests.

xylar commented 2 years ago

@forsyth2, I'm trying to build but finding that zppy doesn't work with python 3.10. Is that correct? Can you relax that? I wanted a python 3.10 version if posslble.

xylar commented 2 years ago

See my comment: https://github.com/E3SM-Project/zppy/pull/155#issuecomment-1033165747

xylar commented 2 years ago

For now, I'll build python 3.7 to 3.9, since 3.9 is what will be deployed on supported machines.

xylar commented 2 years ago

@forsyth2, alternatively, I can do a build of E3SM-Unified with python 3.10 that excludes zppy. That might be fine because I won't be deploying that version and no one is going to install E3SM-Unified themselves to use zppy, right? zppy isn't useful on a non-E3SM machine.

forsyth2 commented 2 years ago

alternatively, I can do a build of E3SM-Unified with python 3.10 that excludes zppy.

@xylar I just commented on https://github.com/E3SM-Project/zppy/pull/155 -- let me know if that looks ok. If so, we can include zppy.

no one is going to install E3SM-Unified themselves to use zppy, right? zppy isn't useful on a non-E3SM machine.

Is that true? I've only run zppy on E3SM-supported machines so I can't say for sure.

xylar commented 2 years ago

Is that true? I've only run zppy on E3SM-supported machines so I can't say for sure.

I'm pretty sure way too much in zppy is hard coded for the 3 or 4 machines it supports, and it would not do anything useful on any other machine. You're welcome to find out :-)

xylar commented 2 years ago

@chengzhuzhang, things are ready to go and I'm deploying on all the machines I have access to.

For Acme1, could you check out this branch, then do the following?

cd e3sm_supported_machine/
./deploy_e3sm_unified.py --version 1.6.0 --conda ~/miniconda3/ --release

Let me know how it goes.

xylar commented 2 years ago

I will merge this and tag the release once we have python 3.10 builds of the packages and once @chengzhuzhang has deployed on Acme1.

xylar commented 2 years ago

python 3.10 support is prevented by: https://github.com/E3SM-Project/zstash/issues/196#issue-1128924537

If I remove zstash, I can build E3SM-Unified with python 3.10 so this seems to be the remaining issue.

chengzhuzhang commented 2 years ago

@xylar 1.6.0 has been deployed on acme1!

xylar commented 2 years ago

Thanks @chengzhuzhang. I think that's it!