Document some things to be done on windows, from the 2.3.1 release experience.

Replace Tim with Thomas everywhere ;-).
This commit is contained in:
Thomas Heller 2003-09-24 10:55:43 +00:00
parent 0876789232
commit c884456428
1 changed files with 51 additions and 27 deletions

View File

@ -57,9 +57,9 @@ How to Make A Release
___ Put a freeze on check ins into the maintenance branch. At this
point, nobody except the RM should make any commits to the branch
(or his duly assigned agents, i.e. Guido the BDFL, Fred Drake for
documentation, or Tim Peters for Windows). If the RM screwed up
documentation, or Thomas Heller for Windows). If the RM screwed up
and some desperate last minute change to the branch is
necessary, it can mean extra work for Fred and Tim. So try to
necessary, it can mean extra work for Fred and Thomas. So try to
avoid this!
___ On the branch, change Include/patchlevel.h in two places, to
@ -91,8 +91,24 @@ How to Make A Release
___ When the year changes, copyright legends need to be updated in
many places, including the README and LICENSE files.
___ For the Windows build, additional files have to be updated.
PC/python_nt.rc sets up the DLL version resource for Windows
(displayed when you right-click on the DLL and select
Properties).
PCBuild/BUILDno.txt contains the Windows build number, see the
instructions in this file how to change it. Saving the project
file PCBuild/pythoncore.dsp results in a change to
PCBuild/pythoncore.dsp as well.
PCbuild/python20.wse sets up the Windows installer version
resource (displayed when you right-click on the installer .exe
and select Properties), and also contains the Python version
number.
___ After starting the process, the most important thing to do next
is to update the Misc/NEWS file. Tim will need this in order to
is to update the Misc/NEWS file. Thomas will need this in order to
do the Windows release and he likes to stay up late. This step
can be pretty tedious, so it's best to get to it immediately
after making the branch, or even before you've made the branch.
@ -107,7 +123,7 @@ How to Make A Release
Note that you /hope/ that as developers add new features to the
trunk, they've updated the NEWS file accordingly. You can't be
positive, so double check. If you're a Unix weenie, it helps to
verify with Tim Peters about changes on Windows, and Jack Jansen
verify with Thomas about changes on Windows, and Jack Jansen
about changes on the Mac.
This command should help you (but substitute the correct -r tag!):
@ -122,9 +138,10 @@ How to Make A Release
to forget to update the release date in this file!
___ Once the release is underway, Fred Drake needs to create the
HTML from the documentation. He does this and uploads the file to
www.python.org. Then he tells Tim Peters and Sean Reifschneider
HTML from the documentation. He does this and uploads the file
to www.python.org. Then he tells Thomas and Sean Reifschneider
where this file is.
This may generate some last minute changes on the branch. Once
Fred is done, there can be no further checkins on the branch in
the Doc/ directory -- not even by the RM. For final releases,
@ -136,17 +153,26 @@ How to Make A Release
the branch to the trunk during the cleaning up phase.
Basically, if it's in Doc/ Fred will take care of it.
___ Tim Peters grabs the HTML and uses this to build the Windows
installer, Sean Reifschneider grabs the HTML and uses this to
build the Linux RPMs.
___ Thomas grabs the HTML to build the Windows helpfile.
The HTML files are unpacked into a new src/html directory, and
runs this command to create the project files for MS HTML
Workshop:
___ Tim performs his Windows magic, generating an installer
executable. He uploads this file to python.org. He then sends
the RM a notice which includes the location and MD5 checksum of
the Windows executable.
% python ..\Doc\tools\prechm.py -v 2.3 python23
Note that Tim's creation of the Windows executable may generate
a few more commits on the branch. Tim will be responsible for
HTML Workshop is then fired up on the created python23.hhp file,
finally resulting in an python23.chm file.
___ Thomas compiles everything with MSVC 6.0, and moves the
python23.chm file into the src/chm directory. The installer
executable is then generated with Wise Installation System.
He uploads this file to the starship. He then sends the RM a
notice which includes the location and MD5 checksum of the
Windows executable.
Note that Thomas's creation of the Windows executable may generate
a few more commits on the branch. Thomas will be responsible for
merging Windows-specific changes from trunk to branch, and from
branch to trunk.
@ -165,7 +191,7 @@ How to Make A Release
You should not see any "M" files, but you may see several "P"
and/or "U" files. I.e. you better not have any uncommitted
changes in your working directory, but you may pick up some of
Fred's or Tim's last minute changes.
Fred's or Thomas's last minute changes.
___ Now tag the branch using a symbolic name like "rXYMaZ",
e.g. r212
@ -215,11 +241,9 @@ How to Make A Release
freshly unpacked directory looks weird, you better stop now and
figure out what the problem is.
___ You need to upload the tgz file to creosote.python.org. Tim
will have already uploaded the exe file to creosote, but if not,
you'll need to do that too. These steps can take a long time
depending on your network bandwidth. scp both files from your
own machine to creosote.
___ You need to upload the tgz and the exe file to creosote.python.org.
This step can take a long time depending on your network
bandwidth. scp both files from your own machine to creosote.
___ While you're waiting, you can start twiddling the web pages to
include the announcement.
@ -406,8 +430,8 @@ Windows Notes
precompiled "foreign" binaries (Tcl/Tk, expat, etc). So Windows
testing is tiresome but very necessary.
Concurrent with uploading the installer, Tim installs Python from
it twice: once into the default directory suggested by the
Concurrent with uploading the installer, Thomas installs Python
from it twice: once into the default directory suggested by the
installer, and later into a directory with embedded spaces in its
name. For each installation, he runs the full regression suite
from a DOS box, and both with and without -0.
@ -417,7 +441,7 @@ Windows Notes
Help -> Python Documentation works. When trying pydoc this way
(the "Module Docs" Start menu entry), make sure the "Start
Browser" button works, and make sure you can search for a random
module (Tim uses "random" <wink>) and then that the "go to
module (Thomas uses "random" <wink>) and then that the "go to
selected" button works.
It's amazing how much can go wrong here -- and even more amazing
@ -427,11 +451,11 @@ Windows Notes
simply a mess.
Repeat all of the above on at least one flavor of Win9x, and one
of NT/2000. On NT/2000, try both an Admin and a plain User (not
Power User) account.
of NT/2000/XP. On NT/2000/XP, try both an Admin and a plain User
(not Power User) account.
WRT Step 5 above (verify the release media), since by the time
release files are ready to download Tim has generally run many
release files are ready to download Thomas has generally run many
Windows tests on the installer he uploaded, he usually doesn't do
anything for Step 5 except a full byte-comparison ("fc /b" if
using a Windows shell) of the downloaded file against the file he