Skip to content

Commit

Permalink
Feature #2789 v6.0.0-rc1 release (#2792)
Browse files Browse the repository at this point in the history
* Per #2779, assigned a number to all use cases that are not run in GHA and added a reason to describe why the use cases have been disabled

* adding location information

* updating location information

* Revert "adding location information"

This reverts commit cc6d185.

* Revert "updating location information"

This reverts commit 5920779.

* added location of input data that is not found with rest of input data for use case category

* added information on how to run generate_release_notes.py script and updated script to clean up some formatting issues

* Per #2789, added release notes for rc1 release

* update version for rc1 release

* fixed broken commands in use case scripts

---------

Co-authored-by: lisagoodrich <[email protected]>
  • Loading branch information
georgemccabe and lisagoodrich authored Nov 14, 2024
1 parent f24614e commit aaa3bbe
Show file tree
Hide file tree
Showing 8 changed files with 146 additions and 10 deletions.
25 changes: 25 additions & 0 deletions .github/parm/use_case_groups.json
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,13 @@
"index_list": "10",
"run": false
},
{
"category": "marine_and_cryosphere",
"index_list": "11",
"disabled": true,
"disabled_reason": "exceeds GitHub Actions environment limits",
"run": false
},
{
"category": "medium_range",
"index_list": "0",
Expand Down Expand Up @@ -234,6 +241,22 @@
"index_list": "0",
"run": false
},
{
"category": "s2s_stratosphere",
"index_list": "1",
"disabled": true,
"disabled_reason": "exceeds GitHub Actions environment limits",
"data_location": "v6.0/additional_data_UserScript_fcstGFS_obsERA_StratospherePolar.tgz",
"run": false
},
{
"category": "s2s_stratosphere",
"index_list": "2",
"disabled": true,
"disabled_reason": "exceeds GitHub Actions environment limits",
"data_location": "v6.0/additional_data_UserScript_fcstGFS_obsERA_StratosphereQBO.tgz",
"run": false
},
{
"category": "short_range",
"index_list": "0",
Expand Down Expand Up @@ -278,12 +301,14 @@
"category": "short_range",
"index_list": "14",
"disabled": true,
"disabled_reason": "need new RRFS data with new line types",
"run": false
},
{
"category": "short_range",
"index_list": "15",
"disabled": true,
"disabled_reason": "exceeds GitHub Actions environment limits",
"run":false
},
{
Expand Down
42 changes: 41 additions & 1 deletion docs/Contributors_Guide/utilities.rst
Original file line number Diff line number Diff line change
Expand Up @@ -219,4 +219,44 @@ Generate Release Notes

**internal/scripts/dev_tools/generate_release_notes.py**

**MORE INFO COMING SOON**
This script queries METplus GitHub repositories and returns a formatted
list of GitHub issues that were closed after the date provided.
Note that this list may not correspond exactly to the issues from the
latest development cycle, but it is a good start.
The script also parses certain keywords from the beginning of the issue title
and puts the issues under those section headings. If none of the keywords
from the script can be parsed, the issues will be put under a catch-all group
at the end. Developers should rearrange these issues as appropriate.

This script must be run using a version of Python that has the github Python
package installed::

conda install -c conda-forge pygithub

OR::

mamba install pygithub

To run the script, first obtain a
`GitHub personal access token <https://github.com/settings/tokens>`_.
Set the environment variable GITHUB_TOKEN with this value::

export GITHUB_TOKEN=gha_...

Call the script, passing as arguments the name of the release, e.g. 6.0.0-rc1,
and the date when the development cycle started, e.g. 20241019::

~/METplus/internal/scripts/dev_tools/generate_release_notes.py 6.0.0-rc1 20241019

To parse issues from a repository other than METplus, provide the repository
name using the -r argument::

~/METplus/internal/scripts/dev_tools/generate_release_notes.py 12.0.0-rc1 20241019 -r MET

Please note that additional review and cleanup of the generated content may be
necessary.

The script will also output formatted table entries for the
METplus Release Acceptance Testing GitHub Discussion. This content will need
to be modified to include a description, assignee (if applicable), and updates
to the status.
70 changes: 70 additions & 0 deletions docs/Users_Guide/release-notes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,76 @@ When applicable, release notes are followed by the
describes the bugfix, enhancement, or new feature.
Important issues are listed **in bold** for emphasis.


METplus Version 6.0.0 RC 1 Release Notes (2024-11-13)
-----------------------------------------------------

.. dropdown:: Enhancement

* Resolve findings from SonarQube for 6.0.0
(`#1610 <https://github.com/dtcenter/METplus/issues/1610>`_)
* Prevent error if some input files are missing
(`#2460 <https://github.com/dtcenter/METplus/issues/2460>`_)
* Provide Docker images that contain all METplus components
(`#2682 <https://github.com/dtcenter/METplus/issues/2682>`_)

.. dropdown:: Bugfix

* Check the return status of the "make clean html" command in build_documentation.
(`#2034 <https://github.com/dtcenter/METplus/issues/2034>`_)
* Fix StatAnalysis to set `fcst_lev` config variable instead of `fcst_level`
(`#2742 <https://github.com/dtcenter/METplus/issues/2742>`_)
* Fix PCPCombine derive mode to properly set field info wrt valid time
(`#2762 <https://github.com/dtcenter/METplus/issues/2762>`_)

.. dropdown:: New Wrapper

NONE

.. dropdown:: New Use Case

* Fire Weather
(`#2560 <https://github.com/dtcenter/METplus/issues/2560>`_)

.. dropdown:: Documentation

* Develop an RST template for use cases
(`#918 <https://github.com/dtcenter/METplus/issues/918>`_)
* Add Python package/dependent library disclaimer in Contributor's Guides
(`#2300 <https://github.com/dtcenter/METplus/issues/2300>`_)
* Update the Release Guide to Document the Proposed Workflow During the RC1 Cycle
(`#2322 <https://github.com/dtcenter/METplus/issues/2322>`_)
* Update the Release Guide to document the release dependencies and completion indicator
(`#2339 <https://github.com/dtcenter/METplus/issues/2339>`_)
* Update links in Verification Datasets Guide
(`#2584 <https://github.com/dtcenter/METplus/issues/2584>`_)
* Document SonarQube for the METplus components in the Contributor's Guide
(`#2666 <https://github.com/dtcenter/METplus/issues/2666>`_)
* Move the Existing Builds page to Read the Docs
(`#2716 <https://github.com/dtcenter/METplus/issues/2716>`_)
* Update release guide instructions for METplus Analysis components
(`#2737 <https://github.com/dtcenter/METplus/issues/2737>`_)
* Update Release Notes to include updating the schedule for releases
(`#2751 <https://github.com/dtcenter/METplus/issues/2751>`_)
* Update Release Guide to create the main_vX.Y branch for the first release candidate
(`#2754 <https://github.com/dtcenter/METplus/issues/2754>`_)
* Add allow missing input variables to glossary
(`#2757 <https://github.com/dtcenter/METplus/issues/2757>`_)
* Update the Existing Builds page
(`#2763 <https://github.com/dtcenter/METplus/issues/2763>`_)
* Add instructions for running a use case using Apptainer
(`#2772 <https://github.com/dtcenter/METplus/issues/2772>`_)

.. dropdown:: Internal

* Add logic to define and parse METplus inter-component version dependencies
(`#2562 <https://github.com/dtcenter/METplus/issues/2562>`_)
* Replace manage_externals
(`#2597 <https://github.com/dtcenter/METplus/issues/2597>`_)
* Document the process for managing labels across METplus components
(`#2739 <https://github.com/dtcenter/METplus/issues/2739>`_)


METplus Version 6.0.0 beta6 Release Notes (2024-10-18)
------------------------------------------------------

Expand Down
5 changes: 3 additions & 2 deletions internal/scripts/dev_tools/generate_release_notes.py
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ def print_banner(msg):


def print_header(repo_name, dev_name, dev_end_date):
dev_fmt = dev_name.replace('-', '').replace('beta', 'Beta ').replace('rc', 'RC ')
dev_fmt = dev_name.replace('-', ' ').replace('beta', 'Beta ').replace('rc', 'RC ')
header = f"{repo_name} Version {dev_fmt} Release Notes ({dev_end_date.strftime('%Y-%m-%d')})"
print(header)
print('-' * len(header))
Expand All @@ -66,8 +66,9 @@ def print_issues_by_category(repo_name, issues_by_category):
print()
if category != 'none':
print(f" .. dropdown:: {category}\n")
else:
elif issues:
print('COULD NOT PARSE CATEGORY FROM THESE:\n')

if issues is None:
print(' NONE')
continue
Expand Down
6 changes: 3 additions & 3 deletions internal/tests/use_cases/all_use_cases.txt
Original file line number Diff line number Diff line change
Expand Up @@ -105,10 +105,10 @@ Category: marine_and_cryosphere
5::GridStat_fcstRTOFS_obsAVISO_climHYCOM_ssh::model_applications/marine_and_cryosphere/GridStat_fcstRTOFS_obsAVISO_climHYCOM_ssh.conf:: icecover_env, py_embed
6::UserScript_fcstRTOFS_obsAOML_calcTransport::model_applications/marine_and_cryosphere/UserScript_fcstRTOFS_obsAOML_calcTransport.conf:: icecover_env, py_embed
7::PointStat_fcstGFS_obsNDBC_WaveHeight::model_applications/marine_and_cryosphere/PointStat_fcstGFS_obsNDBC_WaveHeight.conf
#X::GridStat_fcstRTOFS_obsGHRSST_climWOA_sst::model_applications/marine_and_cryosphere/GridStat_fcstRTOFS_obsGHRSST_climWOA_sst.conf:: icecover_env, py_embed
8::PointStat_fcstRTOFS_obsARGO_climoWOA23_temp::model_applications/marine_and_cryosphere/PointStat_fcstRTOFS_obsARGO_climoWOA23_temp.conf:: py_embed
9::PointStat_fcstGFS_obsASCAT_satelliteWinds::model_applications/marine_and_cryosphere/PointStat_fcstGFS_obsASCAT_satelliteWinds.conf:: icecover_env, py_embed
10::PointStat_fcstGFS_obsJASON3_satelliteAltimetry::model_applications/marine_and_cryosphere/PointStat_fcstGFS_obsJASON3_satelliteAltimetry.conf:: py_embed_base_env, py_embed
11::GridStat_fcstRTOFS_obsGHRSST_climWOA_sst::model_applications/marine_and_cryosphere/GridStat_fcstRTOFS_obsGHRSST_climWOA_sst.conf:: icecover_env, py_embed


Category: medium_range
Expand Down Expand Up @@ -167,8 +167,8 @@ Category: s2s_mjo

Category: s2s_stratosphere
0:: UserScript_fcstGFS_obsERA_StratosphereBias:: model_applications/s2s_stratosphere/UserScript_fcstGFS_obsERA_StratosphereBias.conf:: weatherregime_env,cartopy,metdataio
#X::UserScript_fcstGFS_obsERA_StratospherePolar:: model_applications/s2s_stratosphere/UserScript_fcstGFS_obsERA_StratospherePolar.conf:: weatherregime_env,cartopy,metdataio
#X::UserScript_fcstGFS_obsERA_StratosphereQBO:: model_applications/s2s_stratosphere/UserScript_fcstGFS_obsERA_StratosphereQBO.conf:: weatherregime_env,cartopy,metdataio
1::UserScript_fcstGFS_obsERA_StratospherePolar:: model_applications/s2s_stratosphere/UserScript_fcstGFS_obsERA_StratospherePolar.conf:: weatherregime_env,cartopy,metdataio
2::UserScript_fcstGFS_obsERA_StratosphereQBO:: model_applications/s2s_stratosphere/UserScript_fcstGFS_obsERA_StratosphereQBO.conf:: weatherregime_env,cartopy,metdataio


Category: short_range
Expand Down
2 changes: 1 addition & 1 deletion metplus/VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
6.0.0-rc1-dev
6.0.0-rc1
Original file line number Diff line number Diff line change
Expand Up @@ -27,9 +27,9 @@ def main():
plot.write_output_file()
end = perf_counter()
execution_time = end - start
plot.line_logger.info(f"Finished creating line plot, execution time: {execution_time} seconds")
plot.logger.info(f"Finished creating line plot, execution time: {execution_time} seconds")
except ValueError as val_er:
print(val_er)

if __name__ == "__main__":
main()
main()
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ def main():
os.remove(existing_output_file)

# Write stat file in ASCII format
stat_lines_obj: WriteStatAscii = WriteStatAscii(settings)
stat_lines_obj: WriteStatAscii = WriteStatAscii(settings, logger)
# stat_lines_obj.write_stat_ascii(file_df, parms, logger)
stat_lines_obj.write_stat_ascii(file_df, settings)

Expand Down

0 comments on commit aaa3bbe

Please sign in to comment.