Skip to content

How To: Release

l0g0sys edited this page Jun 23, 2015 · 9 revisions

Update release

The update release is most frequent kind of release. Its purpose is to simply actualize previous release in sense of bug fixing or new features being introduced.

Required steps:

  • Edit Properties\Version.resx and set ProductVersion to reflect new version.
  • Run dist-release.bat from WPFSKillTree project directory to create release package (Setup package will be created in WPFSKillTree\dist directory).
    • script can be added to External Tools... of Visual Studio with Command set to $(SolutionDir)WPFSkillTree\dist-release.bat, Initial Directory set to $(SolutionDir)WPFSkillTree and Use Output window checked.
  • In Team Explorer use Commit and Sync to push source code of release to GitHub repository.
  • On GitHub site create Release with same tag as ProductVersion is set to in Version resource file.
    • Attach released package from WPFSKillTree\dist directory.
  • Run dist-clean.bat from WPFSKillTree project directory to clean up dist work directory and Release build files.

New product release

The new product release is required when compatibility with previous release is broken and new release is supposed to be installed alongside previous release. Its purpose is to provide new mechanics introduced by huge changes in game itself, while still leaving access to the previous release.

Required steps:

  • Edit Properties\Version.resx and set AppId to new GUID in Registry Format (i.e. {xxxxxxxx-xxxx…xxx}).
    • To generate new GUID use Visual Sudio's Create GUID tool in TOOLS menu.
  • Edit Properties\Version.resx and set ProductName to new product name (e.g. PoESkillTree 2, PoESkillTree - The Awakening, etc.).
    • Don't use already released product name.
    • Don't use invalid characters for file or folder name. The ProductName is being used also as folder name.
  • Continue with steps required for Update release.

Regarding, version strings and Git tags. They should not contain underscores (_). Underscore in front of letter in Label element of AboutWindow.xml is not displayed. So pre-releases or release canditates should be tagged X.Y.Zpre1, X.Y.Zpre2 or X.Y.Zrc1 and such (no underscores and dashes).