QB64pe icon indicating copy to clipboard operation
QB64pe copied to clipboard

Automate release notes creation from PRs

Open mkilgore opened this issue 2 years ago • 2 comments

I've seen this in a few other repos, the basic idea is that we can have a GitHub workflow that generates the draft text of the next release while we're working on it, This would allow the release notes to be written and reviewed as part of the PRs, and then that text would automatically be pulled into the next release.

I think we can do this by having a separate section in the PR description designated for the release note text. You would give it first the one-line entry and then any extra information if necessary (you can see the format we use here). So a release note section provided in the PR would probably look something like this (unformatted):

#21, #164 - The [$Unstable](https://qb64phoenix.com/qb64wiki/index.php/$UNSTABLE) command was added - @mkilgore 
  - [$Unstable](https://qb64phoenix.com/qb64wiki/index.php/$UNSTABLE) allows usage of language features that are not yet finalized.
  - Features hidden behind [$Unstable](https://qb64phoenix.com/qb64wiki/index.php/$UNSTABLE) may have breaking change in new releases, unlike regular parts of the language which do not have breaking changes in new releases.

We can then have a GitHub workflow run on every PR merge which pulls that section out of the PR (if it is present) and adds it to a draft called vnext or something to that effect. When we go to make the release the release notes are already created for us and ready to go with some minor fix-up. It also makes it easier to ensure we don't miss any changes, and review the release notes before making a release.

mkilgore avatar Sep 24 '22 16:09 mkilgore