Releases: GEOS-ESM/MAPL
MAPL 2.33.0
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
- Fixes #1846 by @bena-nasa in #1849
- Fixes #1847 by @bena-nasa in #1850
- Prepare for 2.33 release by @mathomp4 in #1852
- GitFlow: Merge Develop into Main for 2.33 Release by @mathomp4 in #1854
Full Changelog: v2.32.0...v2.33.0
MAPL 2.32.0
This release of MAPL adds a few new features:
- Added new option to allow for gaps in datasets ingested by ExtDataNG (see #1789)
- 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
- Added subroutines for reading 4d integers in NetCDF4_FileFormatter
- 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
- Adds support for a generic
- Updated to ESMA_env v4.8.0
- Baselibs v7.7.0
- fArgParse v1.4.1
- pFUnit v4.6.1
- Baselibs v7.7.0
- Move to use GitHub Actions for label enforcement
What's Changed
- Feature/bmauer/fixes #1789 by @bena-nasa in #1797
- Move to use GitHub Action for Label Enforcement by @mathomp4 in #1840
- add 4d integer reading subroutine to formatter by @weiyuan-jiang in #1838
- Fixes #1756. Add fArgParse CLI parser by @mathomp4 in #1758
- GitFlow: Merge Develop into Main for 2.32.0 Release by @mathomp4 in #1844
Full Changelog: v2.31.0...v2.32.0
MAPL 2.31.0
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 usesNETCDF_INCLUDE_DIRS
and as such
within GEOS requires the use of ESMA_cmake v3.20.0 or later to (possibly) succeed.
- Note this requires netCDF-C v4.9.0 and netCDF-Fortran v4.6.0, but our CMake does have a test
- 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 usesNETCDF_INCLUDE_DIRS
and as such
within GEOS requires the use of ESMA_cmake v3.20.0 or later to (possibly) succeed.
- Note this requires netCDF-C v4.9.0 and netCDF-Fortran v4.6.0, but our CMake does have a test
- 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
- This is to support the
- 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
- Baselibs v7.6.0
- This has many updates including moving to netCDF-C v4.9.0 and netCDF-Fortran v4.6.0. The other updates:
- Removed some unneeded
use
statements inExtDataGridCompNG.F90
. This seemed to let this new quantize support build with Intel - Changed
nbits
internally to benbits_to_keep
. Note that externally, you still usenbits:
inHISTORY.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
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
- fixes #1811 bug with output variables with ungridded dims by @bena-nasa in #1814
Full Changelog: v2.30.2...v2.30.3
MAPL 2.30.2
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
- Add option to set_grid to set GridType explicitly. by @darianboggs in #1794
- Prepare for 2.30.2 release by @mathomp4 in #1802
Full Changelog: v2.30.1...v2.30.2
MAPL 2.30.1
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
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
- New Time Averaging Util by @bena-nasa in #1776
- GitFlow: Merge Develop into Main for 2.30.0 Release by @mathomp4 in #1778
Full Changelog: v2.29.0...v2.30.0
MAPL 2.29.0
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
ininclude/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
- Update error codes to match _FAILURE macro by @darianboggs in #1743
- Auto GitFlow - main → develop by @github-actions in #1744
- Add Coupled GCM run by @mathomp4 in #1749
- Fixes #1695. Fix build failure with macOS and Intel by @mathomp4 in #1748
- Add ability to pass extra arguments to FLAP by @mathomp4 in #1761
- Fixes #1194. Fix return macros by @mathomp4 in #1760
- Feature/bmauer/fixes/#1759 by @bena-nasa in #1764
- Feature/wjiang/add optional arrdes by @weiyuan-jiang in #1757
- Update to ESMA_cmake v3.19.0 and ESMA_env v4.5.0 by @mathomp4 in #1767
- Prepare for MAPL 2.29.0 release by @mathomp4 in #1769
- GitFlow: Merge Develop into Main for 2.29 Release by @mathomp4 in #1770
Full Changelog: v2.28.0...v2.29.0
MAPL 2.28.0
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
andtarget_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 setCONTACT:
in yourHISTORY.rc
file.
- Changed the default
- Reorganized the file
Tests/pfio_MAPL_demo.F90
to mimic the steps ofMAPL_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 toemit_get_pointers
- Update outdated comments
- Add options (
What's Changed
- Auto GitFlow - main → develop by @github-actions in #1710
- Fixes #1694. Remove URLs from MAPL by @mathomp4 in #1715
- Create dependabot.yml by @mathomp4 in #1714
- Bump actions/upload-artifact from 2 to 3 by @dependabot in #1721
- Bump devops-infra/action-pull-request from 0.4 to 0.5.0 by @dependabot in #1719
- Bump styfle/cancel-workflow-action from 0.9.1 to 0.10.1 by @dependabot in #1717
- Bump actions/checkout from 2 to 3.1.0 by @dependabot in #1720
- Auto GitFlow - main → develop by @github-actions in #1718
- Bump styfle/cancel-workflow-action from 0.10.1 to 0.11.0 by @dependabot in #1725
- Bump devops-infra/action-pull-request from 0.5.0 to 0.5.1 by @dependabot in #1726
- Update dependabot to target develop by @mathomp4 in #1728
- Auto GitFlow - main → develop by @github-actions in #1727
- Feature/bmauer/complete tripolar grid factory by @bena-nasa in #1697
- Extend Automatic Code Generator by @darianboggs in #1713
- Reorganize PFIO Standalone by @JulesKouatchou in #1693
- Fixes #1687. Stretched Grid checkpoint attributes should be in degrees by @mathomp4 in #1736
- Build Docker container on release by @mathomp4 in #1724
- GitFlow: Merge Develop into Main for 2.28 Release by @mathomp4 in #1741
New Contributors
- @dependabot made their first contribution in #1721
Full Changelog: v2.27.1...v2.28.0
MAPL 2.27.1
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
Full Changelog: v2.27.0...v2.27.1