mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-04-04 07:09:14 +00:00
Use new method to generate release notes
18
Releasing.md
18
Releasing.md
@@ -36,28 +36,18 @@ Download all current translations from Transifex with the [Transifex client](htt
|
||||
git push upstream master
|
||||
```
|
||||
|
||||
### Collect included changes
|
||||
|
||||
Identify all pull requests that got merged since the last release.
|
||||
- Option 1: You can look at the [last release](https://github.com/openfoodfoundation/openfoodnetwork/releases/latest) and **use the date of the pinned commit** to [filter pull requests](https://github.com/openfoodfoundation/openfoodnetwork/pulls?utf8=%E2%9C%93&q=is%3Apr+merged%3A%3E2020-10-12T00%3A00%3A00%2B02%3A00+sort%3Aupdated-desc+base%3Amaster) putting the date and time into the filter box like this: `is:pr merged:>2020-01-16T21:37:00+01:00 sort:updated-desc base:master`.
|
||||
To get the date of the commit: `git show -s --format=%cI [COMMIT_ID]`
|
||||
- Option 2: You can list all pull requests with git and open them in your browser:
|
||||
```
|
||||
git fetch upstream
|
||||
git checkout upstream/master
|
||||
latest="$(git tag --sort="v:refname" | tail -1)"
|
||||
git log "$latest.." --merges --oneline | grep -oP 'Merge pull request #\K[0-9]+(?= from)' | while read n; do echo "https://github.com/openfoodfoundation/openfoodnetwork/pull/$n"; done | xargs firefox
|
||||
```
|
||||
**Get the release notes from each of these pull requests**. If no release notes are specified you can just copy the pull request title. We only include PRs that have been merged into `master`. Add a link to each PR with its number next to the notes, e.g. [#6383](https://github.com/openfoodfoundation/openfoodnetwork/pull/6383)
|
||||
|
||||
### Draft the release
|
||||
|
||||
Draft a [new release](https://github.com/openfoodfoundation/openfoodnetwork/releases/new?tag=v&title=v+Code+Name&body=Congrats%0A%0ADescription%0A%0A%23%23+User+facing+changes+:eyes:%0A%0A%0A%0A%23%23+Technical+changes+:wrench:%0A%0A) in the Github UI. **Base the release on the commit with the last merged PR you want to include** ('Target->Recent Commits') and not `master`. There's always a chance new PR's are merged between the draft is created and the actual release is published, so this makes the release consistent. If you take a look at the master branch in [Semaphore](https://semaphoreci.com/openfoodfoundation/openfoodnetwork-2/branches/master), you should see the Transifex commit you just made in the steps above (named "Update all locales with the latest Transifex translations").
|
||||
|
||||
Collect a list of included changes in the release description. The quickest way is to use GitHub's <kbd>Generate release notes</kbd> button, otherwise you can refer to the old [manual method](https://github.com/openfoodfoundation/openfoodnetwork/wiki/Releasing/8c147072c112e2a88d3b1d2c1350927aa86db436#collect-included-changes).
|
||||
|
||||
**Make sure the notes can be understood by humans.** List all user-facing changes first under their own headline. Then list the rest of the changes. Mention any dependencies on [ofn-install](https://github.com/openfoodfoundation/ofn-install) as well. Copy the user-facing changes to the #instance-managers Slack channel so that they can let people know.
|
||||
|
||||
A lot of releases contain only minor bug fixes and tech updates. We then increase the patch version number (1.0.x). If there are significant user-facing changes, we bump the minor version number (1.x.0). The major number is only updated for very big changes like the Spree upgrade from v1 to v2.
|
||||
|
||||
|
||||
|
||||
### Update the Github issue
|
||||
|
||||
Add a link to the **Semaphore build** for the **target commit** of the new release, and a link to the **release draft** itself into the release's Github issue so the release tester has a nice time :heart:.
|
||||
|
||||
Reference in New Issue
Block a user