Put SourceMods in git, and/or store SourceMods as diffs
- Dominant language
- Python
- Stars
- 174
- Forks
- 225
- Avg merge
- 3d 10h
- Merged PRs (30d)
- 18
Description
The issue #3295 illustrates the need to put SourceMod files under git.
The user had SourceMods developed in tag cime5.6.10_cesm2_1_rel_06 of cime. The user wanted a feature developed in a newer version of cime and was advised to update cime to the latest maint-5.6 branch. The user copied the old SourceMod file to the updated version of cime and thus lost a critical namelist initialization routine introduced in a later revision of maint-5.6. The result was that the diffuse albedo variable in shr_flux_mct were not initialized
correctly.
I believe that we can build a git based SourceMods mechanism that would have allowed the user to correctly merge her SourceMods file cime_comp_mod.F90 into the newer version in the maint-5.6 branch.
Contributor guide
Research direction
Start by reading issue #3295 and the SourceMods example cime_comp_mod.F90, then review how SourceMods are currently carried across cime versions and maint-5.6. Done means a documented, git-based SourceMods workflow can merge user modifications with newer upstream changes without losing later namelist initialization routines.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- fortran, git
- Domain
- build-system
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100