ESMCI / ESMCI/cime

Put SourceMods in git, and/or store SourceMods as diffs

Open
#3,298 36 comments 0 reactions 0 assignees View on GitHub
Low Priority tp: user interface
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.