Skip to content

Releases: GEOS-ESM/MAPL

MAPL 2.66.0

13 Feb 20:29
b9d47f6

Choose a tag to compare

DOI

This release of MAPL is mainly for a fix in some sorting code used in GEOS for our boundary condition construction. An integer overflow was found at very-high resolution.

Beyond that are minor infrastructure updates to ESMA_env and ESMA_cmake as well as our beginning efforts at using ML agents with MAPL development.

This is zero-diff to MAPL v2.65


This version of MAPL was tested with:

  • Intel Fortran Classic (ifort) 2021.13
  • Intel Fortran (ifx) 2025.3
  • GCC 13.2.0, 14.2.0, and 15.2.0
  • NAG 7.2

The libraries this version of MAPL is currently tested with are below.

  • Baselibs 8.24.0
    • netcdf-c 4.9.2
    • netcdf-fortran 4.6.1
    • ESMF 9.0.0b08 (Note: MAPL only requires 8.6.1 at the moment)
    • GFE 1.20.0
      • gFTL 1.16.0
      • gFTL-shared 1.11.0
      • pFUnit 4.13.0 (optional)
      • fArgParse 1.10.0 (if -DBUILD_WITH_FARGPARSE=YES, default=YES)
      • pFlogger 1.17.0 (if -DBUILD_WITH_PFLOGGER=YES, default=YES)
    • UDUNITS2 2.28.8

Also, if you build with Baselibs and/or -DUSE_F2PY=ON, you should use (at least):

  • ESMA_cmake v3.72.0

We recommend most external users set -DUSE_F2PY=OFF

We also require CMake 3.24 or higher.


From CHANGELOG.md

Fixed

  • Guarded against 32-bit integer overflow in QSswap

Added

  • Added 9 modular OpenCode agent skills for MAPL development workflows (replaces AGENTS.md)
    • mapl-setup: First-time environment configuration
    • mapl-build: Building with NAG, gfortran, Intel compilers
    • mapl-testing: Running and debugging tests with pFUnit
    • fortran-style: MAPL Fortran coding standards
    • mapl-error-handling: Error handling macros and best practices
    • github-workflow: Git/GitHub conventions and PR process
    • remote-build: Building on bucy with Intel compiler
    • pfunit-troubleshooting: Debug pFUnit test failures
    • compiler-switching: Switch between compilers safely
  • Added .rgignore to have ripgrep ignore common build directories

Changed

  • Update components.yaml
    • ESMA_env v5.17.0
      • Update to Baselibs 8.24.0
        • ESMF v9.0.0b08
        • GFE v1.22.0
          • pFUnit v4.15.0
        • curl 8.17.0
        • NCO 5.3.6
        • CDO 2.5.4
        • Various updates for Athena/Turin/TOSS5 at NAS
      • Support for Athena/Turin/TOSS5 at NAS
        • Update build.csh to support Athena/Turin/TOSS5 at NAS
          • Also remove Haswell
    • ESMA_cmake v3.72.0
      • Add USES_TERMINAL to our tests target to ensure output is shown as tests run with Ninja
      • Updates for f2py and f2py3 for running on macOS with Spack
      • Add Athena frontend nodes for NAS detection
      • Remove ctest pre-test build

What's Changed

Full Changelog: v2.65.0...v2.66.0

MAPL 2.65.0

29 Jan 19:46
7447e3d

Choose a tag to compare

DOI

This is a new minor release of MAPL.

The main impetus for this release is it is part of a two-part fix for a memory leak found in the GEOSgcm mkiau code (used in Replay). This leak is seen prominently if you run replay for a long time on many cores.

This release also adds a new protection against doing time-averaged History output when the ref_time is incompatible with the frequency and start time in cap_restart. Before, the initial History output would be empty (all MAPL_UNDEF or 0.0) and this could cause unintended consequences down the line. So MAPL 2.65 takes the safe route where it now will halt if this condition is detected.

All tests show this is zero-diff to MAPL 2.64


This version of MAPL was tested with:

  • Intel Fortran Classic (ifort) 2021.13
  • Intel Fortran (ifx) 2025.3
  • GCC 13.2.0, 14.2.0, and 15.2.0
  • NAG 7.2

