Skip to content
Uche edited this page May 3, 2022 · 6 revisions

Versa developer notes

Preparation

You need Github & PyPI update access.

Release

First issue a pull request on GitHub to merge develop branch to master. You can do this by

  • Make sure you're on Branch: master, then "New pull request"
  • You might be able to just use one of the sample PR links provided
  • Change the head fork to compare:develop
  • Click "Create pull request", fill the form & address any conflicts
  • Click "Merge pull request" then "Confirm merge"
  • Do not delete the develop branch

Then on cmdline:

vi README.md    #Update as needed

# Upload to PyPI
# https://pypa-build.readthedocs.io/en/stable/
python -m build #Then check the contents of dist folder
twine upload dist/*

Note: You can test using twine upload --repository-url https://test.pypi.org/legacy/ dist/*

Create release online. Use the broad principles of keepachangelog.com.

Bump version for next release. On cmdline:

git pull
vi lib/version.py
git commit -am "Bump version"
git push

One-time step per developer: Preparation for pushing to PyPI

You'll need twine:

pip install twine

For use of testpypi have a set up of index-servers in ~/.pypirc

[distutils]
index-servers=
    pypi
    testpypi

[pypi]
username = <your user name goes here>
password = <your live password optionally goes here>

[testpypi]
repository = https://testpypi.python.org/pypi
username = <your user name goes here>
password = <your test password goes here>

Obsolete release tagging steps

#Select tag name, update according to released version
#Tag release
export RELEASETAG=v3.0.0b5
git tag -a $RELEASETAG -m "Release of version $RELEASETAG" #Must be double, not single quotes
#Push the tag to Github
git push origin $RELEASETAG
#Hmm how about git push --tags origin master ?

Note: if you make a mistake tagging you can undo it using:

git tag -d $RELEASETAG
git push origin ":refs/tags/$RELEASETAG"

Clone this wiki locally