If you are a collaborator and have push access to master, these are the steps to follow to release a new version:
On your development branch, before creating your PR:
- Make sure that the version in
utils/_version.pyis updated appropriately. Rez uses semantic versioning. - Use this format to mention issue(s) that a commit has fixed. If you don't do this, the changelog gets screwed up (it won't list these fixes).
- Ensure all tests pass (run rez-selftest).
When creating your PR:
- Don't create it from your master branch - always have a branch dedicated to the issue(s) you're addressing.
- Any issues this PR addresses, that haven't already been mentioned in commits as per above, should be listed in the PR description using the same format. If you don't do this, the changelog gets screwed up (it won't list these fixes).
After PR is merged to master:
-
Run
bash tag.sh. This tags the git repo with the version inutils/_version.py. Then rungit push --tagsto push this new tag. -
Generate the new changelog entry for this version, like so:
]$ python ./release_util.py create-changelog-entryThis writes out the latest changelog entry to LATEST_CHANGELOG.md. Take this file, and add the contents to the top of CHANGELOG.md along with whatever minor formatting changes are required. If there are any problems (missing/incorrect fixed issues) fix them here. If you feel that further description would aid in understanding this PR, add it here, directly after the "Full Changelog" link.
Note that this step can be slow. Go get a coffee.
-
Commit and push the changelog update.
-
Generate the new GitHub release notes, like so:
]$ python ./release_util.py create-release-notesThen verify the notes have been created correctly - they should appear here.