-
Notifications
You must be signed in to change notification settings - Fork 31
Release Procedure
Dale Weiler edited this page Aug 19, 2013
·
21 revisions
- Clean up code. (See below!)
- Make sure
GMQCC_VERSION_*macros ingmqcc.hcontain the desired release version. - Make sure the documentation (manpages, code comments) are up to date.
- Check that the documentation are up to date with
./misc/check_doc.sh - Ensure Xonotic compiles and runs as intended.
- Update
CHANGESfile. - Update the website.
- Update versions in the package build files in the
distro/directory. - Undefine
GMQCC_VERSION_TYPE_DEVELingmqcc.h. - With an amd64 CPU run
make allindistro/directory. - Tag the release and push the tag.
- In a single NEW commit, bump
GMQCC_VERSION_*macros and defineGMQCC_VERSION_TYPE_DEVELingmqcc.h.
- Remove all trailing whitespace, this can be done with
make whitespace - Ensure all files have the correct permissions
- Ensure all files have a empty newline at EOF, this can be done with
make newline - Compile the code on all available systems
- Compile the code for all available architectures (x86, amd64, arm)
- Compile the code on all available compilers (gcc, tcc, clang, pathscale, msvc, and g++ to ensure the code compiles as C++ code as well.)
- Compile with
make splintto ensure there are no trivial code errors. - Compile with
make coverityand upload tohttp://scan.coverityto ensure there are no deeply manifested code errors. - Run the testsuite for all combinations of compilers, architectures and systems.
- Wait for travis-ci to return a successful result on all builds.
- Notify build script maintainers (if any) - ie. touch the -git PKGBUILDs on AUR, upload new version if the old one's orphaned or mark as outdated otherwise.
- Mention the new release to Xonotic developers
- Wait a couple days to see if Xonotic developers find any breakage, if there isn't any, release!