The libraries this version of MAPL is currently tested with are below.

  • Baselibs 8.24.0
    • netcdf-c 4.9.2
    • netcdf-fortran 4.6.1
    • ESMF 9.0.0b08 (Note: MAPL only requires 8.6.1 at the moment)
    • GFE 1.20.0
      • gFTL 1.16.0
      • gFTL-shared 1.11.0
      • pFUnit 4.13.0 (optional)
      • fArgParse 1.10.0 (if -DBUILD_WITH_FARGPARSE=YES, default=YES)
      • pFlogger 1.17.0 (if -DBUILD_WITH_PFLOGGER=YES, default=YES)
    • UDUNITS2 2.28.8

Also, if you build with Baselibs and/or -DUSE_F2PY=ON, you should use (at least):

  • ESMA_cmake v3.68.0

We recommend most external users set -DUSE_F2PY=OFF

We also require CMake 3.24 or higher.


From CHANGELOG.md

Added

  • Added implementation for mapl_GetPartition() with unit tests. Replaces logic that will disappear with MAPL2
  • Added backwards compatibility with non-CF dimensionless vertical coordinate in ExtData2G
  • Added logic in History to check for consistent History and averaging coupler alarms

Changed

  • added formating string to the pFlogger call in FileBundleRead.F90 to avoid processing incidental '%' characters in the filename
  • replaced rc=status with _RC in MAPL_read_bundle
  • MAPL_read_bundle now logs the filename instead of the file template
  • added optional argument "NoGarbage" to MAPL_BundleDestroy
  • Updated CI to use Baselibs 8.24.0
    • This provides ESMF 9.0.0b08
    • Update ifx tests to 2025.3 (enabled by ESMF 9.0.0b08)

What's Changed

Full Changelog: v2.64.2...v2.65.0

MAPL 2.64.2

16 Jan 18:29
48d89c8

Choose a tag to compare

DOI

This is a patch release on MAPL v2.64 with a fix for ExtData. A bug was found in ADAS testing where GAAS AOD files were not being read and a flaw in the file-finding logic was found. This was fixed on v2.57.1 and forward-ported to main.

This is zero-diff to v2.64.1 (unless the bug was triggered).


This version of MAPL was tested with:

  • Intel Fortran Classic (ifort) 2021.13
  • Intel Fortran (ifx) 2025.3
  • GCC 13.2.0, 14.2.0, and 15.2.0
  • NAG 7.2

The libraries this version of MAPL is currently tested with are below.

  • Baselibs 8.20.0
    • netcdf-c 4.9.2
    • netcdf-fortran 4.6.1
    • ESMF 9.0.0b03 (Note: MAPL only requires 8.6.1 at the moment)
    • GFE 1.20.0
      • gFTL 1.16.0
      • gFTL-shared 1.11.0
      • pFUnit 4.13.0 (optional)
      • fArgParse 1.10.0 (if -DBUILD_WITH_FARGPARSE=YES, default=YES)
      • pFlogger 1.17.0 (if -DBUILD_WITH_PFLOGGER=YES, default=YES)
    • UDUNITS2 2.28.8

Also, if you build with Baselibs and/or -DUSE_F2PY=ON, you should use (at least):

  • ESMA_cmake v3.68.0

We recommend most external users set -DUSE_F2PY=OFF

We also require CMake 3.24 or higher.


From CHANGELOG.md

Fixed

  • Fixed issue with find_any_file where bad logic caused issues with GAAS files not being read (forward port of MAPL 2.57.1 fix)

What's Changed

  • GitFlow: Merge Fix for find_any_file and GAAS issue into main by @mathomp4 in #4316

Full Changelog: v2.64.1...v2.64.2

MAPL 2.57.1

16 Jan 17:36
d5547fa

Choose a tag to compare

DOI

This is a patch on MAPL v2.57.0 with a fix for ExtData. A bug was found in ADAS testing were GAAS AOD files were not being read. A flaw in logic was found.

This is zero-diff to v2.57.0 save where the bug was triggered.


This version of MAPL was tested with:

  • Intel Fortran Classic (ifort) 2021.6.0 and 2021.13
  • Intel Fortran (ifx) 2025.0
  • GCC 13.2.0 and 14.2.0
  • NAG 7.2

