openmethane / setup-wrf

Setup the WRF model
0 stars 0 forks source link

Condify #15

Closed lewisjared closed 4 weeks ago

lewisjared commented 1 month ago

Description

Migrate to use conda to manage dependencies

This ensures that we use the same version of dependencies when building and running the containers along with being able to pin very specific versions if needed.

This currently pins the builds from:

Once this is merged those PRs can also be merged and then pinned tags can be updated here

Checklist

Please confirm that this pull request has done the following:

Notes

lewisjared commented 1 month ago

I believe that this actually works, but RDA is currently down

mikapfl commented 4 weeks ago

Interesting, so we use conda here only for the non-python dependencies, then poetry for the python dependencies, right? What is the reason for this? It strikes me as a somewhat unusal combination, more common would be either

Are the python dependencies we are interested in not available in conda?

lewisjared commented 4 weeks ago

Are the python dependencies we are interested in not available in conda?

They are because there isn't anything special being used.

Personally I like splitting out the development requirements from project dependencies. I think that the conda environment becomes chaos when you lump everything together.

Conda is great to pull in explicit versions of libraries. I got stung with that because one of the containers was based on ubuntu and the other implicitly on debian. WRF also needs a specific (and old) version of libjasper.

We could specify the local package as editable via conda. Do you think that is a better approach?

mikapfl commented 4 weeks ago

Personally I like splitting out the development requirements from project dependencies.

What are "development requirements" and "project dependencies" in this context?

lewisjared commented 4 weeks ago

I'm merging this. If the conda/poetry split is indeed the wrong approach this is at least closer to what we want