Releases: GEOS-ESM/MAPL
MAPL 2.47.1.3
This is a tweak patch on top of MAPL 2.47.1.2. This adds the ability to add an option in AGCM.rc
to allow MAPL to overwrite checkpoints:
overwrite_checkpoints: .true.
as requested in #3262.
By default, the capability is default .false
which matches current MAPL behavior.
This version of MAPL was tested with:
- Intel Fortran Classic 2021.6.0 (Classic 2021.13 seems to work,
ifx
does not yet work) - GCC 13.2.0
- NAG 7.2
The libraries this version of MAPL is currently tested with are below. NOTE: Changes here from MAPL 2.44 and earlier, namely GFE
- Baselibs 7.24.0
- netcdf-c 4.9.2
- netcdf-fortran 4.6.1
- ESMF 8.6.1b04 (8.6.0 is enough for Baselibs builds, but 8.6.1 is required for Spack)
- GFE 1.15.0
- gFTL 1.13.0
- gFTL-shared 1.8.0
- pFUnit 4.9.0 (optional)
- fArgParse 1.7.0 (if
-DBUILD_WITH_FARGPARSE=YES
, default=YES
) - pFlogger 1.14.0 (if
-DBUILD_WITH_PFLOGGER=YES
, default=YES
)
Also, if you build with Baselibs and/or -DUSE_F2PY=ON
, you should use (at least):
- ESMA_cmake v3.46.0
We recommend most external users set -DUSE_F2PY=OFF
From CHANGELOG.md
Changed
- Added new option to AGCM.rc
overwrite_checkpoint
to allow checkpoint files to be overwritten. By default still will not overwrite checkpoints
Full Changelog: v2.47.1.2...v2.47.1.3
MAPL 2.51.2
This patch release of MAPL 2.51 has a fix when using multiple rules for a vector item in ExtData2G. It also relaxes a restriction that vector regridding in ExtData2G must be bilinear.
This release also moves the CI and Docker to us Ubuntu 24-based base images. This also required a fix in one of the profiler unit tests.
All testing shows this to be zero-diff to v2.51.1
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.27.0
- netcdf-c 4.9.2
- netcdf-fortran 4.6.1
- ESMF 8.7.0 (Note: MAPL only requires 8.6.1 at the moment)
- GFE 1.16.0
- gFTL 1.14.0
- gFTL-shared 1.9.0
- pFUnit 4.10.0 (optional)
- fArgParse 1.8.0 (if
-DBUILD_WITH_FARGPARSE=YES
, default=YES
) - pFlogger 1.14.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.55.0
We recommend most external users set -DUSE_F2PY=OFF
We also require CMake 3.24 or higher.
From CHANGELOG.md
Changed
- Removed restriction that vector regridding in ExtData2G must be bilinear
- Update CI to use Ubuntu 24 images
Fixed
- Fixed by when using multiple rules for a vector item in ExtData2G
- Fix profiler ExclusiveColumn test for GCC 14
What's Changed
- fixes #3255 by @bena-nasa in #3256
Full Changelog: v2.51.1...v2.51.2
MAPL 2.51.1
This is a patch on MAPL 2.51. This release fixes an issue where the per-cell counters in the generic coupler are not initialized properly. They are part of a derived type when gets allocated, but the pointers there are not initialized to NULL.
Testing of GEOS at c24 and c360 shows this to be zero-diff. However, there is the possibility that if you encountered this bug, some output could change.
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.27.0
- netcdf-c 4.9.2
- netcdf-fortran 4.6.1
- ESMF 8.7.0 (Note: MAPL only requires 8.6.1 at the moment)
- GFE 1.16.0
- gFTL 1.14.0
- gFTL-shared 1.9.0
- pFUnit 4.10.0 (optional)
- fArgParse 1.8.0 (if
-DBUILD_WITH_FARGPARSE=YES
, default=YES
) - pFlogger 1.14.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.55.0
We recommend most external users set -DUSE_F2PY=OFF
We also require CMake 3.24 or higher.
From CHANGELOG.md
Fixed
- Properly nullified the pointers to the per-grid-cell counters
What's Changed
- Fixes #3232. Properly initialized per-cell counters by @atrayano in #3234
- Prepare for 2.51.1 Release by @mathomp4 in #3236
- Auto GitFlow - main → develop by @github-actions in #3235
Full Changelog: v2.51.0...v2.51.1
MAPL 2.51.0
This release of MAPL has many new updates and changes. Some highlights include:
- Support for the Intel
ifx
compiler (including in CI)- Note that MAPL Unit tests only work with
ifx
2025.0, though 2024.2 can work with GEOSgcm
- Note that MAPL Unit tests only work with
- Allow lat-lon grid factory to detect and use CF compliant lat-lon bounds in a file when making a grid
- Added a call in GenericRefresh to allow GC's refresh method to be called; in support of CICE6 rewind
- Add ability to use an
ESMF_CONFIG_FILE
environment variable to specify name of file to pass in pre-ESMF_Initialize
options to ESMF (see ESMF Docs for allowed flags) - Added commandline options to
checkpoint_benchmark.x
andrestart_benchmark.x
to allow for easier testing of different configurations. Note that the old configuration file style of input is allowed via the--config_file
option (which overrides any other command line options) - Fixed issue of some Baselibs builds appearing to support zstandard. This is not possible due to Baselibs building HDF5 and netCDF as static libraries
- Preliminary support for llvm-flang
- NOTE: MAPL does not yet work with llvm-flang. But some updates were added here for development testing.
- Trajectory sampler: fix a bug when group_name does not exist in netCDF file and a bug that omitted the first time point
- Fixed a bug where the periodicity around the earth of the lat-lon grid was not being set properly when grid did not span from pole to pole
There are also new build requirements for MAPL 2.51:
- CMake 3.24
- ESMF 8.6.1
All tests show this to be zero-diff to MAPL 2.50
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.27.0
- netcdf-c 4.9.2
- netcdf-fortran 4.6.1
- ESMF 8.7.0 (Note: MAPL only requires 8.6.1 at the moment)
- GFE 1.16.0
- gFTL 1.14.0
- gFTL-shared 1.9.0
- pFUnit 4.10.0 (optional)
- fArgParse 1.8.0 (if
-DBUILD_WITH_FARGPARSE=YES
, default=YES
) - pFlogger 1.14.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.55.0
We recommend most external users set -DUSE_F2PY=OFF
We also require CMake 3.24 or higher.
From CHANGELOG.md
Added
- Added macro
_RETURN(_SUCCESS)
to fetch_data - Allow update offsets of ±timestep in ExtData2G
- Minor revision (and generalization) of grid-def for GSI purposes
- Add ability to use an
ESMF_CONFIG_FILE
environment variable to specify name of file to pass in pre-ESMF_Initialize
options to ESMF (see ESMF Docs for allowed flags. - Allow lat-lon grid factory to detect and use CF compliant lat-lon bounds in a file when making a grid
- PFIO/Variable class, new procedures to retrieve string/reals/int attributes from a variable
- Added a call in GenericRefresh to allow GC's refresh method to be called; in support
of CICE6 rewind
Changed
- Change minimum CMake version to 3.24
- This is needed for f2py and meson support
- Refactored tableEnd check
- Added commandline options to
checkpoint_benchmark.x
andrestart_benchmark.x
to allow for easier testing of different configurations. Note that the old configuration file style of input is allowed via the--config_file
option (which overrides any other command line options) - Update ESMF version for Baselibs to match that of Spack for consistency
- Update
components.yaml
- ESMA_env v4.32.0
- Baselibs 7.27.0
- ESMF 8.7.0
- curl 8.10.1
- NCO 5.2.8
- CDO 2.4.4
- GSL 2.8
- jpeg 9f
- Various build fixes
- Baselibs 7.27.0
- ESMA_cmake v3.55.0
- Fixes for using MAPL as a library in spack builds of GEOSgcm
- Various backports from v4
- Code for capturing
mepo status
output - Fixes for f2py and meson (NOTE: Requires CMake minimum version of 3.24 in project for complete functionality)
- Fixes for
MPI_STACK
code run multiple times
- ESMA_env v4.32.0
- Updates to CI
- Use v7.27.0 Baselibs
- Use GCC 14 for GNU tests
- Add pFUnit-less build test
- Enable ifx tests
- Improve some writes to be more informative
- In
base/MAPL_CFIO.F90
, addedIam
to a print statement so that when a read fails we know which routine failed - In
gridcomps/ExtData2G/ExtDataConfig.F90
, print out the name of the duplicate collection that causes model to fail
- In
Fixed
- Fixed issue of some Baselibs builds appearing to support zstandard. This is not possible due to Baselibs building HDF5 and netCDF as static libraries
- Workaround ifx bug in
pfio/ArrayReference.F90
(NOTE: This currently targets all versions of ifx, but will need to be qualified or removed in the future) - Updates to support llvm-flang
- Trajectory sampler: fix a bug when group_name does not exist in netCDF file and a bug that omitted the first time point
- Fixed a bug where the periodicity around the earth of the lat-lon grid was not being set properly when grid did not span from pole to pole
What's Changed
- Allow update offsets based on timestep for extdata2g by @darianboggs in #3099
- Turn off zstandard with Baselibs by @mathomp4 in #3098
- Auto GitFlow - main → develop by @github-actions in #3110
- Update to ESMA_env v4.31.0 (ESMF 8.7.0) by @mathomp4 in #3114
- This grid-def file is used in GSI by @rtodling in #3120
- Update CI to use Baselibs 7.27.0 by @mathomp4 in #3116
- Auto GitFlow - main → develop by @github-actions in #3134
- Update to use GCC 14 in CI GNU runs by @mathomp4 in #3138
- Add options to benchmark scripts by @mathomp4 in #3097
- Add CMake to skip ExtData2G unit test if pfunit not found by @mathomp4 in #3157
- Trajectory sampler: minor bug fix by @metdyn in #3168
- check tableEnd efficiently by @weiyuan-jiang in #3178
- CI changes for GEOSadas by @mathomp4 in #3197
- Updates for f2py-meson support by @mathomp4 in #3202
- Auto GitFlow - main → develop by @github-actions in #3208
- Feature/bmauer/fixes #3210 by @bena-nasa in #3211
- Feature/fixes #3175 by @bena-nasa in #3212
- Fix up CI image code by @mathomp4 in #3214
- Added return to fetch_data by @weiyuan-jiang in #3179
- More informative error messages by @AgilentGCMS in #3161
- Fixes #2845. Allow ESMF_CONFIG_FILE to specify ESMF control file by @mathomp4 in #3174
- WIP: Fixes needed for flang by @mathomp4 in #3176
- Workaround for ifx bug by @mathomp4 in #3185
- support for CICE6(or others) to rewind by @zhaobin74 in #2982
- Prepare for 2.51.0 Release by @mathomp4 in #3224
- GitFlow: Merge develop into main for 2.51 release by @mathomp4 in #3226
New Contributors
- @rtodling made their first contribution in #3120
- @AgilentGCMS made their first contribution in #3161
- @zhaobin74 made their first contribution in #2982
Full Changelog: v2.50.3...v2.51.0
MAPL 2.50.3
This patch release of MAPL 2.50 fixes a bug where c NULL character is not removed from end of string when reading netcdf attribute in NetCDF4_FileFormatter.F90
All testing shows this to be zero-diff to MAPL 2.50.2.
This version of MAPL was tested with:
- Intel Fortran Classic 2021.6.0 and 2021.13 (Note:
ifx
does not yet work) - 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.25.0
- netcdf-c 4.9.2
- netcdf-fortran 4.6.1
- ESMF 8.6.1
- GFE 1.16.0
- gFTL 1.14.0
- gFTL-shared 1.9.0
- pFUnit 4.10.0 (optional)
- fArgParse 1.8.0 (if
-DBUILD_WITH_FARGPARSE=YES
, default=YES
) - pFlogger 1.14.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.51.0
We recommend most external users set -DUSE_F2PY=OFF
We also require CMake 3.23 or higher.
From CHANGELOG.md
Fixed
- Fixed bug where c null character is not removed from end of string when reading netcdf attribute in NetCDF4_FileFormatter.F90
What's Changed
- fixes #3201 by @bena-nasa in #3203
Full Changelog: v2.50.2...v2.50.3
MAPL 2.40.3.1
NOTE: This is a special tweak release of MAPL 2.40.3. We do not recommend users use this version unless specifically told to.
This version of MAPL is essentialy v2.40.3 but with changes and fixes for ESMF 8.6.1 backported from newer tags. Thus, unlike MAPL 2.40.3, this version requires at least ESMF 8.6.1 (due to CMake changes).
The libraries this version of MAPL is currently tested with are below.
- Baselibs 7.14.0
- netcdf-c 4.9.2 (Needed for quantize support, but not required for all of MAPL)
- netcdf-fortran 4.6.1 (Needed for quantize support, but not required for all of MAPL)
- ESMF 8.6.1
- GFE 1.11.0
- gFTL 1.10.0
- gFTL-shared 1.6.1
- pFUnit 4.7.3 (optional)
- fArgParse 1.5.0 (if
-DBUILD_WITH_FARGPARSE=YES
, default=YES
) - pFlogger 1.9.5 (if
-DBUILD_WITH_PFLOGGER=YES
, default=YES
) - FLAP geos/v1.10.0 (if
-DBUILD_WITH_FLAP=YES
, default=NO
)
Also, if you build with -DUSE_F2PY=ON
, you will need:
- ESMA_cmake v3.31.1
We recommend most external users set -DUSE_F2PY=OFF
From CHANGELOG.md
Changed
- Backport changes to use ESMF 8.6.1 to 2.40.3
- Update to use
ESMF::ESMF
target - Update to ESMF 8.6.1
FindESMF.cmake
file - Remove excessive prints in
generic/OpenMP_Support.F90
- Update to use
Full Changelog: v2.40.3...v2.40.3.1
MAPL 2.50.2
This patch release of MAPL 2.50 fixes a bug with the placement of a cycle
in a coupler loop in History. This bug was exposed in the pert code used in GEOSadas.
This version of MAPL was tested with:
- Intel Fortran Classic 2021.6.0 and 2021.13 (Note:
ifx
does not yet work) - 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.25.0
- netcdf-c 4.9.2
- netcdf-fortran 4.6.1
- ESMF 8.6.1
- GFE 1.16.0
- gFTL 1.14.0
- gFTL-shared 1.9.0
- pFUnit 4.10.0 (optional)
- fArgParse 1.8.0 (if
-DBUILD_WITH_FARGPARSE=YES
, default=YES
) - pFlogger 1.14.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.51.0
We recommend most external users set -DUSE_F2PY=OFF
We also require CMake 3.23 or higher.
From CHANGELOG.md
Fixed
- Fixed bug with cycle placement in coupler loop in History
What's Changed
- fixes #3131 by @bena-nasa in #3132
Full Changelog: v2.50.1...v2.50.2
MAPL 2.47.1.2
This is a tweak patch on top of v2.47.1.1. It has a fix for a timer bug when using History and the GEOS Pert application.
This version of MAPL was tested with:
- Intel Fortran Classic 2021.6.0 (Classic 2021.13 seems to work,
ifx
does not yet work) - GCC 13.2.0
- NAG 7.2
The libraries this version of MAPL is currently tested with are below. NOTE: Changes here from MAPL 2.44 and earlier, namely GFE
- Baselibs 7.24.0
- netcdf-c 4.9.2
- netcdf-fortran 4.6.1
- ESMF 8.6.1b04 (8.6.0 is enough for Baselibs builds, but 8.6.1 is required for Spack)
- GFE 1.15.0
- gFTL 1.13.0
- gFTL-shared 1.8.0
- pFUnit 4.9.0 (optional)
- fArgParse 1.7.0 (if
-DBUILD_WITH_FARGPARSE=YES
, default=YES
) - pFlogger 1.14.0 (if
-DBUILD_WITH_PFLOGGER=YES
, default=YES
)
Also, if you build with Baselibs and/or -DUSE_F2PY=ON
, you should use (at least):
- ESMA_cmake v3.46.0
We recommend most external users set -DUSE_F2PY=OFF
From CHANGELOG.md
Changed
- Fixed timer bug in History with GEOS pert application
Full Changelog: v2.47.1.1...v2.47.1.2
MAPL 2.47.1.1
This is a tweak release on MAPL v2.47.1 with a fix needed for GEOSadas development. It has a minor revision (and generalization) of MAPL_DefGridName
for GSI purposes
This version of MAPL was tested with:
- Intel Fortran Classic 2021.6.0 (Classic 2021.13 seems to work,
ifx
does not yet work) - GCC 13.2.0
- NAG 7.2
The libraries this version of MAPL is currently tested with are below. NOTE: Changes here from MAPL 2.44 and earlier, namely GFE
- Baselibs 7.24.0
- netcdf-c 4.9.2
- netcdf-fortran 4.6.1
- ESMF 8.6.1b04 (8.6.0 is enough for Baselibs builds, but 8.6.1 is required for Spack)
- GFE 1.15.0
- gFTL 1.13.0
- gFTL-shared 1.8.0
- pFUnit 4.9.0 (optional)
- fArgParse 1.7.0 (if
-DBUILD_WITH_FARGPARSE=YES
, default=YES
) - pFlogger 1.14.0 (if
-DBUILD_WITH_PFLOGGER=YES
, default=YES
)
Also, if you build with Baselibs and/or -DUSE_F2PY=ON
, you should use (at least):
- ESMA_cmake v3.46.0
We recommend most external users set -DUSE_F2PY=OFF
From CHANGELOG.md
Changed
- Minor revision (and generalization) of grid-def for GSI purposes
Full Changelog: v2.47.1...v2.47.1.1
MAPL 2.50.1
This is a patch release on MAPL 2.50. It fixes an uninitialized variable found when running with GNU and ExtData2G when built with Debugging compiler options.
All tests show this is zero-diff to MAPL 2.50.0.
This version of MAPL was tested with:
- Intel Fortran Classic 2021.6.0 and 2021.13 (Note:
ifx
does not yet work) - 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.25.0
- netcdf-c 4.9.2
- netcdf-fortran 4.6.1
- ESMF 8.6.1
- GFE 1.16.0
- gFTL 1.14.0
- gFTL-shared 1.9.0
- pFUnit 4.10.0 (optional)
- fArgParse 1.8.0 (if
-DBUILD_WITH_FARGPARSE=YES
, default=YES
) - pFlogger 1.14.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.51.0
We recommend most external users set -DUSE_F2PY=OFF
We also require CMake 3.23 or higher.
From CHANGELOG.md
Fixed
- Fixed unitialized variable bug in ExtData exposed by gfortran
What's Changed
- Fixes #3073 by @bena-nasa in #3107
Full Changelog: v2.50.0...v2.50.1