From 07cbecb73b6ec959ffbd549e9b19d6805ca80e57 Mon Sep 17 00:00:00 2001 From: Barry Warsaw Date: Fri, 5 Dec 2008 23:33:03 +0000 Subject: [PATCH] Updates. --- pep-0101.txt | 57 ++++++++++++++++++++++++++-------------------------- 1 file changed, 29 insertions(+), 28 deletions(-) diff --git a/pep-0101.txt b/pep-0101.txt index 0b07fa392..5928f89f4 100644 --- a/pep-0101.txt +++ b/pep-0101.txt @@ -50,6 +50,10 @@ How to Make A Release BEFORE A FINAL RELEASE. This will give the Experts enough time to do their bits before the announcement goes out. + In any case, the RM MUST wait for the "green light" from the + following experts before updating the web pages and sending the + announcement: WE, DE + XXX: We should include a dependency graph to illustrate the steps that can be taken in parallel, or those that depend on other steps. @@ -138,8 +142,6 @@ How to Make A Release % svn co \ svn+ssh://pythondev@svn.python.org/python/branches/release26-maint - ___ cd release26-maint # cd into the branch directory. - ___ Set the original trunk up to be the next release. % .../sandbox/release/release.py --bump 2.7a0 @@ -163,11 +165,13 @@ How to Make A Release ___ Update the version number in configure.in and re-run autoconf. ___ Update the version numbers for the Windows builds in PC/ and - PCbuild/, which have references to python26. + PCbuild/, which have references to python26. % find PC/ PCbuild/ \( -type f -and -not -wholename '*/.svn/*' \) | xargs sed -i 's/python26/python27/g' % svn mv PC/os2emx/python26.def PC/os2emx/python27.def + ___ cd release26-maint # cd into the branch directory. + ___ Regenerate Lib/pydoc-topics.py @@ -205,7 +209,7 @@ How to Make A Release contains what purports to be an HTML-ized copy of the LICENSE file from the distribution. BROKEN - ___ Check with the IDLE maintainer to be sure that + ___ Check with the IE (if there is one ) to be sure that Lib/idlelib/NEWS.txt has been similarly updated. ___ For a final release, edit the first paragraph of @@ -218,10 +222,14 @@ How to Make A Release .../sandbox/release/release.py --tag X.YaZ - ___ Send an email to the Experts so that they can build the binaries. + ___ STOP STOP STOP STOP STOP STOP STOP STOP - For a final release, the RM may block at this point waiting for - confirmation from the Experts. + At this point you must receive the "green light" from other experts in + order to create the release. There are things you can do while you wait + though, so keep reading until you hit the next STOP. + + ___ Forward the commit message that created the tag to python-committers and + ask that the experts build the binaries. Currently, this is only the WE. ___ XXX The WE builds the Windows helpfile, using (in Doc/) either @@ -244,7 +252,7 @@ How to Make A Release and AMD64). He has one checkout tree per target architecture, and builds the pcbuild.sln project for the appropriate architecture. He then edits Tools/msi/config.py to update - full_current_version, sets snapshot to False and runs msi.py with + full_current_version, sets snapshot to False and runs msi.py with ActivePython 2.5 or Python 2.5 with pywin32. For that to work, the following prerequisites must be met: @@ -274,7 +282,8 @@ How to Make A Release changes in your working directory, but you may pick up some of the expert's last minute changes. - ___ If you've seen updates to existing files, update the branches. + ___ If you've seen updates to existing files and you want these to make it + into the release, update the branches. ___ Delete the old tag branch and re-tag the tree ___ Delete the maintenance branch and re-branch the trunk. @@ -291,9 +300,9 @@ How to Make A Release ___ scp the files to your home directory on dinsdale.python.org. While you're waiting for the files to finish uploading, you can continue - on with the remaining tasks. You can also ask folks on #python-dev to - download the files as they finish uploading so that they can test them - on their platforms as well. + on with the remaining tasks. You can also ask folks on #python-dev + and/or python-committers to download the files as they finish uploading + so that they can test them on their platforms as well. ___ Now you want to perform the very important step of checking the tarball you just created, to make sure a completely clean, @@ -460,6 +469,13 @@ How to Make A Release fuzzy bit because not much can be automated. You can use an earlier announcement as a template, but edit it for content! + ___ STOP STOP STOP STOP STOP STOP STOP STOP + + ___ Have you gotten the green light from the WE? + + ___ Have you gotten the green light from the DE? + + ___ Once the announcement is ready, send it to the following addresses: @@ -529,7 +545,7 @@ How to Make A Release ___ Send email to python-committers informing them that the branch has been unfrozen. - ___ Update the release PEP (e.g. 361) with the release dates. + ___ Update any release PEPs (e.g. 361) with the release dates. ___ In the tracker at http://bugs.python.org, flip all the deferred blocker issues back to release blocker for the next release. @@ -550,21 +566,6 @@ What Next? You've just made a Python release! -Final Release Notes - - The Final release of any major release, e.g. Python 2.5 final, has - special requirements, specifically because it will be one of the - longest lived releases (i.e. betas don't last more than a couple - of weeks, but final releases can last for years!). - - For this reason we want to have a higher coordination between the - three major releases: Windows, Mac, and source. So we add this - extra step to the release process for a final release: - - ___ Hold up the final release until the Experts approve, or until we - lose patience . - - Windows Notes Windows has a MSI installer, various flavors of Windows have