Skip to content

How to make a release

Michael Weiser edited this page Apr 24, 2019 · 13 revisions

git

  • Resolve all issues associated with the milestone
  • Merge all pull requests associated with the milestone into master
  • Create a feature branch in a forked repo for the new release and on that branch:
    • Bump the version
    • Update the ASCII art in __init__.py with figlet :)
    • Update the change log
  • Open and merge a pull request to merge the release changes into master
  • On the main GitHub repo:
    • Create a new release branch named after the version (e.g. 1.7) in anticipation of hot fixes for that release later on
    • Tag the new state of master with the release number, e.g. v1.7
    • push the new branch: git push --all
    • push the new tag: git push --tag
  • Add the relevant change log entries to the release info on GitHub by drafting a new release as per https://help.github.com/en/articles/creating-releases, select the release's git tag as base
  • Close the milestone of the current release
  • Potentially create a new milestone for the next release

Note: Don't forget to update the PeekaooAV submodule of https://github.com/scVENUS/PeekabooAV-Installer to reference the new release.

PyPi Upload

  • Check out the release tag
  • Clean the workspace
  • Create a source distribution with setup.py sdist
  • Upload to PyPi using twine
cd /path/to/PeekabooAV/
git checkout v1.7
git clean -id
python setup.py sdist
twine upload -u peekabooav dist/*

Check your work here https://pypi.org/project/PeekabooAV/.

Note: Ensure that you have a clean workspace before building distributions, since any uncommited changes in your local workspace are included in the distribution.