Skip to content
This repository has been archived by the owner on Oct 23, 2020. It is now read-only.

MPAS Ocean Review Guide

Doug Jacobsen edited this page Jun 25, 2015 · 20 revisions

Reviewing MPAS-Ocean Pull Request


When reviewing a pull request to be merged into ocean/develop or ocean/private, please make sure the following are true:

  1. No hard coded real values occur without the _RKIND specifier. i.e. 5.0 -> 5.0_RKIND.
  2. All mpas_pool_get_array and mpas_pool_get_field calls from a pool with multiple time levels have the time level argument. i.e. call mpas_pool_get_array(statePool, 'layerThickness', layerThickness) -> call mpas_pool_get_array(statePool, 'layerThickness', layerThickess, timeLevel).
  3. The changes before and after the merge build with all of our supported compilers.
  4. None of the commits in the history of the branch touch files outside of src/core_ocean (i.e. git log --graph --online --decorate --name-status HEAD only lists files in src/core_ocean).
    1. If a commit does touch files outside, the commit need to be removed. The change cannot be removed in a separate commit.
  5. The changes follow existing formatting (i.e. tabs vs. spaces and white space at the end of lines)
  6. All of the other cores still build.
  7. Features of the ocean are still passing (i.e. bit-reproducibility across decompositions, and bit-restartability)
  8. The PR is submitted with the proper format (Following ACME requirements here):
    1. The title of the PR is descriptive of the feature not just the branch name
    2. The description of the PR clearly describes what the PR is intended to do

For new features:

  1. The PR is accompanied by a design document (Preferably referenced in a comment with in the PR, but not in the top description since that goes into the commit message).
  2. The design document has gone through the proper review process

Reviewer needs to merge into ocean/private and ocean/develop.

Clone this wiki locally