QB64pe
QB64pe copied to clipboard
Automate release notes creation from PRs
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.