The libraries this version of MAPL is currently tested with are below.

  • Baselibs 7.33.0
    • netcdf-c 4.9.2
    • netcdf-fortran 4.6.1
    • ESMF 8.8.1 (Note: MAPL only requires 8.6.1 at the moment)
    • GFE 1.16.0
      • gFTL 1.15.2
      • gFTL-shared 1.10.0
      • pFUnit 4.11.1 (optional)
      • fArgParse 1.9.0 (if -DBUILD_WITH_FARGPARSE=YES, default=YES)
      • pFlogger 1.16.1 (if -DBUILD_WITH_PFLOGGER=YES, default=YES)
    • UDUNITS2 2.28.8

Also, if you build with Baselibs and/or -DUSE_F2PY=ON, you should use (at least):

  • ESMA_cmake v3.62.1

We recommend most external users set -DUSE_F2PY=OFF

We also require CMake 3.24 or higher.


From CHANGELOG.md

Fixed

  • Fixed issue with find_any_file where bad logic caused issues with GAAS files not being read

Full Changelog: v2.57.0...v2.57.1

MAPL 2.64.1

30 Dec 23:06
9e21fbd

Choose a tag to compare

DOI

This is a patch release of MAPL 2.64. It restores a workaround for GNU for binary restart reads. This is used in the GEOS single column model (SCM).

This is zero-diff to v2.64.0


This version of MAPL was tested with:

  • Intel Fortran Classic (ifort) 2021.13
  • Intel Fortran (ifx) 2025.3
  • GCC 13.2.0, 14.2.0, and 15.2.0
  • NAG 7.2

The libraries this version of MAPL is currently tested with are below.

  • Baselibs 8.20.0
    • netcdf-c 4.9.2
    • netcdf-fortran 4.6.1
    • ESMF 9.0.0b03 (Note: MAPL only requires 8.6.1 at the moment)
    • GFE 1.20.0
      • gFTL 1.16.0
      • gFTL-shared 1.11.0
      • pFUnit 4.13.0 (optional)
      • fArgParse 1.10.0 (if -DBUILD_WITH_FARGPARSE=YES, default=YES)
      • pFlogger 1.17.0 (if -DBUILD_WITH_PFLOGGER=YES, default=YES)
    • UDUNITS2 2.28.8

Also, if you build with Baselibs and/or -DUSE_F2PY=ON, you should use (at least):

  • ESMA_cmake v3.68.0

We recommend most external users set -DUSE_F2PY=OFF

We also require CMake 3.24 or higher.


From CHANGELOG.md

Fixed

  • Restore workaround for binary restart reads with GNU
    • Brings back changes from PR #1038: Added a workaround for a gfortran bug that handles end-of-file incorrectly (returns IOSTAT=5001).

What's Changed

Full Changelog: v2.64.0...v2.64.1

MAPL 2.64.0

05 Dec 16:23
8814903

Choose a tag to compare

DOI

This release of MAPL has an update for MAPL_LocStream to support work ongoing in GEOSldas, adding the ability to pass Pfaffstetter index.

All tests show this is zero-diff to MAPL 2.63


This version of MAPL was tested with:

  • Intel Fortran Classic (ifort) 2021.13
  • Intel Fortran (ifx) 2025.3
  • GCC 13.2.0, 14.2.0, and 15.2.0
  • NAG 7.2

The libraries this version of MAPL is currently tested with are below.

  • Baselibs 8.20.0
    • netcdf-c 4.9.2
    • netcdf-fortran 4.6.1
    • ESMF 9.0.0b03 (Note: MAPL only requires 8.6.1 at the moment)
    • GFE 1.20.0
      • gFTL 1.16.0
      • gFTL-shared 1.11.0
      • pFUnit 4.13.0 (optional)
      • fArgParse 1.10.0 (if -DBUILD_WITH_FARGPARSE=YES, default=YES)
      • pFlogger 1.17.0 (if -DBUILD_WITH_PFLOGGER=YES, default=YES)
    • UDUNITS2 2.28.8

Also, if you build with Baselibs and/or -DUSE_F2PY=ON, you should use (at least):

  • ESMA_cmake v3.68.0

We recommend most external users set -DUSE_F2PY=OFF

We also require CMake 3.24 or higher.


From CHANGELOG.md

Added

  • Added pfaf_index to MAPL_Locstream
  • Added a simple MAPL_LocstreamCreate

Changed

  • Enforced presence of grid when reading binary tile file

What's Changed

Full Changelog: v2.63.1...v2.64.0

MAPL 2.63.1

25 Nov 16:22
259d2f2

Choose a tag to compare

DOI

