Playtest or Release Checklist - UberWaffe/OpenRA GitHub Wiki

Prepare

  • Have the patches been reviewed?

    • The default should be "no merge"; justify why your patches are worth including, which is more than just "no nits".
    • Each patch should have been tested by its author, on at least the platform they run. If the patch is fixing something platform-specific on some other platform, it must have been tested there, otherwise you're just making stuff up.
    • Check for interactions between features. Many of these have been wrong, at least historically -- build/sell sell/capture etc.
    • Check for copypasta with simian and/or eyeballs.
  • Does it build?

    • Check on both Windows and Mac/Linux.
    • There should be no warnings.
    • OpenRA.Lint should be clean, or at least no worse than at the previous tag.
  • Does it work?

    • Everything should work, in all mods that will be included -- at least no worse than the previous tag.
    • Yes, this step sucks to verify.
  • Has the Changelog been updated? Don't forget to change "Next version" to the version name!

  • If there are master server changes [or any other infrastructure changes], have those been deployed first?

    • All infrastructure changes MUST be backwards-compatible; there are various old client versions still in use, which you must not break.

Build

  • If that's all good:
    • Assuming you aliased the upstream repository with openra git fetch openra then git checkout bleed && git reset --hard openra/bleed (warning: this overwrites your own bleed branch). Check for compilation errors and do some test games.
    • Tag the commit you intend to release. git checkout openra/bleed && git tag playtest/release-yyyymmdd
    • Push the tag to OpenRA/OpenRA, and advance either the next or master branch as appropriate for the release type. git push openra playtest-yyyymmdd bleed:next or git push openra release-yyyymmdd next:master Warning: The current make version does not use the latest, but the first tag so we need an extra commit to separate last playtest and new release. Don't forget to update the branches. Travis will automatically start building and deploying the packages at GitHub releases.
    • Login to the build server with ssh-add && ssh -A [email protected] to forward your authentication to the web-server later on, too. Then cd openra-package/ and ./checkout-and-build.sh playtest/release-yyyymmdd which will automatically deploy it.

Download the package and head over to Publish on Desura. Create a new MCF file from a clean OpenRA installation, upload it and submit it for approval. See the Notes For Publishing On Desura if problems arise.

Announce