Maintainer Guide

Making a Release

  1. Make sure has the right version number

  2. Update NEWS file

  3. Run python3 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

  9. Create GNOME tarball python3 sdist_gnome

  10. Upload tarball: scp pygobject-3.X.Y.tar.xz

  11. Install tarball: ssh '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


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 to what will be the next version number (3.3.0)