Skip to content

Releases: GEOS-ESM/MAPL

MAPL 2.33.0

08 Dec 21:21
14bd792
Compare
Choose a tag to compare

DOI

This release of MAPL has a bugfix to allow ExtData2G to run with GNU compilers. Also, has a fix to one of the tutorials.

All testing shows this is zero-diff for GEOSgcm.


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

  • Baselibs 7.7.0
    • netcdf-c 4.9.0
    • netcdf-fortran 4.6.0
    • ESMF 8.4.0
    • GFE 1.8.0
      • gFTL 1.8.1
      • gFTL-shared 1.5.0
      • pFUnit 4.6.1 (optional)
      • fArgParse 1.4.1 (if -DBUILD_WITH_FARGPARSE=YES, default=YES)
      • pFlogger 1.9.1 (if -DBUILD_WITH_PFLOGGER=YES, default=YES)
      • yaFyaml 1.0.4 (if -DUSE_EXTDATA2G=YES, default=YES)
      • FLAP geos/v1.10.0 (if -DBUILD_WITH_FLAP=YES, default=YES)

From CHANGELOG.md

Added

  • Added new test case for ExtData2G to test multiple input files

Fixed

  • Fixed bug in tutorial case parent_no_children when attempting recommended exercises
  • Implemented workaround for gfortran runtime issue with YafYaml when parsing multiple ExtData yaml files for ExtData2G

What's Changed

Full Changelog: v2.32.0...v2.33.0

MAPL 2.32.0

02 Dec 21:08
ecb6119
Compare
Choose a tag to compare

DOI

