Document welease.

This commit is contained in:
Martin v. Löwis 2008-02-21 12:00:38 +00:00
parent d15bc32a82
commit 27a750c61d
1 changed files with 21 additions and 6 deletions

View File

@ -57,6 +57,15 @@ How to Make A Release
streamlined procedures used to release Python 2.6 (including the streamlined procedures used to release Python 2.6 (including the
alphas and betas). alphas and betas).
We recommend that you use the welease tool, from
http://svn.python.org/projects/sandbox/trunk/welease/
It helps verifying that certain (not yet all) mechanic editing
has not been forgotten, and invokes svn and tar commands
automatically. This guide will indicate which steps are supported
by welease.
___ Impose a check-in freeze. Send a message to ___ Impose a check-in freeze. Send a message to
python-dev@python.org telling people not to make any check-ins python-dev@python.org telling people not to make any check-ins
on the tree until further notice. on the tree until further notice.
@ -104,14 +113,14 @@ How to Make A Release
Lib/idlelib/NEWS.txt has been similarly updated. Lib/idlelib/NEWS.txt has been similarly updated.
___ Make sure the release date is fully spelled out in ___ Make sure the release date is fully spelled out in
Doc/commontex/boilerplate.tex. Doc/commontex/boilerplate.tex (welease).
___ Tag and/or branch the tree for release X.YaZ ___ Tag and/or branch the tree for release X.YaZ (welease does tagging)
If you're releasing an alpha/beta/release candidate, you will If you're releasing an alpha/beta/release candidate, you will
just tag the tree. If you are releasing a final release, you just tag the tree, AFTER you made the edits below. If you are
will both tag the trunk and create the long-lived maintenance releasing a final release, you will both tag the trunk and
branch. create the long-lived maintenance branch.
All Python development happens on the trunk. While it's All Python development happens on the trunk. While it's
sometimes challenging to keep people from checking things in sometimes challenging to keep people from checking things in
@ -148,12 +157,13 @@ How to Make A Release
reflect the new version number you've just created. You'll want reflect the new version number you've just created. You'll want
to change the PY_VERSION macro, and one or several of the to change the PY_VERSION macro, and one or several of the
version subpart macros just above PY_VERSION, as appropriate. version subpart macros just above PY_VERSION, as appropriate.
(checked by welease)
___ IDLE maintains its own versioning and NEWS file (Lib/idlelib/NEWS.txt). ___ IDLE maintains its own versioning and NEWS file (Lib/idlelib/NEWS.txt).
There should be a number of entries reflecting new development, under a There should be a number of entries reflecting new development, under a
temporary header. Update that header to reflect IDLE's new version and temporary header. Update that header to reflect IDLE's new version and
release date. Then update Lib/idlelib/idlever.py to show a matching release date. Then update Lib/idlelib/idlever.py to show a matching
version. version. (checked by welease)
___ distutils also maintains its own versioning file ___ distutils also maintains its own versioning file
(Lib/distutils/__init__.py). Update this file with the Python version. (Lib/distutils/__init__.py). Update this file with the Python version.
@ -365,12 +375,14 @@ How to Make A Release
___ Time to build the source tarball. If you created a branch, be ___ Time to build the source tarball. If you created a branch, be
sure to cd to your working directory for the branch. E.g. sure to cd to your working directory for the branch. E.g.
% cd .../python-26a3 % cd .../python-26a3
(supported by welease)
___ Do a "svn update ; svn status" in this directory. ___ Do a "svn update ; svn status" in this directory.
You should not see any files. I.e. you better not have any You should not see any files. I.e. you better not have any
uncommitted changes in your working directory, but you may pick uncommitted changes in your working directory, but you may pick
up some of the expert's last minute changes. up some of the expert's last minute changes.
(checked by welease)
___ If you've seen updates to existing files, update the svn tag: ___ If you've seen updates to existing files, update the svn tag:
@ -387,6 +399,7 @@ How to Make A Release
svn+ssh://pythondev@svn.python.org/python/tags/r26 svn+ssh://pythondev@svn.python.org/python/tags/r26
This is the tag you will use below. This is the tag you will use below.
(supported by welease)
___ Change to a neutral directory, i.e. one in which you can do a ___ Change to a neutral directory, i.e. one in which you can do a
fresh, virgin, svn export of the branch. You will be creating a fresh, virgin, svn export of the branch. You will be creating a
@ -395,6 +408,7 @@ How to Make A Release
% cd ~ % cd ~
% svn export -rr26c2 -d Python-2.6c2 python % svn export -rr26c2 -d Python-2.6c2 python
(supported by welease)
___ Generate the tarballs. Note that we're not using the `z' option ___ Generate the tarballs. Note that we're not using the `z' option
on the tar command because 1) that's only supported by GNU tar on the tar command because 1) that's only supported by GNU tar
@ -403,6 +417,7 @@ How to Make A Release
% tar cf - Python-2.6c2 | gzip -9 > Python-2.6c2.tgz % tar cf - Python-2.6c2 | gzip -9 > Python-2.6c2.tgz
% tar cf - Python-2.6c2 | bzip2 -9 > Python-2.6c2.tar.bz2 % tar cf - Python-2.6c2 | bzip2 -9 > Python-2.6c2.tar.bz2
(supported by welease)
___ Calculate the MD5 checksums of the files you just created ___ Calculate the MD5 checksums of the files you just created