Versioning Releases

This process outlines the current process for updating a version (i.e. the assembly version number 1.x.x.x) of the NuPattern codebase.

Pre-Requisites

This process is expected to be performed by a project developer/coordinator before a new release is deployed. See Building Releases for more information.

Special permissions (and credentials) are required to sign and publish the binaries. No special permissions (or credentials) are required to update the source (without signing the binaries).

For changing the version numbers in source you are only required to have Visual Studio 2013 (and VSSDK2013) installed. But for building and signing all the required binaries you will need to have VS2010, VS2102 and VS2013 (and respective VSSDK's) installed side-by-side, and the WIX toolset in VS2013.

Versioning Process

The process below was refined in the last release, and is expected to change or vary with each release.

IMPORTANT: After following these steps and verifying the results for each release, please update this wiki page to reflect the current process.

Last Updated (and verified) for Release: 1.4.24.0

Preparation

For all versions of Visual Studio (VS2010 & VS2012 & VS2013):
  1. Uninstall all NUPATTERN extensions from Extension Manager. Recycle Visual Studio.
  2. Uninstall all NUPATTERN extensions from Extension Manager in all Experimental Instances of all versions of VS. Or run 'Reset Experimental Instance' command line tool for all versions of VS. Recycle Experimental Instance of VS for all versions of VS.

Process

  1. Run ‘Src\CleanCode.bat’
  2. Open solution ‘Src\Runtime\Runtime.vs2013.sln’
  3. Update assembly version numbers in 'Runtime.Versioning\MasterVersion.tt'
  4. Clean & Rebuild the solution.
  5. Manually Find All, and Replace all instances of the old version number, in the following files:
    • Runtime.Shell\GeneratedCode\Guidance\GuidanceWorkflow.gen.cs
    • Runtime.vs2013.sln, Runtime.vs2012.sln, Runtime.vs2010.sln file
    • Runtime.slnbldr file
    • Assemblies.dgml
    • ToolkitInfoPerf.psess file
  6. Clean & Rebuild the solution.
  7. Open solution ‘Src\Authoring\Authoring.vs2013.sln’
  8. Clean & Rebuild the solution.
  9. Find All, and Replace all instances of the old version number, in the following files:
    • GeneratedCode\Guidance\GuidanceWorkflow.gen.cs in all toolkit projects
    • Authoring.vs2013.sln, Authoring.vs2012.sln, Authoring.vs2010.sln file
    • Authoring.slnbldr
    • Assemblies.dgml
  10. Clean & Rebuild the solution.
  11. Close Visual Studio
  12. Install the NuPatternToolkitBuilder.vsix from 'Src\Binaries\12.0'
  13. Open solution ‘Src\Authoring\Authoring.vs2013.sln’
  14. In ‘Solution Builder’ tool window:
    • Select ‘Transform Templates’ on the ‘Pattern Toolkit’ and ‘Library’ elements for each of the 3 toolkits in Solution Builder.
    • Select ‘Transform Toolkit Info’ on the ‘Toolkit Info’ element of each of the toolkits in Solution Builder.
  15. Clean & Rebuild the solution.
  16. Open solution ‘Src\Authoring\Authoring.Setup.vs2013.sln’
  17. Clean & Rebuild the solution. It should fail at this point because it is missing VSIXes built for the 10.0 and 11.0 version of NuPattern.
  18. Close the solution.
  19. Find All Files in ‘Src\’ for old version number to verify that all replacements have been made in all files in the source tree.
  20. Close Visual Studio.
  21. Run ‘Src\Clean Clode.bat’
  22. Run ‘Src\ Make-All.bat’, ensure all solutions build correctly, and MSI is produced as a result.
  23. Commit the changed source files.

Return the to Building Releases page to complete the release process.

Last edited Jan 2, 2014 at 9:58 PM by jezzsa, version 5

Comments

No comments yet.