Release - STARIONGROUP/COMET-IME-Community-Edition GitHub Wiki

Release

A (pre)release of a Community Edition IME desktop application installer must be created by doing these steps:

Create Release:

  • Update your local development branch to the latest commit
  • Make sure that no Pre-release SDK versions are used for final versions.
  • Make sure that versions are correct in:
    • Project Files (Csproj)
      • MinImeVersions of plugins
      • AssemblyVersions
      • FileVersions

      Please note that if AssemblyVersion and FileVersion are not upgraded, the installer decides not to overwrite an existing assembly that has the same version. If this is unintended, the IME may crash because of missing (referenced) assemblies. So update the version numbers for all plugins unless you're absolutely sure that the assembly and its referenced assemblies didn't change.

    • Installer (product.wxs and CDP4Addin.wxs)
  • Make sure that removed plugins and libraries are taken care of in the installer project. See the installer page for information on that.
  • Make sure the license.rtf file is correct. DevExpress libraries will be checked using Unit Tests, but the other (Nuget) libraries and their licenses should be checked. Also make sure copyright information is correct in license.rtf. For example 2016-20?? in the text.
  • Make sure copyright info (year) is correct in SplashScreenView.xaml and About.xaml.
  • Commit and push to Development if needed.
  • Update master branch using the following commands:
    1. git checkout master
    2. git rebase development
    3. git push
  • Unit test the master branch in Release mode.
  • Tag the commit with the new version (for example 6.1.0 or 6.2.0-RC1) in Git Extensions (don't forget to push to origin).
  • Build both installers by using Release.Bat in the root of the IME solution (for example, release.bat 9.2.0-RC5).
  • Add the version numbers to the MSI installer files (for example, rename COMETIME-CE.x64.msi to COMETIME-CE.x64-x.x.x.msi, or COMETIME-CE.x64-x.x.x-RCx.msi)
  • Test both 32 bit and 64 bit installers in a non development environment (for example using HyperV)
  • Click on the release tab of the IME Github page
  • Click the Draft new Release button
  • Fill in all information; Look at the previous release for the latest way of doing this. Use the same tag as the tagged commit (for example 6.1.0 or 6.2.0-RC1)
  • Sign the Installers with the RHEA hardware key
    • make sure you know the signing password and that the signing tool is installed
    • make sure that Signing functionality from Windows 10 SDK is installed
    • <path to SignTool>\SignTool sign /n "RHEA System" /td sha256 /fd sha256 "<Path to MSI>\COMET-CE.x64_x.y.z.msi"
    • <path to SignTool>\SignTool sign /n "RHEA System" /td sha256 /fd sha256 "<Path to MSI>\COMET-CE.x86_x.y.z.msi"
  • Upload the x86 and 64 bits versions of the installer (Files can be found in the Release folder located in the root folder of the IME solution).
  • Publish the release as Draft
  • Test the basics of the installers:
    • Installation itself
    • IME starts and all menu options load
    • Connection to a server works
    • Loading an engineeringmodel works
    • Addin is visible in Excel
    • Check if removed libraries are indeed removed after upgrading => No multiple versions of DevExpress files. Check for removed plugins.
  • If all went well, publish as Release/PreRelease.