vtk-m/.gitlab/issue_templates/NewRelease.md
Kenneth Moreland 67fbcc49a3 Update the date on the license
Also add a note to the release instructions to update the license
file on each release.
2021-08-23 12:51:52 -06:00

5.0 KiB

Update VTK-m

  • Update release branch for vtk-m and create update branch
git fetch origin
git checkout release
git merge --ff-only origin/release
git submodule update --recursive --init

Create update branch

  • Update the version and date in the LICENSE.md file.
  • Create update version commit:
# Create branch
git checkout -b update-to-v@VERSION@@RC@
echo @VERSION@@RC@ > version.txt

# Create commit with the following template
# Nth is counted by the number of tags
git commit -m '@VERSION@@RC@ is our Nth official release of VTK-m.

The major changes to VTK-m from (previous release) can be found in:
  docs/changelog/@MAJOR@.@MINOR@/release-notes.md' version.txt

  • git tag -a -m 'VTKm @VERSION@@RC@' v@VERSION@@RC@ HEAD
  • Integrate changes to release branch
  • Push tags
    • git push origin v@VERSION@@RC@

Update Spack

Post-release

  • Copy the contents of docs/changelog/@MAJOR@.@MINOR@/release-notes.md to the GitLab release.
  • Tag new version of the VTK-m User Guide.
  • Post an Email Announcements VTK-m mailing list.

Annex

Generate change log

Construct a docs/changelog/@MAJOR@.@MINOR@/ folder. Construct a docs/changelog/@MAJOR@.@MINOR@/release-notes.md file

Use the following template for release-notes.md:

VTK-m N Release Notes
=======================

# Table of Contents
1. [Core](#Core)
    - Core change 1
2. [ArrayHandle](#ArrayHandle)
3. [Control Environment](#Control-Environment)
4. [Execution Environment](#Execution-Environment)
5. [Worklets and Filters](#Worklets-and-Filters)
6. [Build](#Build)
7. [Other](#Other)


# Core

## Core change 1 ##

changes in core 1

# ArrayHandle

# Control Enviornment

# Execution Environment

# Execution Environment

# Worklets and Filters

# Build


# Other

For each individual file in docs/changelog move them to the relevant release-notes section.

  • Make sure each title and entry in the table of contents use full vtkm names vtkm::cont::Field instead of Field.
  • Make sure each title and entry DOESN'T have a period at the end.
  • Make sure any sub-heading as part of the changelog is transformed from ## to ###.
  • Entries for Core are reserved for large changes that significantly improve VTK-m users life, or are major breaking changes.

Notes about update-mr

update-mr script has the following requirements to work:

  1. It needs a token to for authentication (reach @ben.boeckel for this)
  2. It needs kwrobot.release.vtkm to have developer perms in your vtk-m repo.

Lastly, update-mr can be used multiple times with different commit in the same branch.

Email Announcements

Announce the new VTK-m release on the mailing list. You will need to compute the number of merge requests, changelog entries, and maybe # of authors.

Example to compute the number of unique committers

git log --format="%an" v1.4.0..v1.5.0 | sort -u | wc -l

Example to compute the number of merge requests

git log v1.4.0..v1.5.0 | grep 'Merge | wc -l

A standard template to use is:

Hi All,

VTK-m 1.5.0 is now released, and a special thanks to everyone that has
contributed to VTK-m since our last release. The 1.5.0 release contains
over 100000 merge requests, and 100000 entries to the changelog .

Below are all the entries in the changelog, with more details at (
https://gitlab.kitware.com/vtk/vtk-m/-/tags/v@VERSION@) or in the vtkm
repository at `docs/@MAJOR@.@MINOR@/release-notes.md`

1. Core
    - Core change 1
2. ArrayHandle
3. Control Environment
4. Execution Environment
5. Worklets and Filters
6. Build
7. Other

/cc @ben.boeckel

/cc @vbolea

/label ~"priority:required"