-
Notifications
You must be signed in to change notification settings - Fork 278
Release procedure
David Tchepak edited this page Mar 4, 2014
·
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 config=Release target=ALL deploy generate_docs. This will build to output/release. - Test nuget package on a project using a local repository.
- Push final commit and tags to main repo.
- Push release to nuget:
nuget push (path_to_pkg). (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.