Release Process for Neuroconv#
A simple to-do list for the Neuroconv release process:
Format Changelog:
Format and update the changelog.
Ensure correct formatting and add a header to indicate that the changes belong to a specific release and not upcoming ones.
Example: Format Changelog Example
Set the Correct Version for Release:
The development version (the current code on main) should be one patch version ahead of the latest PyPI release and therefore ready for the next step.
If a minor version bump is necessary, change it accordingly.
Example: Version Change Example
Perform Checks:
Ensure that no requirement files include pointers to git-based dependencies (including specific branches or commit hashes). All dependencies for a PyPI release should point to the released package versions that are available on conda-forge or PyPI. This can be done efficiently by searching for @ git in the pyproject.toml on an IDE.
Tag on GitHub:
The title and tag should be the release version.
The changelog should be copied correspondingly.
Check the hashes in the markdown to ensure they match with the format of previous releases.
Release:
GitHub tagging triggers the auto-publish.yml action on the CI, which takes care of the rest.
Post-Release: Bump Version and Update Changelog:
To comply with the one patch version ahead policy, bump the version after the release.
Update the changelog with the new version header.
Example: Post-Release Version Bump