-
Notifications
You must be signed in to change notification settings - Fork 16
Description
Related to: E3SM-Project/e3sm_diags#696
This PR simplifies the conda env yml files by merging yml files together and loosening up constraints.
By no longer pinning exact dependencies, the conda environments will use the latest compatible dependencies. This ensures a higher chance of compatibility within E3SM Unified because we will be testing on similar dependency versions.
The trade-off is we lose stability and deterministic environments between developers, which might make it a bit more difficult to reproduce bugs or behaviors. There are only a few developers in this repo so it's not that big of a deal to communicate environment setups and dependency versions.
Also it is time-consuming to bump the dependencies in the conda env yml files (upgradeability), especially making sure dependencies are compatible. There is no automated tool like PyUp that does this for us and I fell off on developing my tool https://github.com/tomvothecoder/bumpconda for this task.
By loosening up constraints, conda and mamba will automatically try to resolve compatible dependencies using the latest versions of packages.