-
Notifications
You must be signed in to change notification settings - Fork 977
Development: Making a Release
Quick guide to how we make releases.
-
Update the translation template file:
$ make translations_update
-
Go through the changes, and see if there is anything that looks strange, or should be adjusted:
$ git diff -I '^#' po/tigervnc.pot
-
Commit the new template file:
$ 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 [email protected]:TigerVNC/tigervnc.git master (check that everything looks sane) $ git push [email protected]: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 [email protected]:TigerVNC/tigervnc.git v1.1.90 1.2-branch (check that everything looks sane) $ git push [email protected]: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. -
Upload all the built files.
-
Grab
README.rst
from a previous release and upload an adjusted version for this new release. -
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. -
Mark the binaries as the default downloads for each platform
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 [email protected]:TigerVNC/tigervnc.git v1.14.1 1.14-branch (check that everything looks sane) $ git push [email protected]: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. -
Upload all the built files.
-
Grab
README.rst
from a previous release and upload an adjusted version for this new release. -
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.
The wiki is read-only because of malware spam that GitHub refuses to provide protection agains. Contact the maintainers directly with changes you'd like to make.