clarify some details

OatmealDome 2025-02-27 23:22:37 -05:00
parent 70b826cbd8
commit 0bbd061790

@ -9,22 +9,23 @@ Releases can only be created by [core developers](https://github.com/orgs/dolphi
## Details
1. Perform a translation sync with Transifex if creating a major release.
2. Create a new branch named `release-prep-YYMMp`: `git checkout -b release-prep-YYMMp <commit or tag>`
* If creating a major release, use the commit that the release should be based on.
* If creating a hotfix release, use the tag of the last release.
2. Create a new branch: `git checkout -b <branch name> <base commit or tag>`
* If creating a major release, name the branch `release-prep-YYMM` and specify the commit that the release should be based on.
* If creating a hotfix release, name the branch `release-prep-YYMMp` and base it on the tag of the last release.
3. Cherry pick any necessary commits.
4. Update the version constants in `CMake/ScmRevGen.cmake`, and commit the result.
* Set `DOLPHIN_VERSION_MAJOR` to `YYMM`.
* Set `DOLPHIN_VERSION_MINOR` to the patch number. If creating a hotfix release, use the number corresponding to the patch letter (for example, `a` is `1`, `b` is `2`, etc). Otherwise, set to `0`.
* This field must be set to a number [as CPack does not support non-numerical values in the minor or patch version fields](https://gitlab.kitware.com/cmake/cmake/-/issues/19310).
5. Push the branch to GitHub: `git push -u origin release-prep-YYMMp`.
5. Push the branch to GitHub: `git push -u origin <branch name>`.
6. Smoke test the produced builds.
* The builds can be downloaded at `https://dolphin-emu.org/download/list/release-prep-YYMM/1/`.
* Now is the time to fix any last-minute issues. Additional builds can be created by pushing new commits to GitHub.
7. Create an **annotated** tag: `git tag -a YYMMp -m "Release for some date"`
8. Push the tag to GitHub: `git push origin YYMMp`.
7. Create an **annotated** tag: `git tag -a <version> -m "Release for some date"`
8. Push the tag to GitHub: `git push origin <version>`.
9. The release builds will automatically show up on the normal download page.
10. Publish the corresponding Progress Report, if any.
* After publishing, post the link to the Progress Report onto Twitter, Mastodon, Bluesky, etc.
11. Push the new release to those on the `beta` auto-update track through the `Update Tracks` interface on the dolphin-emu.org admin panel.
11. Merge the release branch back into master: `git checkout master`, `git merge --no-ff release-prep-YYMMp`.
11. Push the new release to the `beta` update track through the `Update Tracks` interface on the dolphin-emu.org admin panel.
11. Merge the release branch back into master: `git checkout master`, `git merge --no-ff <branch name>`.
* `--no-ff` is important, as we require a merge commit.