pypy / pypy / doc / how-to-release.rst

Making a PyPy Release

Overview

As a meta rule setting up issues in the tracker for items here may help not forgetting things. A set of todo files may also work.

Check and prioritize all issues for the release, postpone some if necessary, create new issues also as necessary. An important thing is to get the documentation into an up-to-date state!

Release Steps

  • at code freeze make a release branch using release-x.x.x in mercurial IMPORTANT: bump the pypy version number in module/sys/version.py and in module/cpyext/include/patchlevel.h, notice that the branch will capture the revision number of this change for the release; some of the next updates may be done before or after branching; make sure things are ported back to the trunk and to the branch as necessary; also update the version number in pypy/doc/conf.py, and in pypy/doc/index.rst

  • update pypy/doc/contributor.rst (and possibly LICENSE) pypy/doc/tool/makecontributor.py generates the list of contributors

  • rename pypy/doc/whatsnew_head.rst to whatsnew_VERSION.rst and create a fresh whatsnew_head.rst after the release

  • update README

  • change the tracker to have a new release tag to file bugs against

  • go to pypy/tool/release and run: force-builds.py <release branch>

  • wait for builds to complete, make sure there are no failures

  • upload binaries to https://bitbucket.org/pypy/pypy/downloads

    Following binaries should be built, however, we need more buildbots:

    JIT: windows, linux, os/x, armhf, armel no JIT: windows, linux, os/x sandbox: linux, os/x

  • write release announcement pypy/doc/release-x.y(.z).txt the release announcement should contain a direct link to the download page

  • update pypy.org (under extradoc/pypy.org), rebuild and commit

  • post announcement on morepypy.blogspot.com

  • send announcements to pypy-dev, python-list, python-announce, python-dev ...

Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.