Skip to content
David Tchepak edited this page Aug 3, 2016 · 35 revisions
  • Move unreleased changes in CHANGELOG to new version heading.
  • Ensure BreakingChanges.txt up to date and move unreleased breaking changes to new version heading.
  • Ensure Acknowledgements up to date.
  • Make final commit and tag this commit as "vx.y.z" (z changes on patches, y on new features or minor changes to behaviour, x for breaking API changes).
  • Build using: ./build.sh All mode=Release targets=ALL. This will build to output/release. (This is for Git bash shell on Windows; otherwise try build.bat)
  • Test nuget package on a project using a local repository.
  • Push final commit and tags to main repo.
  • Push release to nuget: ThirdParty\NuGet\NuGet.exe push (path to .nupkg) -Source https://www.nuget.org/api/v2/package. (Make sure nuget.exe is up-to-date first! nuget update -self)
  • Copy release ZIP from output to Source/Docs/Downloads
  • Update source/docs/index.html to point to new ZIP file to download (NSubstitute-x.x.0.0.zip)
  • Commit website changes and push to repo
  • Re-build and publish website (built to output dir).
  • Announce (mailing list, twitter, and unleash carrier pigeons to spread the joyous news). Be sure to credit people who contributed to the release!
  • ...
  • Profit!

Note: I had trouble with jekyll v0.11.2 on Windows & Ruby193 (maruku would give undefined method errors). I had to gem install jekyll --version '0.11.0', and then uninstall version 0.11.2 of jekyll using gem uninstall jekyll to get it to work. I also had to gem install liquid --version '2.2.2' and uninstall the later version of that, as per this StackOverflow answer.

Clone this wiki locally