HPSCTerrSys / eCLM

Fork of Community Land Model v5.0
https://hpscterrsys.github.io/eCLM/
Other
8 stars 13 forks source link

Tagging eCLM for usage in TSMP2 #28

Closed jjokella closed 1 month ago

jjokella commented 7 months ago

It may make sense to introduce tags in this repo that can be used for cloning specific commits in TSMP2.

F.e. something like tsmp-patches-v0.1 etc. as it is used for other TSMP2-codes.

Or leaving out the patches as the eCLM is not patched, but more directly developed for TSMP2.

kvrigor commented 7 months ago

Thanks for bringing this up @jjokella. I believe it's quite early to introduce tagging in eCLM. There's still a lot of important bugfixes and planned features, and my worry is if we introduce tags now they could easily become obsolete. For pragmatic purposes I'm adopting a monorepo-like development approach in eCLM: users can expect that master is always "experimentally stable", and that means:

Please note that these "policies" are not set in stone and we should definitely reconsider them in the future once eCLM becomes more stable. At this early development stage we'd like users to always have the important features and fixes which lives in the master. Once eCLM becomes more mature we should definitely introduce a tagging system.

jjokella commented 7 months ago

Thanks for the info - the monorepo development approach looks sensible and I am following a similar approach for my DA-related codes.

From what I understand, the monorepo approach also does not contradict with the introduction of tags - but I get the point of the active development, which means either very frequent updates of tags or quickly outdated tags...

I would still like to point out my experience that users are easily confused with the changing master-code (when they follow the same cloning workflow). Therefore, I would propose to introduce tags (i.e. a reproducible cloning workflow for TSMP2) as soon as it makes sense!

kvrigor commented 7 months ago

I would still like to point out my experience that users are easily confused with the changing master-code (when they follow the same cloning workflow).

Yes this definitely needs to be addressed 😅 I guess there is no harm in introducing tags even though we're still actively developing eCLM. I'll implement tags as soon as I close these 3 items:

kvrigor commented 1 month ago

@jjokella : I've just created the tag beta-0.1. This beta tag marks the transition from prototyping phase (alpha-0.2) to testing phase, where most of the development efforts are geared towards making eCLM work within the TSMP2 framework.

jjokella commented 1 month ago

Nice to hear @kvrigor !

I think this issue has to be updated related to the developments in TSMP2. In particular the frontend in https://github.com/HPSCTerrSys/TSMP2/tree/dev_frontend and the usage of git submodules.

So, for TSMP2 the tags will play a minor role, TSMP2 will most probably use submodule-pointers for managing the component models.

In that sense, I would be ok with closing this issue, if you are @kvrigor