Maintainer Guide

Making a Release

  1. Make sure setup.py has the right version number
  2. Update NEWS file
  3. Run python3 setup.py distcheck, fix any issues and commit.
  4. Commit NEWS as "release 3.X.Y" and push
  5. Tag with: git tag -s 3.X.Y -m "release 3.X.Y"
  6. Push tag with: git push origin 3.X.Y
  7. In case of a stable release, upload to PyPI: twine upload dist/PyGObject-3.X.Y.tar.gz
  8. Commit post-release version bump to setup.py
  9. Create GNOME tarball python3 setup.py sdist_gnome
  10. Upload tarball: scp pygobject-3.X.Y.tar.xz user@master.gnome.org:
  11. Install tarball: ssh user@master.gnome.org 'ftpadmin install pygobject-3.X.Y.tar.xz'
  12. In case the release happens on a stable branch copy the NEWS changes to the master branch

Branching

Each cycle after the feature freeze, we create a stable branch so development can continue in the master branch unaffected by the freezes.

  1. Create the branch locally with: git checkout -b pygobject-3-2
  2. Push new branch: git push origin pygobject-3-2
  3. In master, update setup.py to what will be the next version number (3.3.0)