Contributors should create a new branch from the master
branch for any new
features or bug fixes
Once the changes are complete:
- Write a good commit message, including a body
- Add your changes to [CHANGELOG.md]
- Increment the appropriate version in [pyproject.toml]
- Open a pull-request, have it reviewed
- Merge the branch back into
master
When it is time to release the version, checkout master
and create a new
branch named release/<version>
without the patch number. For example, release/0.29
Do not merge the branch back into master
Create & push a tag on the last commit in the release/<version>
branch
Follow the above process, but check out the specific release/<version>
branch
that requires the patch, instead of master
You will still need to create a new branch from this release branch for the
patch, and open a pull-request to merge onto the release/<version>
branch
that you checked out
If a security patch is required, apply the same patch to the last 5 minor versions by checking out each release branch
To be determined, no schedule as yet. Realistically, after there is a significant batch of changes that have been tested in our internal environment for some time and seem stable
If development picks up and many changes are backed up, we will set a regular release cadence
- Make sure you're working off the latest
git checkout master git pull
- Create a new branch in the format
<username>/<summary>
git checkout -b bobsmith/my_changes
- Add changes to the branch
- Open a pull-request and merge the branch onto
master
- Create a release branch and push it to the repo
git checkout -b release/1.2 git push -u origin release/1.2
- Trigger the upload to PyPI
git tag 1.2 git push --tags
- Create a patch branch
git checkout release/1.2 git checkout -b patch/1.2.3
- Add changes to the branch
- Open a pull-request and merge the
patch/1.2.3
ontorelease/1.2
- Trigger the upload to PyPI
git tag 1.2.3 git push --tags
- Versioning: Follow semver for naming your release and patch versions
- Documentation: Update any relevant documentation in sovereign-docs