Page:
Release Process
Pages
About Dolphin's CI Bot
Auto Update Internals
Buildbot Overview
Building for Linux
Building for OpenBSD
Building for Windows
Building for macOS
FIFO Player Overview
GameCube Action Replay Code Types (Simple Version)
GameCube Action Replay Code Types
Home
IOS Overview
Infrastructure Access
Post Processing Shaders
Release Process
Running Unit Tests
User and Data Folders
Zelda Microcode
19
Release Process
Amphitryon0 edited this page 2024-12-08 20:31:56 -06:00
Table of Contents
Introduction
Creating a Dolphin Release does require some steps, but if you know what to do it's fairly straightforward.
Releases are versioned as follows: YYMM
, where YY
is the current year, and MM
is the current month. Hotfix releases are versioned as follows: YYMMp
, where p
is the hotfix letter. For example, 2407
would be a release made in July 2024, and 2407a
would be the first hotfix for that release.
Releases can only be created by core developers.
Details
- Perform a translation sync with Transifex if creating a major release.
- 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.
- Cherry pick any necessary commits.
- Update the version constants in
CMake/ScmRevGen.cmake
, and commit the result.- Set
DOLPHIN_VERSION_MAJOR
toYYMM
. - Set
DOLPHIN_VERSION_MINOR
to the patch number. If creating a hotfix release, use the number corresponding to the patch letter (for example,a
is1
,b
is2
, etc). Otherwise, set to0
.- This field must be set to a number as CPack does not support non-numerical values in the minor or patch version fields.
- Set
- Push the branch to GitHub:
git push -u origin release-prep-YYMMp
. - 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.
- The builds can be downloaded at
- Create an annotated tag:
git tag -a YYMMp -m "Release for some date"
- Push the tag to GitHub:
git push origin YYMMp
. - The release builds will automatically show up on the normal download page.
- Publish the corresponding Progress Report, if any.
- After publishing, post the link to the Progress Report onto Twitter, Mastodon, Bluesky, etc.
- Push the new release to those on the
beta
auto-update track through theUpdate Tracks
interface on the dolphin-emu.org admin panel. - Merge the release branch back into master:
git checkout master
,git merge --no-ff release-prep-YYMMp
.
-
Building
-
Feature explanations
-
Dolphin Infrastructure
-
Reference
Homepage | Project Site | Forums | Wiki | Issue Tracker | Coding Style | Transifex Page