Skip to content

Commit

Permalink
Merge branch 'develop' into release/MAPL-v3
Browse files Browse the repository at this point in the history
  • Loading branch information
mathomp4 committed Dec 19, 2024
2 parents 0d5ba7b + 0e0a5fa commit 2091560
Show file tree
Hide file tree
Showing 7 changed files with 37 additions and 18 deletions.
2 changes: 1 addition & 1 deletion .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ parameters:
default: ""

# Anchors to prevent forgetting to update a version
os_version: &os_version ubuntu20
os_version: &os_version ubuntu24
baselibs_version: &baselibs_version v7.27.0
bcs_version: &bcs_version v11.6.0
tag_build_arg_name: &tag_build_arg_name maplversion
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/workflow.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ jobs:
name: Build and Test MAPL GNU
runs-on: ubuntu-latest
container:
image: gmao/ubuntu20-geos-env-mkl:v7.27.0-openmpi_5.0.5-gcc_14.2.0
image: gmao/ubuntu24-geos-env-mkl:v7.27.0-openmpi_5.0.5-gcc_14.2.0
# Per https://github.com/actions/virtual-environments/issues/1445#issuecomment-713861495
# It seems like we might not need secrets on GitHub Actions which is good for forked
# pull requests
Expand Down Expand Up @@ -86,7 +86,7 @@ jobs:
name: Build and Test MAPL Intel
runs-on: ubuntu-latest
container:
image: gmao/ubuntu20-geos-env:v7.27.0-intelmpi_2021.13-ifort_2021.13
image: gmao/ubuntu24-geos-env:v7.27.0-intelmpi_2021.13-ifort_2021.13
# Per https://github.com/actions/virtual-environments/issues/1445#issuecomment-713861495
# It seems like we might not need secrets on GitHub Actions which is good for forked
# pull requests
Expand Down
12 changes: 12 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,18 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

### Deprecated

## [2.51.2] - 2024-12-19

### 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

## [2.51.1] - 2024-12-10

### Fixed
Expand Down
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ endif ()

project (
MAPL
VERSION 2.51.1
VERSION 2.51.2
LANGUAGES Fortran CXX C) # Note - CXX is required for ESMF

# Set the possible values of build type for cmake-gui
Expand Down
21 changes: 16 additions & 5 deletions gridcomps/ExtData2G/ExtDataConfig.F90
Original file line number Diff line number Diff line change
Expand Up @@ -324,11 +324,12 @@ subroutine add_new_rule(this,key,export_rule,multi_rule,rc)
logical, optional, intent(in) :: multi_rule
integer, intent(out), optional :: rc

integer :: semi_pos,status
integer :: semi_pos,status,rule_n_pos
type(ExtDataRule) :: rule,ucomp,vcomp
type(ExtDataRule), pointer :: temp_rule
character(len=:), allocatable :: uname,vname
character(len=:), allocatable :: uname,vname,original_key
logical :: usable_multi_rule
character(len=1) :: rule_num

if (present(multi_rule)) then
usable_multi_rule = multi_rule
Expand All @@ -341,14 +342,24 @@ subroutine add_new_rule(this,key,export_rule,multi_rule,rc)
rule = ExtDataRule(export_rule,this%sample_map,key,multi_rule=usable_multi_rule,_RC)
semi_pos = index(key,";")
if (semi_pos > 0) then
call rule%split_vector(key,ucomp,vcomp,rc=status)
rule_n_pos = index(key,rule_sep)
original_key = key
if (rule_n_pos > 0) original_key = key(1:rule_n_pos-1)

call rule%split_vector(original_key,ucomp,vcomp,rc=status)
uname = key(1:semi_pos-1)
vname = key(semi_pos+1:len_trim(key))

if (rule_n_pos > 0) then
rule_num = key(rule_n_pos+1:rule_n_pos+1)
uname=uname//rule_sep//rule_num
end if

temp_rule => this%rule_map%at(trim(uname))
_ASSERT(.not.associated(temp_rule),"duplicated export entry key: "//trim(key))
_ASSERT(.not.associated(temp_rule),"duplicated export entry key: "//trim(uname))
call this%rule_map%insert(trim(uname),ucomp)
temp_rule => this%rule_map%at(trim(vname))
_ASSERT(.not.associated(temp_rule),"duplicated export entry key: "//trim(key))
_ASSERT(.not.associated(temp_rule),"duplicated export entry key: "//trim(vname))
call this%rule_map%insert(trim(vname),vcomp)
else
temp_rule => this%rule_map%at(trim(key))
Expand Down
4 changes: 0 additions & 4 deletions gridcomps/ExtData2G/ExtDataGridCompNG.F90
Original file line number Diff line number Diff line change
Expand Up @@ -1466,10 +1466,6 @@ subroutine create_bracketing_fields(item,ExtDataState,cf,rc)

else if (item%vartype == MAPL_VectorField) then

if (item%Trans /= REGRID_METHOD_BILINEAR) then
_FAIL('No conservative re-gridding with vectors')
end if

call ESMF_StateGet(ExtDataState, trim(item%vcomp1), field,_RC)
call ESMF_FieldGet(field,grid=grid,rank=fieldRank,_RC)

Expand Down
10 changes: 5 additions & 5 deletions profiler/tests/test_ExclusiveColumn.pf
Original file line number Diff line number Diff line change
Expand Up @@ -11,15 +11,15 @@ contains
class(AbstractMeterNode), pointer :: subnode
class(AbstractMeter), pointer :: t
type(ExclusiveColumn) :: c
type(UnlimitedVector) :: v
type(UnlimitedVector), target :: v
integer :: i
integer :: expected(3)
class(*), allocatable :: q
class(*), pointer :: q

node = MeterNode('top', AdvancedMeter(MpiTimerGauge()))
t => node%get_meter()
call t%add_cycle(10.0d0)

call node%add_child('a', AdvancedMeter(MpiTimerGauge()))
subnode => node%get_child('a')
t => subnode%get_meter()
Expand All @@ -33,7 +33,7 @@ contains
v = c%get_rows(node)
expected = [7,1,2]
do i = 1, 3
q = v%at(i)
q => v%at(i)
select type (q)
type is (integer)
@assertEqual(expected(i), q)
Expand Down

0 comments on commit 2091560

Please sign in to comment.