Skip to content

De-template COM declarations#4555

Open
DavidHuber-NOAA wants to merge 83 commits intoNOAA-EMC:developfrom
DavidHuber-NOAA:feature/de-template_com
Open

De-template COM declarations#4555
DavidHuber-NOAA wants to merge 83 commits intoNOAA-EMC:developfrom
DavidHuber-NOAA:feature/de-template_com

Conversation

@DavidHuber-NOAA
Copy link
Contributor

@DavidHuber-NOAA DavidHuber-NOAA commented Feb 13, 2026

Description

This removes all calls to declare_from_tmpl and makes all COM declarations explicit. It also adds a utility that can be used to de-template COM declarations.

Resolves #4522

Type of change

  • Bug fix (fixes something broken)
  • New feature (adds functionality)
  • Maintenance (code refactor, clean-up, new CI test, etc.)

Change characteristics

  • Is this change expected to change outputs? NO
  • Is this a breaking change (a change in existing functionality)? NO
  • Does this change require a documentation update? NO
  • Does this change require an update to any of the following submodules? NO

How has this been tested?

All cases passed on C6. Further testing on other platforms will commence shortly.

Checklist

  • Any dependent changes have been merged and published
  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • My changes generate no new warnings
  • New and existing tests pass with my changes
  • This change is covered by an existing CI test or a new one has been added
  • Any new scripts have been added to the .github/CODEOWNERS file with owners

github-actions[bot]

This comment was marked as resolved.

github-actions[bot]

This comment was marked as resolved.

@DavidHuber-NOAA DavidHuber-NOAA changed the title Feature/de template com De-template COM declarations Feb 13, 2026
github-actions[bot]

This comment was marked as resolved.

@TravisElless-NOAA
Copy link
Contributor

I'm trying to build an experiment with this branch now and setup_workflow.py is breaking. Looks like there are some templated variables in dev/workflow/rocoto/gfs_tasks.py that need to be de-templified as well.

@DavidHuber-NOAA DavidHuber-NOAA removed the CI-Wcoss2-Running CI testing on WCOSS for this PR is in-progress label Feb 26, 2026
@TerrenceMcGuinness-NOAA
Copy link
Collaborator

TerrenceMcGuinness-NOAA commented Feb 26, 2026

@TravisElless-NOAA There is an error analysis report posted above that might help with some of those templated variable issues.

