Commit | Line | Data |
---|---|---|
8de577bc VZ |
1 | Making a new wxWidgets release |
2 | ============================== | |
c7f200e9 | 3 | |
408ee837 VZ |
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 | ||
02de14d2 VZ |
10 | Put a date on the release line in docs/changes.txt. |
11 | ||
926f7103 VZ |
12 | Update the date in the manual (docs/doxygen/mainpages/manual.h). |
13 | ||
dfb636ce VZ |
14 | Update the release announcement post in docs/publicity/announce.txt. |
15 | ||
408ee837 | 16 | |
8de577bc VZ |
17 | Creating release files |
18 | ---------------------- | |
c7f200e9 | 19 | |
433400df VZ |
20 | Currently our release system uses a Python 2.x script to generate releases. |
21 | The script requires Unix utilities such as tar, zip and unix2dos and thus must | |
22 | be run either on Unix or using Cygwin on Windows. To generate a release, simply | |
23 | run the following command: | |
c7428e08 KO |
24 | |
25 | build/tools/create-archive.py --compression=all /path/to/output/dir | |
26 | ||
433400df VZ |
27 | This will produce zip, gzip and bzip archives of the tree (without |
28 | "compression" argument only .gz is made). Note that this commands produces huge | |
29 | amounts of output so redirecting it to a file is recommended. | |
c7428e08 | 30 | |
433400df VZ |
31 | To add a prefix to the release, such as RC1, the SVN revision, or a date, just |
32 | pass --postfix="postfix" to the script. More info on the options and their | |
33 | possible values can be found by calling `create-archive.py --help`. | |
c7428e08 | 34 | |
433400df VZ |
35 | IMPORTANT NOTE: You *must* run this script from a clean source tree, that is, |
36 | with no junk files in it or modifications. This is because the | |
37 | release should be a pristine copy of the tree as of the time of | |
38 | release. If you have legitimate modifications in the tree that need | |
39 | to be in the release, commit them first. | |
c7428e08 | 40 | |
474aa33e CE |
41 | To generate the windows installer (.exe) and the documentation files (chm and htb formats) |
42 | run: | |
43 | ||
44 | build\tools\bld_chm_exe.bat | |
45 | ||
46 | which depends on the wxwidgets.iss file, and generates output in the %DAILY% directory. It | |
47 | assumes a clean copy of the wxWidgets source tree in %INNO%. Temporary files will be generated | |
48 | in the tree from which the batch file is run. It depends on doxygen, a number of gnu | |
49 | win32 tools and Microsofts htmlhelp compiler. The wxwidgets.iss file should not need | |
50 | editing, but you will want to check that the bld_chm_exe.bat has the correct version number. | |
51 | ||
52 | ||
8de577bc | 53 | |
273a28a1 VZ |
54 | Alternative non official release scripts |
55 | ---------------------------------------- | |
56 | ||
57 | If you use git-svn, then you can use alternative script that avoids the | |
58 | problems such as using non-clean tree and also has better handling of the ends | |
59 | of lines conversions. To use it you need to run | |
60 | ||
61 | - build/tools/svn-find-native-eols.pl | |
62 | - build/tools/git-make-release | |
63 | - build/tools/make-html-docs | |
64 | ||
65 | (the last one can also be used without git). | |
8de577bc VZ |
66 | |
67 | ||
68 | Uploading | |
69 | --------- | |
70 | ||
30d7a990 VZ |
71 | Upload the files to SourceForge. This can be done via the web interface or just |
72 | scp to sfusername,wxwindows@frs.sf.net:/home/frs/project/w/wx/wxwindows/x.y.z | |
eca734c4 VZ |
73 | The following files need to be uploaded: |
74 | ||
75 | wxMSW-Setup-2.9.3.exe | |
76 | wxWidgets-x.y.z.7z | |
77 | wxWidgets-x.y.z.tar.bz2 | |
78 | wxWidgets-x.y.z.zip | |
79 | wxWidgets-x.y.z_Headers.zip | |
80 | wxWidgets-docs-chm-x.y.z.zip | |
81 | wxWidgets-docs-html-x.y.z.tar.bz2 | |
82 | wxWidgets-docs-html-x.y.z.zip | |
83 | ||
30d7a990 VZ |
84 | You will need to use the web interface to mark the latest uploaded files as |
85 | being "default downloads" for the appropriate platforms (.zip or .exe for MSW, | |
86 | .tar.bz2 for everything else) as otherwise SourceForge would continue to suggest | |
87 | people to download old files. | |
88 | ||
eca734c4 VZ |
89 | Next, update (at least the versions and SHA1 sums, but maybe more) and upload |
90 | docs/release_files.mdwn and docs/release_binaries.mdwn files. They need to be | |
91 | renamed to README.md on SF to be shown when the directory is viewed, i.e. do: | |
92 | ||
93 | scp docs/release_files.mdwn \ | |
94 | sfuser,wxwindows@frs.sf.net:/home/frs/project/w/wx/wxwindows/x.y.z/README.md | |
95 | scp docs/release_binaries.mdwn \ | |
96 | sfuser,wxwindows@frs.sf.net:/home/frs/project/w/wx/wxwindows/x.y.z/binaries/README.md | |
29e9a098 | 97 | |
129342d8 VZ |
98 | And upload the change log too: |
99 | ||
100 | scp docs/changes.txt \ | |
101 | sfuser,wxwindows@frs.sf.net:/home/frs/project/w/wx/wxwindows/x.y.z | |
102 | ||
103 | ||
30d7a990 VZ |
104 | Also upload the files to the FTP mirror at ftp.wxwidgets.org (ask Chris for |
105 | access if you don't have it). | |
8de577bc | 106 | |
408ee837 | 107 | Create http://docs.wxwidgets.org/x.y.z/ (ask Bryan to do it if not done yet). |
8de577bc VZ |
108 | |
109 | ||
110 | Announcement | |
111 | ------------ | |
112 | ||
dfb636ce | 113 | Post docs/publicity/announce.txt at least to wx-announce@googlegroups.com. |
8de577bc VZ |
114 | |
115 | TODO: where else to announce it? | |
116 | ||
117 | Update www.wxwidgets.org, usually a news item is enough but something more can | |
118 | be called for for major releases. | |
119 | ||
129342d8 VZ |
120 | Also update downloads/index.html to mention the new latest release. |
121 | ||
8de577bc VZ |
122 | Post to wxBlog if necessary. |
123 | ||
124 | ||
125 | Version updates | |
126 | --------------- | |
127 | ||
128 | Trac: mark the milestone corresponding to the release as completed and add a | |
b963ee60 VZ |
129 | new version for it to allow reporting bugs against it and create the next |
130 | milestone (ask Vadim or Robin to do it or to get admin password). | |
8de577bc VZ |
131 | |
132 | Run misc/scripts/inc_release to increment micro version, i.e. replace x.y.z | |
133 | with x.y.z+1 (minor or major versions updates require manual intervention). |