Skip to content

Clean up base/: delete dead code, migrate FileMetadataUtils to base3g, fix stale tests (refs #4884)#4885

Merged
tclune merged 11 commits into
release/MAPL-v3from
feature/4884-base-cleanup
May 14, 2026
Merged

Clean up base/: delete dead code, migrate FileMetadataUtils to base3g, fix stale tests (refs #4884)#4885
tclune merged 11 commits into
release/MAPL-v3from
feature/4884-base-cleanup

Conversation

@tclune
Copy link
Copy Markdown
Collaborator

@tclune tclune commented May 13, 2026

Summary

  • Delete dead/unreachable code: TimeStringConversion, getrss.c, memuse.c, ServerManager.F90, MAPL_ESMFTimeVectorMod, MAPL_VerticalInterpMod, MAPL_VerticalMethods
  • Move Python utilities (mapl_tree.py, mapl_vlist.py) from base/ to Apps/
  • Remove obsolete platform guards from base3g/MemUtils.F90
  • Move FileMetadataUtilities and FileMetadataUtilitiesVector from base/ to base3g/; re-export via mapl_base3g API
  • Replace MAPL.base dependency with MAPL.base3g in GeomIO, vertical, ExtData3G, Regrid_Util.x; remove vestigial MAPL.base from MAPL.gridcomps
  • Use mapl_base3g packaging module in MAPL2 instead of individual impl modules
  • Migrate test_sort.pf and test_DirPath.pf from base/tests/ to shared/tests/; delete stale/orphaned test files

Closes #4884

@tclune tclune requested a review from a team as a code owner May 13, 2026 20:08
@tclune tclune changed the base branch from main to release/MAPL-v3 May 13, 2026 20:09
@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 Changelog Skip Skips the Changelog Enforcer labels May 13, 2026
bena-nasa
bena-nasa previously approved these changes May 13, 2026
tclune added 2 commits May 13, 2026 20:33
…e_time parsing in ExtData3G (refs #4884)

- Add private string_to_esmf_time helper: robustly parses YYYY-MM-DD
  and YYYY-MM-DDThh:mm:ss without relying on ESMF_TimeSet(timeString=)
- Fix as_time/iter_as_time to use string_to_esmf_time (fixes date-only strings)
- Add HConfigAsTimeRange interface (as_timerange/iter_as_timerange): reads
  HConfig string, splits on '/' using scan(), returns ESMF_Time array of size 2
- Use scan() instead of index() intrinsic to avoid shadowing by dummy arg 'index'
- Export mapl_HConfigAsTimeRange from hconfig/API.F90
- ExtDataCollection: use mapl_HConfigAsTimeRange for valid_range key
- ExtDataSample: use mapl_HConfigAsTimeRange for source_time key
- Add unit tests for HConfigAsTime (with T, date-only) and HConfigAsTimeRange
…ate lines (refs #4884)

pFUnit preprocessor does not support multiple @Assert macros on one line
separated by semicolons.
…me (refs #4884)

- Change ExtDataRule%start_time from character(:) to type(ESMF_Time), allocatable
- Parse 'starting' key with mapl_HConfigAsTime in new_ExtDataRule, which robustly
  handles date-only strings like '2008-01-01' (valid ISO 8601 but rejected by
  ESMF_TimeSet(timeString=))
- ExtDataConfig/sort_rules_by_start: use mapl_HConfigAsTime directly, drop
  string intermediary and ESMF_TimeSet(timeString=) call
- ExtDataConfig/get_time_range: work with ESMF_Time array instead of StringVector,
  drop ESMF_TimeSet(timeString=) calls
- Add MAPL.hconfig to ExtData3G link dependencies
- string_to_esmf_time remains private to mapl3g_HConfigAs
@tclune tclune merged commit ed0ca76 into release/MAPL-v3 May 14, 2026
22 of 26 checks passed
@tclune tclune deleted the feature/4884-base-cleanup branch May 14, 2026 13:24
mathomp4 added a commit that referenced this pull request May 15, 2026
Co-authored-by: Atanas Trayanov <Atanas.L.Trayanov@nasa.gov>
Co-authored-by: Tom Clune <thomas.l.clune@nasa.gov>
Co-authored-by: Atanas Trayanov <atanas.trayanov@gmail.com>
Co-authored-by: Matt Thompson <matthew.thompson@nasa.gov>
Co-authored-by: pchakraborty <pchakraborty@users.noreply.github.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: tclune <6225888+tclune@users.noreply.github.com>
Co-authored-by: Weiyuan Jiang <52509753+weiyuan-jiang@users.noreply.github.com>
Co-authored-by: Darian Boggs <61847056+darianboggs@users.noreply.github.com>
Co-authored-by: Weiyuan  Jiang <wjiang@gs6101-bucy.gsfc.nasa.gov>
Co-authored-by: Matthew Thompson <matthew.thompson@nasa.gov>
Co-authored-by: Benjamin Auer <benjamin.m.auer@nasa.gov>
Co-authored-by: Purnendu Chakraborty <purnendu.chakraborty@nasa.gov>
Co-authored-by: Darian Boggs <william.d.boggs@nasa.gov>
Co-authored-by: Atanas L.  Trayanov <atrayano@gs6101-bucy.gsfc.nasa.gov>
Fixes #4455
Fixes #4482
Fixes #4481
Closes #4497 (Task 2.8)
Fixes #4497
Fixes #4506
Fixes #4522
Fixes #4527
Resolves #4528
Resolves #4529
fixes the build failure in PR #4538.
Fix generic3g layer normalization to use vertical stagger and condensed arrays (#4543) (#4544)
Resolves #4531
Resolves #4531 Task 7
fixes #4566
Fixes #4573
fix CI-breaking _ASSERT (#4440)
Fix gfortran preprocessor error: no multi-line _ASSERT args (#4440)
fix _FAILURE macro (#4586)
Closes #4600
Fix ifx #6451: rename use_field_dictionary dummy arg to use_fd
Fix ifx #6451: rename use_field_dictionary dummy arg to use_fd"
Resolve handmerge conflicts for #4610 into release/MAPL-v3
Fixes #4625
Fix precision changes in constants per Gemini (#4635)
Fix modules that inadvertently re-export StringVector (#4639)
fixes #4598 (#4632)
fixes #4598
Fixes #4563
fix(FieldBLAS): propagate MAPL_UNDEF through field arithmetic (#4651)
fix(test): avoid grid-resonance in masked vector regrid test (#4653)
Fixes #4652.
fix(DynamicMask): remove cross-precision mask value casts (#4663)
Fixes #4654
fix(regridder): reference issue #4672 in dateline: DC workaround comment
fixes #4661)
Closes #4678
Fix RegridTransform typekind for cross-geom connections (#4694) (#4702)
Fix RegridTransform typekind for cross-geom connections (#4694)
Closes #4706
Closes #4708
Fix NAG OpenMP per-DSO lazy initialization crash in profiler (#4715)
Closes #4700
Fixes for Spack, NAG, and Python 3.11 (#4671)
Fix vertical regrid  (#4675)
fixes #4721 (#4722)
Closes #4725
Closes #4724
Closes #4730 (partially — OpenMP part only; MAPL_GenericMod remains)
Fixes #4743 (#4744)
fix on locally-defined names in Comms.F90; MAPL_root -> MAPL_ROOT (#4747)
Fix public MAPL_ROOT export and replace rc=status/_VERIFY with _RC in include/*.H (#4747)
Fix CI failures: uppercase MPI names in only: list, replace nint with int in save initializer (#4747)
Closes #4752.
Closes #4762 (partial - MAPL_Resource deferred).
Closes #4755.
Fixes for MAPL3 docs (#4768)
fix for capitalization issue. (#4774)
fix Aerosol_Cap.F90 MAPL_Finalize call (#4780)
Closes #4776.
Fixes #4792 (#4793)
Resolves #4788
Fix blatant bug in ExtData3G (#4804)
Fixes #4805.
Closes #4811.
Closes #4811
Closes #4825
Closes #4809. Part of #4828.
Closes #4844. Last call site was removed in GEOS-ESM/GEOSgcm_GridComp#1405.
Closes #4846.
Closes #4849
fixes #4875)
closes #4874) (#4883)
closes #4874)
fix stale tests (refs #4884) (#4885)
fix valid_range/source_time parsing in ExtData3G (refs #4884)
Fix Test_HConfigAs: split semicolon-separated @assertEqual onto separate lines (refs #4884)
fix for crash in case of absent optional dummy (#4887)
Closes #4554
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. Changelog Skip Skips the Changelog Enforcer 📈 MAPL3 MAPL 3 Related

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Clean up base/: delete TimeStringConversion, C files, ServerManager; move Python files; migrate SimpleBundleMod to base3g

2 participants