Introducing new branch scheme
In previous meetings with the VTKm developer community we have discussed the need of having a way of being able to pass HotFixes to previous releases.
The simplest way to achieve this is to introduce a new branch named "release" which only contain release commits (tagged) and HotFixes.
What we are proposing here will be something similar to this:
In this MR:
- I updated the
ReleaseProcess.md
to explain how create releases in this scheme and the rationale behind it. - I added a
new-release.md
issue template which explains step by step how to perform the release - I added a
ReleaseHotFix.md
to explain how bring a HotFix to a releases. - I added a step in the release process in which we update the Spack package
Food for discussion:
-
I included the idea of using releases candidates (RC) to ensure that the final release it has been already tested by the greater public. I wonder if this is a good thing to have or it is an overkill step for a project such as VTKm. I would like to bring this for discussing
-
So far there is no additional testing done for release commits, and that can be okay, specially if we go to the RC scheme where our actual release testing is done by users using our RC release.
On a last note:
I am also a big proponent of developing this incrementally, this can give us an initial roadmap of how we want to do things but later on through our experience dealing with this we can adjust those procedures.