- Open a branch for the release
git checkout -b releases/1.0.0rc1
- Update
CHANGELOG.md
with the most recent changes - Bump the version using
bump2version
:-
Dry run first by running:
bumpversion --dry-run --verbose --new-version <desired-version> <part>
Some examples:
- Release candidates:
--new-version 0.10.2rc1 num
- Alpha releases:
--new-version 0.10.2a1 num
- Patch releases:
--new-version 0.10.2.1 patch
- Minor releases:
--new-version 0.11.0.1 minor
- Major releases:
--new-version 1.0.0.1 major
- Release candidates:
-
Actually modify the files, tag and commit to git:
bumpversion --tag --commit --new-version <desired-version> <part>
-
Push change to the origin:
git push origin git push origin --tags
-
- remove existing source distribution:
rm -fr dist/*
- Build source distribution:
python setup.py sdist bdist_wheel
- Deploy to Test PyPi:
twine upload -r testpypi dist/*
- Verity the library at https://test.pypi.org/project/dbt-teradata/.
- Deploy to PyPi:
twine upload dist/*
- Verify at https://pypi.org/project/dbt-teradata/
PyPi recognizes pre-release versioning conventions and will label "pre-releases" as-such.
- Click the Create a new release link on the project homepage in GitHub
- Type
v{semantic_version}
as the "tag version" (e.g.,v0.18.0rc2
) - Leave the "target" as
main
- Type
dbt-teradata {semantic_version}
as the "release title" (e.g.dbt-teradata 0.18.0rc2
) - For pre-releases:
- leave the description blank
- Tick the "this is a pre-release" checkbox
- Click the "publish release" button