Releasing janis is straight forward. Decide on a logical set of changes to include, this will
Janis follows the SemVer
versioning system:
- MAJOR version when you make incompatible API changes,
- MINOR version when you add functionality in a backwards-compatible manner, and
- PATCH version when you make backwards-compatible bug fixes.
Before a new release, you should update the version tag in janis/__init__.py
so the produced python package is
Before you tag, make sure you've incremented the
__version__
flag per the previous section.
You can tag your commit for release by running the following bash command:
git commit -m "Tag for v0.x.x release"
git tag -a "v0.x.x" -m "Tag message"
git push origin v0.x.x
The final statement will push the tag to Github, where Travis will automatically pick up commit, build and deploy.
You can check the build status and history on
travisci/janis
. You can also checkPyPi
to confirm the build has been released.
If your tag fails to build, you'll need to:
- Delete the tag from Github: https://github.com/PMCC-BioinformaticsCore/janis/releases/tag/vX.X.X
- Delete the tag from your local:
git tag -d 'vX.X.X'
- Retag and push per Tagging and Building
You should update the release notes in the CHANGELOG.md
where you'll need to create a ##
section with three bits of information:
- Release commit hash (eg:
bc7f8ad
) - Github link to commits comparison:
https://github.com/PMCC-BioinformaticsCore/janis/compare/$prev...$new
- Where
$prev
and$new
is your old, and release commit hash respectively.
- Where
- Release notes: a summary of changes since the last release