This commit is contained in:
Barry Warsaw 2008-12-05 23:33:03 +00:00
parent 4623de7c51
commit 07cbecb73b
1 changed files with 29 additions and 28 deletions

View File

@ -50,6 +50,10 @@ How to Make A Release
BEFORE A FINAL RELEASE. This will give the Experts enough time to BEFORE A FINAL RELEASE. This will give the Experts enough time to
do their bits before the announcement goes out. 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 XXX: We should include a dependency graph to illustrate the steps
that can be taken in parallel, or those that depend on other that can be taken in parallel, or those that depend on other
steps. steps.
@ -138,8 +142,6 @@ How to Make A Release
% svn co \ % svn co \
svn+ssh://pythondev@svn.python.org/python/branches/release26-maint 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. ___ Set the original trunk up to be the next release.
% .../sandbox/release/release.py --bump 2.7a0 % .../sandbox/release/release.py --bump 2.7a0
@ -168,6 +170,8 @@ How to Make A Release
% find PC/ PCbuild/ \( -type f -and -not -wholename '*/.svn/*' \) | xargs sed -i 's/python26/python27/g' % 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 % svn mv PC/os2emx/python26.def PC/os2emx/python27.def
___ cd release26-maint # cd into the branch directory.
___ Regenerate Lib/pydoc-topics.py ___ 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 contains what purports to be an HTML-ized copy of the LICENSE
file from the distribution. BROKEN file from the distribution. BROKEN
___ Check with the IDLE maintainer to be sure that ___ Check with the IE (if there is one <wink>) to be sure that
Lib/idlelib/NEWS.txt has been similarly updated. Lib/idlelib/NEWS.txt has been similarly updated.
___ For a final release, edit the first paragraph of ___ 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 .../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 At this point you must receive the "green light" from other experts in
confirmation from the Experts. 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 ___ XXX The WE builds the Windows helpfile, using (in Doc/) either
@ -274,7 +282,8 @@ How to Make A Release
changes in your working directory, but you may pick up some of the changes in your working directory, but you may pick up some of the
expert's last minute changes. 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 old tag branch and re-tag the tree
___ Delete the maintenance branch and re-branch the trunk. ___ 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. ___ scp the files to your home directory on dinsdale.python.org.
While you're waiting for the files to finish uploading, you can continue 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 on with the remaining tasks. You can also ask folks on #python-dev
download the files as they finish uploading so that they can test them and/or python-committers to download the files as they finish uploading
on their platforms as well. so that they can test them on their platforms as well.
___ Now you want to perform the very important step of checking the ___ Now you want to perform the very important step of checking the
tarball you just created, to make sure a completely clean, 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 fuzzy bit because not much can be automated. You can use an earlier
announcement as a template, but edit it for content! 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 ___ Once the announcement is ready, send it to the following
addresses: addresses:
@ -529,7 +545,7 @@ How to Make A Release
___ Send email to python-committers informing them that the branch has been ___ Send email to python-committers informing them that the branch has been
unfrozen. 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 ___ In the tracker at http://bugs.python.org, flip all the deferred blocker
issues back to release blocker for the next release. issues back to release blocker for the next release.
@ -550,21 +566,6 @@ What Next?
You've just made a Python release! 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 <wink>.
Windows Notes Windows Notes
Windows has a MSI installer, various flavors of Windows have Windows has a MSI installer, various flavors of Windows have