-
Notifications
You must be signed in to change notification settings - Fork 958
Development: Making a Release
Quick guide to how we make releases.
-
Update the translation template file:
$ make translations_update $ git commit -m "Update translation template file" po/tigervnc.pot
-
Create the release branch:
$ git branch 1.2-branch master
-
Check out the master branch:
$ git checkout master
-
Update the version number in these files:
CMakeLists.txt
java/CMakeLists.txt
unix/xserver/hw/vnc/xvnc.c
If the release is 1.2.0 then the master branch should have 1.2.80 as the version number.
-
Commit the version change:
$ git commit -m "Change development version to 1.2.80" \ CMakeLists.txt java/CMakeLists.txt unix/xserver/hw/vnc/xvnc.c
-
Push the master branch to GitHub:
$ git push --dry-run git@github.com:TigerVNC/tigervnc.git master (check that everything looks sane) $ git push git@github.com:TigerVNC/tigervnc.git master
-
Check out the release branch:
$ git checkout 1.2-branch
-
Update the version number in these files:
CMakeLists.txt
java/CMakeLists.txt
unix/xserver/hw/vnc/xvnc.c
-
Commit the version change:
$ git commit -m "TigerVNC 1.1.90 (1.2.0 beta)" \ CMakeLists.txt java/CMakeLists.txt unix/xserver/hw/vnc/xvnc.c
-
Tag the beta:
$ git tag -a -m "TigerVNC 1.1.90 (1.2.0 beta)" v1.1.90 1.2-branch
-
Push everything to GitHub:
$ git push --dry-run git@github.com:TigerVNC/tigervnc.git v1.1.90 1.2-branch (check that everything looks sane) $ git push git@github.com:TigerVNC/tigervnc.git v1.1.90 1.2-branch
-
Create a build (only Brian can do this right now)
-
Create a release entry on SourceForge. Use the
beta
folder. -
Fill out the GitHub release using this template as a base:
A beta of TigerVNC 1.2.0 is now available. Lots of changes have been made since the last release, but the highlights are: - Something - Something else - Something more Binaries are available from SourceForge: https://sourceforge.net/projects/tigervnc/files/beta/1.2beta Regards The TigerVNC Developers
-
Use the same template as above and send an annoucement to the
tigervnc-announce
mailing list. -
Inform the translation project that a new release needs translation.
This follows the same steps as the beta, except for these changes:
-
Don't inform the translation project about the new release.
-
Use the simple "TigerVNC 1.2.0" as the version commit and tag message.
-
Update the HTML version of the man pages on the main web page. You can generate them using groff:
$ groff -mandoc -Thtml -P-l Xvnc.man > Xvnc.html
-
Use the
stable
folder on SourceForge.
No beta is done for bug fix releases, and commits should be added to the already existing release branch (e.g. 1.14-branch when creating bug fix release 1.14.1). See instructions below:
-
Check out the release branch:
$ git checkout 1.14-branch
-
Cherry-pick the commits that should be included in the new release. Remember to use
git cherry-pick -x
to get a reference to the original commit.- A tip is to push a small number of commits at a time, to simplify troubleshooting if the GitHub checks do not pass.
-
Update the version number in these files:
CMakeLists.txt
java/CMakeLists.txt
unix/xserver/hw/vnc/xvnc.c
-
Commit the version change:
$ git commit -m "TigerVNC 1.14.1" \ CMakeLists.txt java/CMakeLists.txt unix/xserver/hw/vnc/xvnc.c
-
Tag the beta:
$ git tag -a -m "TigerVNC 1.14.1" v1.14.1 1.14-branch
-
Push everything to GitHub:
$ git push --dry-run git@github.com:TigerVNC/tigervnc.git v1.14.1 1.14-branch (check that everything looks sane) $ git push git@github.com:TigerVNC/tigervnc.git v1.14.1 1.14-branch
-
Create a build (only Brian can do this right now)
-
Create a release entry on SourceForge. Use the
stable
folder. -
Update the HTML version of the man pages on the main web page. You can generate them using groff:
$ groff -mandoc -Thtml -P-l Xvnc.man > Xvnc.html
-
Fill out the GitHub release using this template as a base:
The bugfix release TigerVNC 1.14.1 is now available. This release fixes a number of regressions, the most prominent being: - Something - Something else - Something more Binaries are available from SourceForge: https://sourceforge.net/projects/tigervnc/files/stable/1.14.1 Regards The TigerVNC Developers
-
Use the same template as above and send an announcement to the
tigervnc-announce
mailing list.