Comment on lines 43 to 45
if [[ 10#${ENSMEM:--1} -ge 0 ]]; then
# Turn ensmem into 3-digit format with leading zeros
memdir=$(printf "mem%03i" "${ENSMEM}")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is failing for ensemble members 8&9 with the following error message.
line 45: printf: 008: invalid octal number

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You might need that 10# in front of ${ENSMEM}

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@TravisElless-NOAA @CoryMartin-NOAA I think this is fixed now. I successfully reran an enkfgdas_fcst job for member 1.

Travis, could you try rerunning your test case now?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's working correctly for mem 9 in the forecast job now. Thanks @DavidHuber-NOAA!

@DavidHuber-NOAA
Copy link
Contributor Author

Restarting tests on WCOSS2.

@DavidHuber-NOAA DavidHuber-NOAA added the CI-Wcoss2-Running CI testing on WCOSS for this PR is in-progress label Feb 26, 2026
@DavidHuber-NOAA
Copy link
Contributor Author

DavidHuber-NOAA commented Feb 27, 2026

All tests passed on WCOSS2 except the C96_atm3DVar_extended case, which is still running. Launching tests on Gaea.

@emcbot emcbot added CI-Gaeac6-Ready **CM use only** PR is ready for CI testing on Gaea C6 CI-Ursa-Ready **CM use only** PR is ready for CI testing on Ursa CI-Ursa-Building **Bot use only** CI testing is cloning/building on Ursa CI-Ursa-Running **Bot use only** CI testing on Ursa for this PR is in-progress and removed CI-Ursa-Ready **CM use only** PR is ready for CI testing on Ursa CI-Ursa-Building **Bot use only** CI testing is cloning/building on Ursa labels Feb 27, 2026
@DavidHuber-NOAA
Copy link
Contributor Author

Gaea's gitlab runner seems to be down and Ursa's runner scripts seemed to crash. I will carry on the Ursa tests manually.

@DavidHuber-NOAA
Copy link
Contributor Author

All tests passed on WCOSS2:

Fri Feb 27 13:33:58 UTC 2026
******** C48_ATM_detempl ********
   CYCLE         STATE           ACTIVATED              DEACTIVATED     
202103231200        Done    Feb 26 2026 20:36:15    Feb 26 2026 21:35:36

******** C48_gsienkf_atmDA_detempl ********
   CYCLE         STATE           ACTIVATED              DEACTIVATED     
202402231800        Done    Feb 26 2026 20:36:19    Feb 26 2026 20:55:25
202402240000        Done    Feb 26 2026 20:36:19    Feb 26 2026 21:50:28
202402240600        Done    Feb 26 2026 20:36:19    Feb 26 2026 22:35:39

******** C48mx500_3DVarAOWCDA_detempl ********
   CYCLE         STATE           ACTIVATED              DEACTIVATED     
202103241800        Done    Feb 26 2026 20:36:21    Feb 26 2026 21:50:45
202103250000        Done    Feb 26 2026 20:36:21    Feb 26 2026 22:10:25

******** C48mx500_hybAOWCDA_detempl ********
   CYCLE         STATE           ACTIVATED              DEACTIVATED     
202103241800        Done    Feb 26 2026 20:36:23    Feb 26 2026 20:55:18
202103250000        Done    Feb 26 2026 20:36:23    Feb 26 2026 22:00:31

******** C48_S2SWA_gefs_detempl ********
   CYCLE         STATE           ACTIVATED              DEACTIVATED     
202103231200        Done    Feb 26 2026 20:36:25    Feb 26 2026 22:05:27

******** C48_S2SW_extended_detempl ********
   CYCLE         STATE           ACTIVATED              DEACTIVATED     
202103231200        Done    Feb 26 2026 20:36:29    Feb 26 2026 23:00:22
202103231800        Done    Feb 26 2026 20:36:29    Feb 26 2026 22:55:17

******** C48_ufsenkf_atmDA_detempl ********
   CYCLE         STATE           ACTIVATED              DEACTIVATED     
202402231800        Done    Feb 26 2026 20:36:33    Feb 26 2026 20:55:09
202402240000        Done    Feb 26 2026 20:36:33    Feb 26 2026 21:55:11
202402240600        Done    Feb 26 2026 20:36:33    Feb 26 2026 22:45:10

******** C96_atm3DVar_extended_detempl ********
   CYCLE         STATE           ACTIVATED              DEACTIVATED     
202112201800        Done    Feb 26 2026 20:36:38    Feb 26 2026 21:45:23
202112210000        Done    Feb 26 2026 20:36:38    Feb 26 2026 22:55:41
202112210600        Done    Feb 26 2026 20:36:38    Feb 26 2026 23:20:14
202112211200        Done    Feb 26 2026 21:50:27    Feb 27 2026 00:10:25
202112211800        Done    Feb 26 2026 22:00:09    Feb 27 2026 01:20:31

******** C96C48_hybatmDA_detempl ********
   CYCLE         STATE           ACTIVATED              DEACTIVATED     
202112201800        Done    Feb 26 2026 20:36:41    Feb 26 2026 20:55:40
202112210000        Done    Feb 26 2026 20:36:41    Feb 26 2026 22:50:27
202112210600        Done    Feb 26 2026 20:36:41    Feb 26 2026 22:45:26

******** C96C48_hybatmsnowDA_detempl ********
   CYCLE         STATE           ACTIVATED              DEACTIVATED     
202112201200        Done    Feb 26 2026 20:36:45    Feb 26 2026 20:55:35
202112201800        Done    Feb 26 2026 20:36:45    Feb 26 2026 22:45:26
202112210000        Done    Feb 26 2026 20:36:45    Feb 26 2026 22:40:31

******** C96C48_hybatmsoilDA_detempl ********
   CYCLE         STATE           ACTIVATED              DEACTIVATED     
202205150600        Done    Feb 26 2026 20:36:49    Feb 26 2026 21:00:21
202205151200        Done    Feb 26 2026 20:36:49    Feb 26 2026 22:55:26
202205151800        Done    Feb 26 2026 20:36:49    Feb 26 2026 22:55:26

******** C96C48mx500_S2SW_cyc_gfs_detempl ********
   CYCLE         STATE           ACTIVATED              DEACTIVATED     
202112201200        Done    Feb 26 2026 20:36:52    Feb 26 2026 22:25:38
202112201800        Done    Feb 26 2026 20:36:52    Feb 26 2026 23:25:37
202112210000        Done    Feb 26 2026 20:36:52    Feb 26 2026 23:50:29
202112211800        Done    Feb 26 2026 22:30:19    Feb 27 2026 00:00:41

******** C96C48_ufsgsi_hybatmDA_detempl ********
   CYCLE         STATE           ACTIVATED              DEACTIVATED     
202402231800        Done    Feb 26 2026 20:36:57    Feb 26 2026 20:55:17
202402240000        Done    Feb 26 2026 20:36:57    Feb 26 2026 23:00:45
202402240600        Done    Feb 26 2026 20:36:57    Feb 26 2026 22:55:26

******** C96C48_ufs_hybatmDA_detempl ********
   CYCLE         STATE           ACTIVATED              DEACTIVATED     
202402231800        Done    Feb 26 2026 20:37:00    Feb 26 2026 20:55:44
202402240000        Done    Feb 26 2026 20:37:00    Feb 26 2026 23:05:27
202402240600        Done    Feb 26 2026 20:37:00    Feb 26 2026 22:45:15

******** C96_gcafs_cycled_detempl ********
   CYCLE         STATE           ACTIVATED              DEACTIVATED     
202112201200        Done    Feb 26 2026 20:37:03    Feb 26 2026 21:00:28
202112201800        Done    Feb 26 2026 20:37:03    Feb 26 2026 23:15:42
202112210000        Done    Feb 26 2026 20:37:03    Feb 26 2026 22:25:32

******** C96_gcafs_cycled_noDA_detempl ********
   CYCLE         STATE           ACTIVATED              DEACTIVATED     
202112201200        Done    Feb 26 2026 20:37:08    Feb 26 2026 20:55:46
202112201800        Done    Feb 26 2026 20:37:08    Feb 26 2026 22:55:31
202112210000        Done    Feb 26 2026 20:37:08    Feb 26 2026 21:55:25

******** C96mx100_S2S_detempl ********
   CYCLE         STATE           ACTIVATED              DEACTIVATED     
199405010000        Done    Feb 26 2026 20:37:11    Feb 26 2026 22:15:25

@DavidHuber-NOAA DavidHuber-NOAA added CI-Wcoss2-Passed CI testing on WCOSS for this PR has completed successfully CI-Ursa-Running (CM) CI testing is being run locally on Ursa. and removed CI-Wcoss2-Running CI testing on WCOSS for this PR is in-progress CI-Gaeac6-Ready **CM use only** PR is ready for CI testing on Gaea C6 CI-Ursa-Running **Bot use only** CI testing on Ursa for this PR is in-progress labels Feb 27, 2026
Copy link
Contributor

@TravisElless-NOAA TravisElless-NOAA left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I haven't tripped over these yet in my test, but probably need to update the $ENSMEM call in these places too?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CI-Ursa-Running (CM) CI testing is being run locally on Ursa. CI-Wcoss2-Passed CI testing on WCOSS for this PR has completed successfully

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Expand all templates in J-Jobs