Release procedure¶
Prior to release create
new release issue. Use it as a
scratchpad for release notes. Title should be Release x.y.z
. Description should start
with short summary explaining agenda for the release. Then list all changes that will be
included in the release. Each change should be a separate bullet point starting with one
of "magic" words: Added, Changed, Deprecated, Removed, Fixed, Updated, Refactored.
On branch main
:
- Update
CHANGELOG.md
with new release notes and commit
-
Update version number in:
-
pygerber/__init__.py
pyproject.toml
then commit:
- Push changes and wait for CI to finish.
-
If CI failed, fix issues, commit and push changes. Repeat until CI passes. If any of the changes introduced may have impact of users, update
CHANGELOG.md
. -
Create a new tag:
And push it to the repository:
-
Wait for CI to finish. It should automatically publish PyPI release files and documentation update.
-
Close release issue.
-
SKIP FOR PATCH RELEASES:
Create maintenance/x.y.x
, second x
should remain in branch name, eg. for release
2.3.0
branch name should be maintenance/2.3.x