diff --git a/RELEASE.md b/RELEASE.md new file mode 100644 index 0000000..ba5d6c1 --- /dev/null +++ b/RELEASE.md @@ -0,0 +1,58 @@ +# Release process for `yaml2ics` + +## Introduction + +Example `version` + +- 1.8.dev0 \# development version of 1.8 (release candidate 1) +- 1.8rc1 \# 1.8 release candidate 1 +- 1.8rc2.dev0 \# development version of 1.8 (release candidate 2) +- 1.8 \# 1.8 release +- 1.9.dev0 \# development version of 1.9 (release candidate 1) + +## Process + +- Update and review `CHANGELOG.md`: + + gem install github_changelog_generator + github_changelog_generator -u scientific-python -p yaml2ics --since-tag= + +- Update `version` in `pyproject.toml`. + +- Commit changes: + + git add pyproject.toml CHANGELOG.md + git commit -m 'Designate release' + +- Add the version number (e.g., [v1.2.0]{.title-ref}) as a tag in git: + + git tag -s [-u ] v -m 'signed tag' + + If you do not have a gpg key, use -u instead; it is important for + Debian packaging that the tags are annotated + +- Push the new meta-data to github: + + git push --tags origin main + + where `origin` is the name of the `github.com:scientific-python/yaml2ics` + repository + +- Review the github release page: + + https://github.com/scientific-python/yaml2ics/releases + +- Publish on PyPi: + + git clean -fxd + pip install flit + flit build + flit publish + +- Update `version` in `pyproject.toml`. + +- Commit changes: + + git add pyproject.toml + git commit -m 'Bump version' + git push origin main