]>
Commit | Line | Data |
---|---|---|
1 | Making a new wxWidgets release | |
2 | ============================== | |
3 | ||
4 | Before making the release | |
5 | ------------------------- | |
6 | ||
7 | Update docs/readme.txt. Please review its contents in addition to just | |
8 | changing the version number. | |
9 | ||
10 | ||
11 | Creating release files | |
12 | ---------------------- | |
13 | ||
14 | Currently our release system uses a Python 2.x script to generate releases. | |
15 | The script requires Unix utilities such as tar, zip and unix2dos and thus must | |
16 | be run either on Unix or using Cygwin on Windows. To generate a release, simply | |
17 | run the following command: | |
18 | ||
19 | build/tools/create-archive.py --compression=all /path/to/output/dir | |
20 | ||
21 | This will produce zip, gzip and bzip archives of the tree (without | |
22 | "compression" argument only .gz is made). Note that this commands produces huge | |
23 | amounts of output so redirecting it to a file is recommended. | |
24 | ||
25 | To add a prefix to the release, such as RC1, the SVN revision, or a date, just | |
26 | pass --postfix="postfix" to the script. More info on the options and their | |
27 | possible values can be found by calling `create-archive.py --help`. | |
28 | ||
29 | IMPORTANT NOTE: You *must* run this script from a clean source tree, that is, | |
30 | with no junk files in it or modifications. This is because the | |
31 | release should be a pristine copy of the tree as of the time of | |
32 | release. If you have legitimate modifications in the tree that need | |
33 | to be in the release, commit them first. | |
34 | ||
35 | To generate the windows installer (.exe) and the documentation files (chm and htb formats) | |
36 | run: | |
37 | ||
38 | build\tools\bld_chm_exe.bat | |
39 | ||
40 | which depends on the wxwidgets.iss file, and generates output in the %DAILY% directory. It | |
41 | assumes a clean copy of the wxWidgets source tree in %INNO%. Temporary files will be generated | |
42 | in the tree from which the batch file is run. It depends on doxygen, a number of gnu | |
43 | win32 tools and Microsofts htmlhelp compiler. The wxwidgets.iss file should not need | |
44 | editing, but you will want to check that the bld_chm_exe.bat has the correct version number. | |
45 | ||
46 | ||
47 | ||
48 | Alternative non official release scripts | |
49 | ---------------------------------------- | |
50 | ||
51 | If you use git-svn, then you can use alternative script that avoids the | |
52 | problems such as using non-clean tree and also has better handling of the ends | |
53 | of lines conversions. To use it you need to run | |
54 | ||
55 | - build/tools/svn-find-native-eols.pl | |
56 | - build/tools/git-make-release | |
57 | - build/tools/make-html-docs | |
58 | ||
59 | (the last one can also be used without git). | |
60 | ||
61 | ||
62 | Uploading | |
63 | --------- | |
64 | ||
65 | Upload the files to SourceForge. This can be done via the web interface or just | |
66 | scp to sfusername,wxwindows@frs.sf.net:/home/frs/project/w/wx/wxwindows/x.y.z | |
67 | You will need to use the web interface to mark the latest uploaded files as | |
68 | being "default downloads" for the appropriate platforms (.zip or .exe for MSW, | |
69 | .tar.bz2 for everything else) as otherwise SourceForge would continue to suggest | |
70 | people to download old files. | |
71 | ||
72 | Also upload the files to the FTP mirror at ftp.wxwidgets.org (ask Chris for | |
73 | access if you don't have it). | |
74 | ||
75 | Create http://docs.wxwidgets.org/x.y.z/ (ask Bryan to do it if not done yet). | |
76 | ||
77 | ||
78 | Announcement | |
79 | ------------ | |
80 | ||
81 | Post announcement at least to wx-announce@googlegroups.com. | |
82 | ||
83 | TODO: where else to announce it? | |
84 | ||
85 | Update www.wxwidgets.org, usually a news item is enough but something more can | |
86 | be called for for major releases. | |
87 | ||
88 | Post to wxBlog if necessary. | |
89 | ||
90 | ||
91 | Version updates | |
92 | --------------- | |
93 | ||
94 | Trac: mark the milestone corresponding to the release as completed and add a | |
95 | new version for it to allow reporting bugs against it (ask Vadim or Robin to do | |
96 | it). | |
97 | ||
98 | Run misc/scripts/inc_release to increment micro version, i.e. replace x.y.z | |
99 | with x.y.z+1 (minor or major versions updates require manual intervention). |