Skip to content

Bugfix: Fix the Clang compilation of MET version 11.0 #2514

@JohnHalleyGotway

Description

@JohnHalleyGotway

Describe the Problem

METplus discussion dtcenter/METplus#2127 from @climbfuji notes that while MET version 10.1.1 does compile with Clang on MacOS, MET version 11.0.2 does not. Doing so results in a set of compiler errors and warnings.

This tasks for this issue include:

  • Fix the main_v11.0 branch to compile via Clang. And then create an 11.0.3 bugfix release.
  • Fix the develop branch to compile via Clang.

The remainder of these changes have been moved to issue MET #2564.

  • Update the MET documentation on the develop branch with information about Clang.
  • Add a new GHA test to the develop branch to compile with Clang for each pull request to ensure that it continues working. Note that this will require adding a new tag to the dtcenter/METbaseimage repository to provide the environment in which MET should be compiled via Clang.
  • Consider also enhancing compile_MET_all.sh to support Clang.

As noted in dtcenter/METplus#2127, test the compilation using Clang version 13.

Expected Behavior

MET version 11.0.2 (and all future versions) should compile with Clang.

Environment

Describe your runtime environment:
1. Machine: Mac Laptop
2. OS: MacOS Monterey (version 12.6.2)
3. Software version number(s): MET version 11.0.2 or the main_v11.0 branch

Relevant Deadlines

List relevant project deadlines here or state NONE.

Funding Source

Define the source of funding and account keys here or state NONE.

Define the Metadata

Assignee

  • Select engineer(s) or no engineer required
  • Select scientist(s) or no scientist required: No scientist needed

Labels

  • Select component(s)
  • Select priority
  • Select requestor(s)

Projects and Milestone

  • Select Organization level Project for support of the current coordinated release
  • Select Repository level Project for development toward the next official release or add alert: NEED PROJECT ASSIGNMENT label
  • Select Milestone as the next bugfix version

Define Related Issue(s)

Consider the impact to the other METplus components.

Bugfix Checklist

See the METplus Workflow for details.

  • Complete the issue definition above, including the Time Estimate and Funding Source.
  • Fork this repository or create a branch of main_<Version>.
    Branch name: bugfix_<Issue Number>_main_<Version>_<Description>
  • Fix the bug and test your changes.
  • Add/update log messages for easier debugging.
  • Add/update unit tests.
  • Add/update documentation.
  • Push local changes to GitHub.
  • Submit a pull request to merge into main_<Version>.
    Pull request: bugfix <Issue Number> main_<Version> <Description>
  • Define the pull request metadata, as permissions allow.
    Select: Reviewer(s) and Development issue
    Select: Organization level software support Project for the current coordinated release
    Select: Milestone as the next bugfix version
  • Iterate until the reviewer(s) accept and merge your changes.
  • Delete your fork or branch.
  • Complete the steps above to fix the bug on the develop branch.
    Branch name: bugfix_<Issue Number>_develop_<Description>
    Pull request: bugfix <Issue Number> develop <Description>
    Select: Reviewer(s) and Development issue
    Select: Repository level development cycle Project for the next official release
    Select: Milestone as the next official version
  • Close this issue.

Metadata

Metadata

Type

No type

Projects

Status

✅ Done

Relationships

None yet

Development

No branches or pull requests

Issue actions