This document outlines how to publish a new weave release to our public pypi package.
-
To prepare a release, update the version number in
weave/version.py
to the next minor version. E.g.0.27.0 -> 0.28.0
-
Create a new PR with title
chore(dev): publish weave release 0.x.0
replacingx
with the new version number -
Once the PR passes all checks, verify the head of master is ready for release and annouce merge freeze to weave team while the release is being published (Either ask an admin on the weave repo to place a freeze on https://www.mergefreeze.com/ or use the mergefreeze slack app if it is set up)
-
Merge the PR in step (2), verify the frontend assets are up to date by checking all runs of the upload-frontend-assets action have completed
-
Go to the publish-pypi-release Github action and trigger a new build from the master branch, make sure
Use Test Pypi
is checked so we first publish a test package. -
Verify the new version of weave exist in test pypi. You should also run through this sample notebook (remember to update the version number to the new version you just published) to double check the new package is correct.
-
Once you are confident the test pypi package is valid. Run the same publish-pypi-release action without the
Use Test Pypi
flag with branch set asmaster
. This should generate a new package in pypi once it is complete. -
Tag the commit of the release and push the tag to Github using the following commands:
git tag -a v0.<x>.0 <sha of the release commit> -m "useful message about the new features in this release"
git push origin v0.<x>.0
- Finally, deploy weave python