-
Notifications
You must be signed in to change notification settings - Fork 11
Release preparation checklist
This is a checklist which must be followed when preparing a new OF release.
All the steps must be completed to successfully publish a release, so if you are currently prepare a release, go through them sequentially.
(bullet list instead of numbers until it is complete. Please help in fleshing this out)
-
Make sure your local repo is in sync with current upstream OF.
-
Decide which version number the release should have (The versioning scheme will probably change soon).
-
Make sure there are no more open issues in the milestone for the release in question. If there are any issues remaining, and they are not to be included in the upcoming release, push them back to the next milestone, or ask the issues section leader to do so. Either way, the milestone must be completed before proceeding.
-
Compile a changelog. Look at/ask for a list of merged PRs since the last release tag when doing this - the policy is that any relevant changes enter the codebase via PRs, so this is much easier and higher-level than wading through commit logs. Add the changelog in
OF/changes.txt
, commit todevelop
. (Christoph: I have a script for that, I hope I can automate it soon-ish, for now I'll send the list over the mailing list) -
Make sure the version number defines in
ofConstants.h
are updated! If needed, change them, commit todevelop
. Note: this should be the last commit for each release. -
Merge
develop
intomaster
! -
(Testing procedure to make sure everything compiles. If stuff fails, fix it in
develop
, and merge intomaster
) Note: call to dev list to ask for people to test across their different platforms / compilers. -
Check out
master
. Take down the last/current commit SHA, this will be the release commit, and it must not be changed afterwards! -
Make sure you're at the release commit (i.e. on the
master
branch). Create a tag at the release commit, containing only the version number, e.g.git tag 0073
-
Push
master
anddevelop
to the OF repo, using the--tags
option to also push the tag you just created. -
Site: Generate the packages (Arturo - can we have a non-ssh way to do this?)
-
Site: Change the version number of the current release on the OF Site at: https://github.com/openframeworks/ofSite/blob/master/_version.py
-
Write an announcement mail to the developer mailing list, listing the version number, release commit and date, relevant changes.
-
(Publish to twitter etc.?)