]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/tech/tn0022.txt
Fix broken and missing DataView interface items for Phoenix
[wxWidgets.git] / docs / tech / tn0022.txt
index ffb995940a074441717fa8b53dfdf0f2b53e6b78..65bfbb1c876716687a8e33ec372ad8e55a886eab 100644 (file)
@@ -1,12 +1,21 @@
-                   Working with the wxWidgets release system
-                   =========================================
+                        Making a new wxWidgets release
+                        ==============================
 
-Process Overview:
-- run build/tools/create-archive.py --compression=all /path/to/output/dir
-- upload release to sf.net
-- update wxwidgets.org
-- promote release on software download sites
+Before making the release
+-------------------------
 
+Update docs/readme.txt. Please review its contents in addition to just
+changing the version number.
+
+Put a date on the release line in docs/changes.txt.
+
+Update the date in the manual (docs/doxygen/mainpages/manual.h).
+
+Update the release announcement post in docs/publicity/announce.txt.
+
+
+Creating release files
+----------------------
 
 Currently our release system uses a Python 2.x script to generate releases.
 The script requires Unix utilities such as tar, zip and unix2dos and thus must
@@ -29,3 +38,96 @@ IMPORTANT NOTE: You *must* run this script from a clean source tree, that is,
           release. If you have legitimate modifications in the tree that need
           to be in the release, commit them first.
 
+To generate the windows installer (.exe) and the documentation files (chm and htb formats)
+run:
+
+build\tools\bld_chm_exe.bat
+
+which depends on the wxwidgets.iss file, and generates output in the %DAILY% directory. It 
+assumes a clean copy of the wxWidgets source tree in %INNO%. Temporary files will be generated 
+in the tree from which the batch file is run. It depends on doxygen, a number of gnu
+win32 tools and Microsofts htmlhelp compiler. The wxwidgets.iss file should not need 
+editing, but you will want to check that the bld_chm_exe.bat has the correct version number.
+
+
+
+Alternative non official release scripts
+----------------------------------------
+
+If you use git-svn, then you can use alternative script that avoids the
+problems such as using non-clean tree and also has better handling of the ends
+of lines conversions. To use it you need to run
+
+- build/tools/svn-find-native-eols.pl
+- build/tools/git-make-release
+- build/tools/make-html-docs
+
+(the last one can also be used without git).
+
+
+Uploading
+---------
+
+Upload the files to SourceForge. This can be done via the web interface or just
+scp to sfusername,wxwindows@frs.sf.net:/home/frs/project/w/wx/wxwindows/x.y.z
+The following files need to be uploaded:
+
+    wxMSW-Setup-2.9.3.exe
+    wxWidgets-x.y.z.7z
+    wxWidgets-x.y.z.tar.bz2
+    wxWidgets-x.y.z.zip
+    wxWidgets-x.y.z_Headers.zip
+    wxWidgets-docs-chm-x.y.z.zip
+    wxWidgets-docs-html-x.y.z.tar.bz2
+    wxWidgets-docs-html-x.y.z.zip
+
+You will need to use the web interface to mark the latest uploaded files as
+being "default downloads" for the appropriate platforms (.zip or .exe for MSW,
+.tar.bz2 for everything else) as otherwise SourceForge would continue to suggest
+people to download old files.
+
+Next, update (at least the versions and SHA1 sums, but maybe more) and upload
+docs/release_files.mdwn and docs/release_binaries.mdwn files. They need to be
+renamed to README.md on SF to be shown when the directory is viewed, i.e. do:
+
+    scp docs/release_files.mdwn \
+        sfuser,wxwindows@frs.sf.net:/home/frs/project/w/wx/wxwindows/x.y.z/README.md
+    scp docs/release_binaries.mdwn \
+        sfuser,wxwindows@frs.sf.net:/home/frs/project/w/wx/wxwindows/x.y.z/binaries/README.md
+
+And upload the change log too:
+
+    scp docs/changes.txt \
+        sfuser,wxwindows@frs.sf.net:/home/frs/project/w/wx/wxwindows/x.y.z
+
+
+Also upload the files to the FTP mirror at ftp.wxwidgets.org (ask Chris for
+access if you don't have it).
+
+Create http://docs.wxwidgets.org/x.y.z/ (ask Bryan to do it if not done yet).
+
+
+Announcement
+------------
+
+Post docs/publicity/announce.txt at least to wx-announce@googlegroups.com.
+
+TODO: where else to announce it?
+
+Update www.wxwidgets.org, usually a news item is enough but something more can
+be called for for major releases.
+
+Also update downloads/index.html to mention the new latest release.
+
+Post to wxBlog if necessary.
+
+
+Version updates
+---------------
+
+Trac: mark the milestone corresponding to the release as completed and add a
+new version for it to allow reporting bugs against it and create the next
+milestone (ask Vadim or Robin to do it or to get admin password).
+
+Run misc/scripts/inc_release to increment micro version, i.e. replace x.y.z
+with x.y.z+1 (minor or major versions updates require manual intervention).