[[!meta title="Releasing NetSurf"]] [[!meta author="VincentSanders"]] [[!meta date="2020-05-23T10:40:07Z"]] # Release process for NetSurf ensure you are at the commit from which you want to create the release git branch -vv check the resources for the frontends you are releasing are up to date: - Fatmessages copyright year resources/FatMessages - credits file copyright years (at a minimum) resources/en/credits.html resources/it/credits.html resources/nl/credits.html - licence file copyright years (at a minimum) resources/en/licence.html resources/it/licence.html resources/nl/licence.html - amiga readme copyright files frontends/amiga/pkg/netsurf.readme frontends/amiga/pkg/netsurf\_os3.readme - windows frontend installer windows/res/installer.nsi Ensure the ca-bundle is updated https://curl.haxx.se/docs/caextract.html create a branch `releasing/` and switch to it git branch releasing/3.11 git checkout releasing/3.11 update desktop/version.c to something like #include "testament.h" const char * const netsurf_version = "3.11 (25th April 2016)"; const int netsurf_version_major = 3; const int netsurf_version_minor = 11; update frontends/amiga/version.c along the same lines #define NETSURF_VERSION_MAJOR "3" #define NETSURF_VERSION_MINOR_EXTERNAL "11" commit to the branch git commit -m 'Update version files for release' once you are sure everything is correct and committed tag the branch for release git tag -s -m 'Official Release' release/ Next do a dry run push git push -n --tags ensure this shown the correct repo and the release tag something like [gitano] Welcome to the NetSurf Gitano instance. To ssh://nsgit@git.netsurf-browser.org/netsurf.git * [new tag] release/3.11 -> release/3.11 Next the branch must be merged back to master. git checkout master git merge -s ours heads/releasing/3.11 Then edit `desktop/version.c` , `frontends/amiga/version.c` and `utils/jenkins-build.sh` ready for the next release cycle git add desktop/version.c frontends/amiga/version.c utils/jenkins-build.sh git commit -m 'Update version for next development cycle' Remove releasing branch git branch -d releasing/3.11 Deleted branch releasing/3.11 (was 66fe825c8). finally push master git push origin master If that verifies as correct git push --tags and the release tag is pushed, too late now so be careful and check! Please do ensure you *thoroughly* check your work at each step as mistakes are hard to fix once pushed.