eWaterCycle / era5cli

Command Line Interface to download ERA5 from Copernicus Climate Data Service
https://era5cli.readthedocs.io/
Apache License 2.0
45 stars 8 forks source link

Developer documentation for the conda-forge build #136

Closed BSchilperoort closed 1 year ago

BSchilperoort commented 1 year ago

Currently, a conda-forge workflow for era5cli is available on https://github.com/conda-forge/era5cli-feedstock. However, it is not clear to me what needs to be done to maintain this, in case the infrastructure changes.

From @zklaus :

Thanks for modernizing the "boring" infrastructure parts and thanks for considering conda-forge. Conda-forge is highly automized, meaning there are a few bots running, monitoring Pypi and a few other release channels. As soon as a new release drops, the bot will notice and open a PR with updated to the recipe to get the new version. If a change to the build steps is necessary (perhaps we need to move from pip install ... to hatch install ...?), this needs to be done manually, so it's good that you made me aware of these changes and I'll get back to you if I need help for the conda-forge update when the next release comes.

Can you identify which parts are essential for the workflow? From what I can see now the only thing required is:

With the changes in #134, the requirements.txt file was removed. However, if it is required for conda-forge we can put it back in.


See: https://github.com/conda-forge/era5cli-feedstock/blob/17fa30fa0306cb146669998875fe73360b939246/recipe/meta.yaml#L8-L13

Later in the file, it does list the dependencies again (but I assume these are automatically updated?): https://github.com/conda-forge/era5cli-feedstock/blob/17fa30fa0306cb146669998875fe73360b939246/recipe/meta.yaml#L22-L31

Is this information correct, @zklaus ? Then I can add this to a developer documentation file.

BSchilperoort commented 1 year ago

It seems like it should be automatic. This is what I assume in #144 . If a new release breaks the conda-forge setup, we will find out (and can then update the documentation).