Release Process
Regular Releases
To release a new version of HERMES when a new set of features and/or fixes have been merged, execute the following steps:
Adjust the version number in
pyproject.toml
andCITATION.cff
as necessary (major, minor or patch release). Please create a branchrelease/v<version>
and merge it in a PR - don’t just push todevelop
. After merging, delete the “release” branch.To edit the version in
pyproject.toml
, there are two ways:Manually edit the file with an editor.
Use
poetry version <rule>
. See also Poetry Docs
Create a pull request from
develop
tomain
.Check if all the CI pipelines for that PR succeed.
Let the named maintainer (see GOVERNANCE.md) merge the PR into
main
.Create a new release by using the Github UI.
Choose to create a new tag with the format
v<version number>
.Target branch is
main
.The release title will be set to the tag name, keep as is.
A description should be added, giving a very brief summary of the contained changes.
Publish the release.
Note: this will also ensure usage of annotated tags, making Software Heritage archive the release.
On
develop
, update the version inpyproject.toml
to<major>.<minor+1>.0.dev0
in another pull request. To edit the version, you can use two ways:Manually edit the file with an editor.
Use
poetry version "<major>.<minor+1>.0.dev0"