This is a patch release on MAPL 2.63. This release fixes an issue needed for 1-d tile space output in netCDF format.

All tests show it zero-diff to MAPL 2.63.0


This version of MAPL was tested with:

  • Intel Fortran Classic (ifort) 2021.6.0 and 2021.13
  • Intel Fortran (ifx) 2025.3
  • GCC 13.2.0, 14.2.0, and 15.2.0
  • NAG 7.2

The libraries this version of MAPL is currently tested with are below.

  • Baselibs 8.20.0
    • netcdf-c 4.9.2
    • netcdf-fortran 4.6.1
    • ESMF 9.0.0b03 (Note: MAPL only requires 8.6.1 at the moment)
    • GFE 1.20.0
      • gFTL 1.16.0
      • gFTL-shared 1.11.0
      • pFUnit 4.13.0 (optional)
      • fArgParse 1.10.0 (if -DBUILD_WITH_FARGPARSE=YES, default=YES)
      • pFlogger 1.17.0 (if -DBUILD_WITH_PFLOGGER=YES, default=YES)
    • UDUNITS2 2.28.8

Also, if you build with Baselibs and/or -DUSE_F2PY=ON, you should use (at least):

  • ESMA_cmake v3.68.0

We recommend most external users set -DUSE_F2PY=OFF

We also require CMake 3.24 or higher.


From CHANGELOG.md

Changed

  • Combine MAPL_Grid_interior and MAPL_GridgetInterior
    • This is needed for 1-d tile space output in netCDF4 format

What's Changed

Full Changelog: v2.63.0...v2.63.1

MAPL 2.63.0

21 Nov 15:58
15e2c33

Choose a tag to compare

DOI

This release of MAPL 2 has many new updates and fixes.

The main updates are to handling of Tile grids for use in GEOSldas. There are also updates to the ACG Writer for our ongoing transition to MAPL3 as well as many internal changes to the CI.

All testing with GEOSgcm shows this to be zero-diff to MAPL 2.62


This version of MAPL was tested with:

  • Intel Fortran Classic (ifort) 2021.6.0 and 2021.13
  • Intel Fortran (ifx) 2025.3
  • GCC 13.2.0, 14.2.0, and 15.2.0
  • NAG 7.2

The libraries this version of MAPL is currently tested with are below.

  • Baselibs 8.20.0
    • netcdf-c 4.9.2
    • netcdf-fortran 4.6.1
    • ESMF 9.0.0b03 (Note: MAPL only requires 8.6.1 at the moment)
    • GFE 1.20.0
      • gFTL 1.16.0
      • gFTL-shared 1.11.0
      • pFUnit 4.13.0 (optional)
      • fArgParse 1.10.0 (if -DBUILD_WITH_FARGPARSE=YES, default=YES)
      • pFlogger 1.17.0 (if -DBUILD_WITH_PFLOGGER=YES, default=YES)
    • UDUNITS2 2.28.8

Also, if you build with Baselibs and/or -DUSE_F2PY=ON, you should use (at least):

  • ESMA_cmake v3.68.0

We recommend most external users set -DUSE_F2PY=OFF

We also require CMake 3.24 or higher.


From CHANGELOG.md

Fixed

  • Removed obsolete pfio test
  • Fix a memory leak in trajectory sampler due to misuage of FieldRegrid which should be FieldRedist
  • Fixed mapl_acg.cmake to allow for more than one StateSpecs file per target
  • Fix NVHPC issue with IEEE halting code
  • Fix a misspelled MAPL_LIBRARY_TYPE in vertical
  • Workaround for Flang

Added

  • Added updated version of MAPL_GridCompSpecs_ACG_writer.py
  • Added 'Gridname' attribute to history output
  • Create TilgridIO's outbundle from output grid and deallocate mGriddedIO in History
  • Added TileGridIO.F90 to output NC4 History file in tile space. The collection's format should be 'CFIO'
  • Added bit shave to TileGridIO

Changed

  • Update CI
    • Use Baselibs 8.20.0
    • Add gcc15 test
    • Use organization reusable workflows
    • Run CI build test with NAG on PRs
  • Update README_ACG_WRITER.md
  • Update components.yaml
    • ESMA_env v5.16.0
      • Update to Baselibs 8.20.0
        • GFE v1.20.0
          • gFTL v1.16.0
          • gFTL-shared v1.11.0
          • fArgParse v1.10.0
          • pFUnit v4.13.0
          • yaFyaml v1.6.0
          • pFlogger v1.17.0
        • NCO 5.3.5
        • This is mainly for ifx 2025.2 support
        • Requires CMake 3.24
    • ESMA_cmake v3.68.0
      • Update ifx flags to match as close as possible to ifort flags
      • Update site detection for NAS
      • Updates for f2py and flang

