-
Notifications
You must be signed in to change notification settings - Fork 59
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
+Document or eliminate undocumented interfaces #107
+Document or eliminate undocumented interfaces #107
Conversation
Address undocumented interfaces by adding explicit interfaces to replaces one level of the pass-throughs or eliminated them. Specifically - Eliminated global_field_sum() from MOM_domains, as it is no longer used anywhere in the MOM6 code or drivers. At the config_src/infra level, the pass-through calls to mpp_global_sum are commented out in case there are other versions of the MOM6 code that still use global_field_sum. - Added explicit interfaces to horizontal_interp_init() and time_interp_extern_init() in the config_src/infra rather that leaving them as undocumented pass-throughs to the FMS code. - Added the explicit subroutine stdout_if_root() to MOM_io.F90 to replace an undocumented pass-through to the FMS stdout function. - Added comments describing the publicly visible encoding parameters ind_flux, ind_alpha, and ind_csurf that are a part of the coupler_types module. - Removed the unnecessary or commented-out public declarations for post_data_1d_k, vert_fill_TS, and legacy_diabatic. All answers are bitwise identical, but there are some minor changes to the names of subroutines offered at the config_src/infra level to permit the documentation of these interfaces without running afoul of some bugs with certain versions of the gnu compiler.
Codecov Report
@@ Coverage Diff @@
## dev/gfdl #107 +/- ##
=========================================
Coverage 28.75% 28.76%
=========================================
Files 248 248
Lines 72974 72984 +10
=========================================
+ Hits 20985 20991 +6
- Misses 51989 51993 +4
Continue to review full report at Codecov.
|
Gaea regression: https://gitlab.gfdl.noaa.gov/ogrp/MOM6/-/pipelines/15217 ✔️ |
Made post_data_1d_k publicly visible once again, rather than requiring calls to use post_data, to support backward compatibility with older versions of the ocean_BGC code. This interface was removed from public visibility as a part of github.com/NOAA-GFDL/pull/107, but it caused problems with some of GFDL's Earth System Models, as noted in NOAA-GFDL#168. All answers are bitwise identical for any cases that compiled before.
Made post_data_1d_k publicly visible once again, rather than requiring calls to use post_data, to support backward compatibility with older versions of the ocean_BGC code. This interface was removed from public visibility as a part of github.com//pull/107, but it caused problems with some of GFDL's Earth System Models, as noted in #168. All answers are bitwise identical for any cases that compiled before.
Address undocumented interfaces by adding explicit interfaces to replaces one
level of the pass-throughs or eliminated them. Specifically
Eliminated global_field_sum() from MOM_domains, as it is no longer used
anywhere in the MOM6 code or drivers. At the config_src/infra level, the
pass-through calls to mpp_global_sum are commented out in case there are
other versions of the MOM6 code that still use global_field_sum.
Added explicit interfaces to horizontal_interp_init() and
time_interp_extern_init() in the config_src/infra rather that leaving them
as undocumented pass-throughs to the FMS code.
Added the explicit subroutine stdout_if_root() to MOM_io.F90 to replace an undocumented
pass-through to the FMS stdout function.
Added comments describing the publicly visible encoding parameters ind_flux,
ind_alpha, and ind_csurf that are a part of the coupler_types module.
Removed the unnecessary or commented-out public declarations for
post_data_1d_k, vert_fill_TS, and legacy_diabatic.
All answers are bitwise identical, but there are some minor changes to the
names of subroutines offered at the config_src/infra level to permit the
documentation of these interfaces without running afoul of some bugs with
certain versions of the gnu compiler.