When making an asyncpg release follow the below checklist.
Remove the
.dev0
suffix from__version__
inasyncpg/__init__.py
.Make a release commit:
$ git commit -a -m "asyncpg vX.Y.0"
Here, X.Y.0 is the
__version__
inasyncpg/__init__.py
.Force push into the "releases" branch on Github:
$ git push --force origin master:releases
Wait for CI to make the release build. If there are errors, investigate, fix and repeat steps 2 through 4.
Prepare the release changelog by cleaning and categorizing the output of
.github/release_log.py
. Look at previous releases for examples of changelog formatting:$ .github/release_log.py <previously-released-version-tag>
Make an annotated, signed git tag and use the changelog as the tag annotation:
$ git tag -s vX.Y.0 <paste changelog>
Push the release commit and the new tag to master on Github:
$ git push --follow-tags
Wait for CI to publish the build to PyPI.
Edit the release on Github and paste the same content you used for the tag annotation (Github treats tag annotations as plain text, rather than Markdown.)
Open master for development by bumping the minor component of
__version__
inasyncpg/__init__.py
and appending the.dev0
suffix.