Removed

  • Removed TileIO.F90. It is integrated into TileGridIO.F90

What's Changed

Full Changelog: v2.62.2...v2.63.0

MAPL 2.62.2

29 Oct 13:24
7928ad5

Choose a tag to compare

DOI

This is a patch release of MAPL 2.62. This fixes a bug when one of the two names in an ExtData2G rule for a vector is contained is a substring in another item, for example UA;VA and EVAP

Testing shows this is zero-diff to MAPL 2.62.1


This version of MAPL was tested with:

  • Intel Fortran Classic (ifort) 2021.6.0 and 2021.13
  • Intel Fortran (ifx) 2025.2
    • NOTE: ifx 2025.2 support is currently a bit of a work-in-progress as it requires changes in upstream GFE libraries (pFlogger and pFUnit) as well as ESMA_cmake v3.65.0. Once releases are made of the GFE libraries, this will become simpler.
  • GCC 13.2.0, 14.2.0, and 15.2.0
  • NAG 7.2

The libraries this version of MAPL is currently tested with are below.

  • Baselibs 8.19.0
    • netcdf-c 4.9.2
    • netcdf-fortran 4.6.1
    • ESMF 9.0.0b03 (Note: MAPL only requires 8.6.1 at the moment)
    • GFE 1.19.0
      • gFTL 1.15.2
      • gFTL-shared 1.10.0
      • pFUnit 4.11.1 (optional)
      • fArgParse 1.9.0 (if -DBUILD_WITH_FARGPARSE=YES, default=YES)
      • pFlogger 1.16.1 (if -DBUILD_WITH_PFLOGGER=YES, default=YES)
    • UDUNITS2 2.28.8

Also, if you build with Baselibs and/or -DUSE_F2PY=ON, you should use (at least):

  • ESMA_cmake v3.65.0

We recommend most external users set -DUSE_F2PY=OFF

We also require CMake 3.24 or higher.


From CHANGELOG.md

Fixed

  • Fixed bug when one of the two names in an ExtData2G rule for a vector is contained is a substring in another item, for example UA;VA and EVAP

What's Changed

Full Changelog: v2.62.1...v2.62.2

MAPL 2.62.1

14 Oct 14:05
1f62def

Choose a tag to compare

DOI

This is a patch release of MAPL 2.62. This fixes a bug when regridding with grid that has PET with no DEs.

Testing shows this is zero-diff to 2.62.0


This version of MAPL was tested with:

  • Intel Fortran Classic (ifort) 2021.6.0 and 2021.13
  • Intel Fortran (ifx) 2025.2
    • NOTE: ifx 2025.2 support is currently a bit of a work-in-progress as it requires changes in upstream GFE libraries (pFlogger and pFUnit) as well as ESMA_cmake v3.65.0. Once releases are made of the GFE libraries, this will become simpler.
  • GCC 13.2.0, 14.2.0, and 15.2.0
  • NAG 7.2

The libraries this version of MAPL is currently tested with are below.

  • Baselibs 8.19.0
    • netcdf-c 4.9.2
    • netcdf-fortran 4.6.1
    • ESMF 9.0.0b03 (Note: MAPL only requires 8.6.1 at the moment)
    • GFE 1.19.0
      • gFTL 1.15.2
      • gFTL-shared 1.10.0
      • pFUnit 4.11.1 (optional)
      • fArgParse 1.9.0 (if -DBUILD_WITH_FARGPARSE=YES, default=YES)
      • pFlogger 1.16.1 (if -DBUILD_WITH_PFLOGGER=YES, default=YES)
    • UDUNITS2 2.28.8

Also, if you build with Baselibs and/or -DUSE_F2PY=ON, you should use (at least):

  • ESMA_cmake v3.65.0

We recommend most external users set -DUSE_F2PY=OFF

We also require CMake 3.24 or higher.


From CHANGELOG.md

Fixed

  • Fixed bug when regridding with grid that has PET with no DEs

What's Changed

Full Changelog: v2.62.0...v2.62.1