[pypy-commit] pypy default: document the steps I did to create the release branches

antocuni pypy.commits at gmail.com
Fri Jan 25 10:25:56 EST 2019


Author: Antonio Cuni <anto.cuni at gmail.com>
Branch: 
Changeset: r95726:c42e8df4ef8c
Date: 2019-01-25 16:25 +0100
http://bitbucket.org/pypy/pypy/changeset/c42e8df4ef8c/

Log:	document the steps I did to create the release branches

diff --git a/pypy/doc/how-to-release.rst b/pypy/doc/how-to-release.rst
--- a/pypy/doc/how-to-release.rst
+++ b/pypy/doc/how-to-release.rst
@@ -16,9 +16,6 @@
 How to Create 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.
 
@@ -28,17 +25,54 @@
 
 
 Release Steps
--------------
+++++++++++++++
 
-* If needed, make a release branch
-* Bump the
-  pypy version number in module/sys/version.py and in
-  module/cpyext/include/patchlevel.h and in doc/conf.py. The branch
-  will capture the revision number of this change for the release.
+Make the release branch
+------------------------
 
-  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.
+This is needed only in case you are doing a new major version; if not, you can
+probably reuse the existing release branch.
+
+We want to be able to freely merge default into the branch and vice-versa;
+thus we need to do a complicate dance to avoid to patch the version number
+when we do a merge::
+
+  $ hg up -r default
+  $ # edit the version to e.g. 7.0.0-final
+  $ hg ci
+  $ hg branch release-pypy2.7-7.x && hg ci
+  $ hg up -r default
+  $ # edit the version to 7.1.0-alpha0
+  $ hg ci
+  $ hg up -r release-pypy2.7-7.x
+  $ hg merge default
+  $ # edit the version to AGAIN 7.0.0-final
+  $ hg ci
+
+Then, we need to do the same for the 3.x branch::
+
+  $ hg up -r py3.5
+  $ hg merge default # this brings the version fo 7.1.0-alpha0
+  $ hg branch release-pypy3.5-7.x
+  $ # edit the version to 7.0.0-final
+  $ hg ci
+  $ hg up -r py3.5
+  $ hg merge release-pypy3.5-7.x
+  $ # edit the version to 7.1.0-alpha0
+  $ hg ci
+
+To change the version, you need to edit three files:
+
+  - ``module/sys/version.py``
+
+  - ``module/cpyext/include/patchlevel.h``
+
+  - ``doc/conf.py``
+
+
+Other steps
+-----------
+
 
 * Make sure the RPython builds on the buildbot pass with no failures
 


More information about the pypy-commit mailing list