This release of MAPL adds a few new features:

  1. Added new option to allow for gaps in datasets ingested by ExtDataNG (see #1789)
  2. Added a new fArgParse command line parser. This will eventually replace the use of FLAP in MAPL3, and is now just optional in MAPL2. Requires fArgParse v1.4.1
  3. Added subroutines for reading 4d integers in NetCDF4_FileFormatter
  4. Updated MAPL to use Baselibs 7.7.0. This has the fArgParse version needed for the parser (see above), as well as has newer netCDF to enable use of the quantize feature.

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

  • Baselibs 7.7.0
    • netcdf-c 4.9.0
    • netcdf-fortran 4.6.0
    • ESMF 8.4.0
    • GFE 1.8.0
      • gFTL 1.8.1
      • gFTL-shared 1.5.0
      • pFUnit 4.6.1 (optional)
      • fArgParse 1.4.1 (if -DBUILD_WITH_FARGPARSE=YES, default=YES)
      • pFlogger 1.9.1 (if -DBUILD_WITH_PFLOGGER=YES, default=YES)
      • yaFyaml 1.0.4 (if -DUSE_EXTDATA2G=YES, default=YES)
      • FLAP geos/v1.10.0 (if -DBUILD_WITH_FLAP=YES, default=YES)

From CHANGELOG.md

Added

  • Add fArgParse CLI argument parser
  • Added subroutines for reading 4d integers in NetCDF4_FileFormatter
  • Added new option to allow for gaps in datasets ingested by ExtDataNG

Changed

  • Updated to ESMA_cmake v3.21.0
    • Adds support for a generic x86_64 processor for GNU
  • Updated to ESMA_env v4.8.0
    • Baselibs v7.7.0
      • fArgParse v1.4.1
      • pFUnit v4.6.1
  • Move to use GitHub Actions for label enforcement

What's Changed

Full Changelog: v2.31.0...v2.32.0

MAPL 2.31.0

28 Nov 23:29
59485b4
Compare
Choose a tag to compare

DOI

This release of MAPL has many new features and updates including:

  • Fixes for the NVIDIA compiler
  • New function to remove variable from FileMetadata object
  • Added file name to errors when reading netCDF files
  • Added capability to Automatic Code Generator to detect inconsistencies in spec files at build time
  • Add support for netCDF quantize.
    • Note this requires netCDF-C v4.9.0 and netCDF-Fortran v4.6.0, but our CMake does have a test
      to make sure the netCDF library was compiled with support. This test uses NETCDF_INCLUDE_DIRS and as such
      within GEOS requires the use of ESMA_cmake v3.20.0 or later to (possibly) succeed.
  • Added subroutine to calculate IJ indexes of given lats lons for cubed-sphere grid

The libraries this version of MAPL has been tested with are below.

  • Baselibs 7.5.0
    • netcdf-c 4.8.1
    • netcdf-fortran 4.5.4
    • ESMF 8.3.0
    • GFE 1.4.0
      • gFTL 1.8.1
      • gFTL-shared 1.5.0
      • pFUnit 4.4.1 (optional)
      • fArgParse 1.3.0 (optional)
      • pFlogger 1.9.1 (if -DBUILD_WITH_PFLOGGER=YES)
      • yaFyaml 1.0.4 (if -DUSE_EXTDATA2G=YES)
      • FLAP geos/v1.10.0 (if -DBUILD_WITH_FLAP=YES)

In order to use the new netCDF quantize support in MAPL, you need to use the equivalent to Baselibs 7.7.0 (which MAPL and GEOS will soon move to):

  • Baselibs 7.7.0
    • netcdf-c 4.9.0
    • netcdf-fortran 4.6.0
    • ESMF 8.4.0
    • GFE 1.8.0
      • gFTL 1.8.1
      • gFTL-shared 1.5.0
      • pFUnit 4.6.1 (optional)
      • fArgParse 1.4.1 (optional)
      • pFlogger 1.9.1 (if -DBUILD_WITH_PFLOGGER=YES)
      • yaFyaml 1.0.4 (if -DUSE_EXTDATA2G=YES)
      • FLAP geos/v1.10.0 (if -DBUILD_WITH_FLAP=YES)

From CHANGELOG.md

Fixed

  • Fixed the subroutine that removes a variable from FileMetadata Object
  • Defined real64 constants in consistent way
  • Workarounds for NVIDIA compiler

Added

  • Added a function to remove a variable from FileMetadata object.
  • Added assert to NetCDF4_get_var.H to print variable name if data retrieval fails
  • Added to asserts in NetCDF4_get_var.H to print out file if there are error getting variables
  • Added capability to Automatic Code Generator to detect inconsistencies in spec files at build time
  • Add support for netCDF quantize.
    • Note this requires netCDF-C v4.9.0 and netCDF-Fortran v4.6.0, but our CMake does have a test
      to make sure the netCDF library was compiled with support. This test uses NETCDF_INCLUDE_DIRS and as such
      within GEOS requires the use of ESMA_cmake v3.20.0 or later to (possibly) succeed.
  • Added subroutine to calculate IJ indexes of given lats lons for cubed-sphere grid

Changed

  • Updated to ESMA_cmake v3.20.0
    • This is to support the NETCDF_INCLUDE_DIRS used in the quantize support test
  • Updated to ESMA_env v4.7.0
    • This has many updates including moving to netCDF-C v4.9.0 and netCDF-Fortran v4.6.0. The other updates:
      • Baselibs v7.6.0
        • ESMF v8.4.0
        • zlib 1.2.13
        • curl 7.86.0
        • netCDF-C 4.9.0
        • netCDF-Fortran 4.6.0
        • NCO 5.1.1
        • CDO 2.1.0
  • Removed some unneeded use statements in ExtDataGridCompNG.F90. This seemed to let this new quantize support build with Intel
  • Changed nbits internally to be nbits_to_keep. Note that externally, you still use nbits: in HISTORY.rc

What's Changed

  • Auto GitFlow - main → develop by @github-actions in #1786
  • Bump devops-infra/action-pull-request from 0.5.1 to 0.5.2 by @dependabot in #1790
  • Add status check after retrieving variable data from NetCDF file by @lizziel in #1792
  • Auto GitFlow - main → develop by @github-actions in #1801
  • Auto GitFlow - main → develop by @github-actions in #1804
  • Bump devops-infra/action-pull-request from 0.5.2 to 0.5.3 by @dependabot in #1807
  • Auto GitFlow - main → develop by @github-actions in #1815
  • define real64 constants more consistently by @weiyuan-jiang in #1799
  • Fixes #1800. Add file name to NC4 asserts by @mathomp4 in #1813
  • Fixes for NVIDIA by @mathomp4 in #1823
  • add function to remove a variable from meta data by @weiyuan-jiang in #1825
  • Bugfix/wjiang/rm var from meta by @weiyuan-jiang in #1827
  • Add capability to check MAPL Spec options (fields) to Automatic Code Generator (ACG) by @darianboggs in #1829
  • add subroutine to calculate global IJ index for cubed sphere grid by @weiyuan-jiang in #1782
  • Add netCDF quantize support by @mathomp4 in #1810
  • GitFlow: Merge develop into main for release by @mathomp4 in #1835

Full Changelog: v2.30.3...v2.31.0

MAPL 2.30.3

15 Nov 17:45
8bb4b4a
Compare
Choose a tag to compare

DOI

This patch release of MAPL 2.30 fixes a bug when writing fields in History with ungridded dimension when the split option is not requested.

This is zero-diff for GEOS except (obviously) when the bug was encountered in History output.


The libraries this version of MAPL has been tested with are below.

  • Baselibs 7.5.0
    • netcdf-c 4.8.1
    • netcdf-fortran 4.5.4
    • ESMF 8.3.0
    • GFE 1.4.0
      • gFTL 1.8.1
      • gFTL-shared 1.5.0
      • pFUnit 4.4.1 (optional)
      • fArgParse 1.3.0 (optional)
      • pFlogger 1.9.1 (if -DBUILD_WITH_PFLOGGER=YES)
      • yaFyaml 1.0.4 (if -DUSE_EXTDATA2G=YES)
      • FLAP geos/v1.10.0 (if -DBUILD_WITH_FLAP=YES)

From CHANGELOG.md

Fixed

  • Fixed bug when writing fields in History with ungridded dimension when the split option is not requested

What's Changed

Full Changelog: v2.30.2...v2.30.3

MAPL 2.30.2

09 Nov 23:40
694c8fb
Compare
Choose a tag to compare

DOI

This patch release of MAPL fixes an issue where when a grid is received from outside of MAPL (e.g., NOAA UFS), MAPL must provide a mechanism to specify a grid-type for internal processing. Add an option to set_grid to set GridType explicitly.


The libraries this version of MAPL has been tested with are below.

  • Baselibs 7.5.0
    • netcdf-c 4.8.1
    • netcdf-fortran 4.5.4
    • ESMF 8.3.0
    • GFE 1.4.0
      • gFTL 1.8.1
      • gFTL-shared 1.5.0
      • pFUnit 4.4.1 (optional)
      • fArgParse 1.3.0 (optional)
      • pFlogger 1.9.1 (if -DBUILD_WITH_PFLOGGER=YES)
      • yaFyaml 1.0.4 (if -DUSE_EXTDATA2G=YES)
      • FLAP geos/v1.10.0 (if -DBUILD_WITH_FLAP=YES)

From CHANGELOG.md

Fixed

  • When a grid is received from outside of MAPL (e.g., NOAA UFS), MAPL must provide a mechanism to specify a grid-type for internal processing. Add an option to set_grid to set GridType explicitly.

What's Changed

Full Changelog: v2.30.1...v2.30.2

MAPL 2.30.1

07 Nov 20:47
229316b
Compare
Choose a tag to compare

DOI

This patch release of MAPL has a fix for building time_ave_util.x at NAS with MPT+GNU.


The libraries this version of MAPL has been tested with are below.

  • Baselibs 7.5.0
    • netcdf-c 4.8.1
    • netcdf-fortran 4.5.4
    • ESMF 8.3.0
    • GFE 1.4.0
      • gFTL 1.8.1
      • gFTL-shared 1.5.0
      • pFUnit 4.4.1 (optional)
      • fArgParse 1.3.0 (optional)
      • pFlogger 1.9.1 (if -DBUILD_WITH_PFLOGGER=YES)
      • yaFyaml 1.0.4 (if -DUSE_EXTDATA2G=YES)
      • FLAP geos/v1.10.0 (if -DBUILD_WITH_FLAP=YES)

From CHANGELOG.md

Fixed

  • Fix for building time_ave_util.x at NAS using MPT

What's Changed

Full Changelog: v2.30.0...v2.30.1

MAPL 2.30.0

03 Nov 18:42
723999d
Compare
Choose a tag to compare

DOI

This release of MAPL adds a new utility, time_ave_util.x that is a refactoring of the current time_ave.x currently built as part of GMAO_Shared. The previous utility only worked on Lat-Lon grids, but the new one works with Lat-Lon, Cubed-Sphere, and Tripolar grids and supports regridding to a different grid if the user desires that the averaging be performed and output on a different grid than the datasets grid.


The libraries this version of MAPL has been tested with are below.

  • Baselibs 7.5.0
    • netcdf-c 4.8.1
    • netcdf-fortran 4.5.4
    • ESMF 8.3.0
    • GFE 1.4.0
      • gFTL 1.8.1
      • gFTL-shared 1.5.0
      • pFUnit 4.4.1 (optional)
      • fArgParse 1.3.0 (optional)
      • pFlogger 1.9.1 (if -DBUILD_WITH_PFLOGGER=YES)
      • yaFyaml 1.0.4 (if -DUSE_EXTDATA2G=YES)
      • FLAP geos/v1.10.0 (if -DBUILD_WITH_FLAP=YES)

From CHANGELOG.md

Added

  • Introduced a new time averaging utility code to perform time averages of datasets

Changed

  • Moved Regrid_Util.F90 to the Apps directory

What's Changed

Full Changelog: v2.29.0...v2.30.0

MAPL 2.29.0

28 Oct 17:37
6135a39
Compare
Choose a tag to compare

DOI

This release of MAPL has some minor fixes, changes and additions. All testing shows this release to be zero-diff with the GEOSgcm.

Notable additions are the option to pass in vertical metadata to FieldBundleWriter class for output files, the ability to provide a procedure defining extra compiler flags to the FLAP CLI code, and adding a coupled MOM6 run to the CI.

Also changes to the error handling macros, updates to ESMA_env and ESMA_cmake, as well as changes needed for ongoing land restarts work.


The libraries this version of MAPL has been tested with are below.

  • Baselibs 7.5.0
    • netcdf-c 4.8.1
    • netcdf-fortran 4.5.4
    • ESMF 8.3.0
    • GFE 1.4.0
      • gFTL 1.8.1
      • gFTL-shared 1.5.0
      • pFUnit 4.4.1 (optional)
      • fArgParse 1.3.0 (optional)
      • pFlogger 1.9.1 (if -DBUILD_WITH_PFLOGGER=YES)
      • yaFyaml 1.0.4 (if -DUSE_EXTDATA2G=YES)
      • FLAP geos/v1.10.0 (if -DBUILD_WITH_FLAP=YES)

From CHANGELOG.md

Fixed

  • Add define for -Dsys${CMAKE_SYSTEM_NAME} to fix build issue with macOS and Intel (#1695)
  • Fix handling of return macros for programs and subroutines (#1194)

Added

  • Add Coupled MOM6 GCM run to CI (ifort only)
  • Added ability to pass in extra options to FLAP CLI arguments
  • Added option to pass vertical metadata to FieldBundleWriter class for output file
  • Expose FileMetaUtilities class MAPL_VerticalDataMod via "use MAPL"

Changed

  • Change argument arrdes of MAPL_Read and Write NC Var 3d to optional
  • Error codes in shared/MAPL_Error_Handling.F90 are now consistent with _FAILURE = 1 in include/MAPL_ErrLog.h
  • Updated `components.yaml
    • ESMA_env v4.4.0 → v4.5.0 (Update for GMI builds)
    • ESMA_cmake v3.18.0 → v3.19.0 (Add -save-temps to GNU debug, check if install prefix is writable)

What's Changed

Full Changelog: v2.28.0...v2.29.0

MAPL 2.28.0

17 Oct 19:11
6d6869a
Compare
Choose a tag to compare

DOI

This is a minor release of MAPL that is zero-diff in all testing, save for some History metadata changes.

With tripolar history output, the difference is due to a better tripolar grid factory being added to this release, so that tripolar History output is more like that of other grids including adding corner lats and lons.

For ALL History output, there is a global metadata change due to a request from NOAA. Namely, the default Contact: in History Gridded Component is now set to be blank. To keep metadata the same in GEOS History output, please set CONTACT: in your HISTORY.rc file. (This is done for GEOS users in a PR to GEOSgcm_App: GEOS-ESM/GEOSgcm_App#367

Other changes in this release include:

  • Major extension to the Automatic Code Generator python script
  • Reorganization of the pFIO demo program
  • A fix to stretched-grid checkpoints
  • Addition of a new GitHub Action/CircleCI process to make a Docker container upon release

The libraries this version of MAPL has been tested with are below.

  • Baselibs 7.5.0
    • netcdf-c 4.8.1
    • netcdf-fortran 4.5.4
    • ESMF 8.3.0
    • GFE 1.4.0
      • gFTL 1.8.1
      • gFTL-shared 1.5.0
      • pFUnit 4.4.1 (optional)
      • fArgParse 1.3.0 (optional)
      • pFlogger 1.9.1 (if -DBUILD_WITH_PFLOGGER=YES)
      • yaFyaml 1.0.4 (if -DUSE_EXTDATA2G=YES)
      • FLAP geos/v1.10.0 (if -DBUILD_WITH_FLAP=YES)

Fixed

  • Fix checkpoint target_lon and target_lat to be in degrees rather than radians

Added

  • Implemented create from filemetdata for Tripolar Grid Factory and add corners to output when writing files on Tripolar grid
  • Added Dockerfile and CircleCI workflow to build and push container to both Docker Hub and GitHub Container Registry on
    MAPL releases. Uses a GitHub Action to trigger CircleCI pipeline on releases.

Changed

  • Removed URLs and emails from MAPL per request of NOAA.
    • Changed the default Contact: in History Gridded Component to be blank. To keep metadata the same in History
      output, please set CONTACT: in your HISTORY.rc file.
  • Reorganized the file Tests/pfio_MAPL_demo.F90 to mimic the steps of MAPL_Cap.
  • Extend ACG
    • Add options (MAPL_DataSpec) / columns (read_specs)
    • Add constants for literals for uniformity (CATEGORIES, ALLOC, DELIMITER, TERMINATOR)
    • Fix lookups in aliases (dict) to find key (alias) or value (alias target) to allow unaliased options are possible
    • Add the alloc option to emit_get_pointers
    • Update outdated comments

What's Changed

New Contributors

Full Changelog: v2.27.1...v2.28.0

MAPL 2.27.1

04 Oct 18:10
160a8d7
Compare
Choose a tag to compare

DOI

This release of MAPL contains a hotfix that is actually more to fixing MAPL3 (see #1678), but the bug was present in main so it was hotfixed.

The fix is for a missing parentGC argument to addChildFromDSO


Dependent Libraries

The libraries this version of MAPL has been tested with are below.

  • Baselibs 7.5.0
    • netcdf-c 4.8.1
    • netcdf-fortran 4.5.4
    • ESMF 8.3.0
    • GFE 1.4.0
      • gFTL 1.8.1
      • gFTL-shared 1.5.0
      • pFUnit 4.4.1 (optional)
      • fArgParse 1.3.0 (optional)
      • pFlogger 1.9.1 (if -DBUILD_WITH_PFLOGGER=YES)
      • yaFyaml 1.0.4 (if -DUSE_EXTDATA2G=YES)
      • FLAP geos/v1.10.0 (if -DBUILD_WITH_FLAP=YES)

From CHANGELOG.md

Fixed

  • Fixed a missing parentGC argument to addChildFromDSO

What's Changed

  • Fixes #1678. Added parentGC argument to the call MAPL_AddChildFromDSO… by @atrayano in #1709

Full Changelog: v2.27.0...v2.27.1