Skip to content

Rename internal modules to mapl_<Name>_mod and enforce gridcomps use MAPL umbrella (#4958/#4959)#4962

Merged
atrayano merged 11 commits into
developfrom
feature/issues-4958-4959-rename-modules-enforce-gridcomp-use
May 22, 2026
Merged

Rename internal modules to mapl_<Name>_mod and enforce gridcomps use MAPL umbrella (#4958/#4959)#4962
atrayano merged 11 commits into
developfrom
feature/issues-4958-4959-rename-modules-enforce-gridcomp-use

Conversation

@tclune
Copy link
Copy Markdown
Collaborator

@tclune tclune commented May 22, 2026

Summary

Related Issues

Closes #4958
Closes #4959
See also #4961

@tclune tclune requested a review from a team as a code owner May 22, 2026 14:54
@tclune tclune added 0 Diff The changes in this pull request have verified to be zero-diff with the target branch. 📈 MAPL3 MAPL 3 Related labels May 22, 2026
@tclune tclune changed the base branch from main to develop May 22, 2026 14:56
mathomp4
mathomp4 previously approved these changes May 22, 2026
mathomp4
mathomp4 previously approved these changes May 22, 2026
mathomp4
mathomp4 previously approved these changes May 22, 2026
tclune added 10 commits May 22, 2026 12:55
Replace direct use of internal mapl_* modules in gridcomps/ with
use MAPL where those modules are already exported by the umbrella.
Also fix scope bug: standalone setServices subroutines after end
module need their own use MAPL for macro error handling.

Also update github-workflow SKILL.md: develop is now the primary
integration branch for all MAPL v3 work.
Add 16 modules to MAPL.F90 that gridcomps need but were missing
from the umbrella: mapl_Generic, mapl_ComponentSpec,
mapl_RestartHandler, mapl_ESMF_Time_Utilities, mapl_SimpleAlarm,
mapl_StateItemImpl, MAPL_FieldPointerUtilities,
MAPL_ExceptionHandling, MAPL_ISO8601_DateTime, mapl_EsmfRegridder,
mapl_RegridderMethods, mapl_HConfigAs, MAPL_StringTemplate,
MAPL_FileMetadataUtilsMod, mapl_OS, mapl_GridGetGlobal.

mapl_GenericGridComp excluded (its public setServices conflicts
with standalone setServices subroutines in gridcomp files).

Update 30 gridcomp files to use MAPL instead of internal modules.
Add MAPL.GeomIO to MAPL umbrella CMake dependencies and expose
mapl_geomio and mapl_CompressionSettings via MAPL.F90.
Update 8 extdata/history gridcomp files to use MAPL.

Issue #4959 external USE violations are now fully resolved.
Only mapl_NominalOrbitsMod remains, which is internal to
gridcomps/orbit/ and correctly left as-is.
MAPL_Constants is an umbrella module and should not be replaced
with use MAPL. The replacement caused GET_TIME from
MAPL_ISO8601_DateTime to conflict with the local GET_TIME
subroutine in MAPL_NominalOrbitsMod.
Module was unused; file and CMake library target removed entirely.
Bulk rename of 446 internal module names from mapl_<Name>[Mod]
to mapl_<Name>_mod convention. All use statements updated
throughout the codebase. Test module definitions excluded.
…tils, HConfig_API, geomio, mp_utils, regridder_mgr
@tclune tclune force-pushed the feature/issues-4958-4959-rename-modules-enforce-gridcomp-use branch from 89f691e to 1329a8b Compare May 22, 2026 16:56
@tclune
Copy link
Copy Markdown
Collaborator Author

tclune commented May 22, 2026

/rerun

Remove accidentally committed files: MAPL_v3_restructuring.pptx,
PET0.ESMF_LogFile, base_modules.csv, base_modules.xls,
omp_master_reproducer.F90, rename_modules.py, reproducer_debug,
reproducer_opt, tilegrid.F90
@atrayano atrayano merged commit ef4449f into develop May 22, 2026
30 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

0 Diff The changes in this pull request have verified to be zero-diff with the target branch. 📈 MAPL3 MAPL 3 Related

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Enforce that gridcomp modules only USE MAPL (not internal low-level modules) Rename all internal modules to mapl_<Name>_mod convention

3 participants