Updated release instructions with requirements.

This commit is contained in:
Bryan Petty 2015-10-30 00:34:44 -06:00
parent 83cb751c46
commit 89b0692fff
2 changed files with 39 additions and 44 deletions

View File

@ -8,9 +8,9 @@
# #
# To summarize, here are the steps to create the release: # To summarize, here are the steps to create the release:
# #
# % git svn tag WX_x_y_z # % git tag vX.Y.Z -m 'Tag X.Y.Z release.'
# % ./build/tools/git-make-release.sh x.y.z # % ./build/tools/git-make-release.sh X.Y.Z
# % ... upload ../wxWidgets-x.y.z.{7z,tar.bz2,zip} ... # % ... upload ../wxWidgets-X.Y.Z.{7z,tar.bz2,zip} ...
version=$1 version=$1
if [ -z "$version" ]; then if [ -z "$version" ]; then
@ -55,4 +55,4 @@ cd $prefix
zip -q -r ../$prefix.zip . zip -q -r ../$prefix.zip .
7z a ../$prefix.7z . >/dev/null 7z a ../$prefix.7z . >/dev/null
7z a ../${prefix}_headers.7z include >/dev/null 7z a ../${prefix}-headers.7z include >/dev/null

View File

@ -1,39 +1,41 @@
Making a new wxWidgets release # Making a New wxWidgets Release
==============================
Before making the release Creating a new release requires a few things before getting started:
-------------------------
Change the version in include/wx/version.h. * Linux or OSX with 7z installed.
* Windows with HTML Help Workshop installed.
* Doxygen 1.8.8, and GraphViz installed on both machines.
Update docs/readme.txt. Please review its contents in addition to just Unless mentioned otherwise, all steps should be run on Linux or OSX so that the
repository export used for the release is primarily using LF line endings. Files
that require CRLF line endings will be converted appropriately.
## Pre-Release Steps
* Change the version in `include/wx/version.h`.
* Update `docs/readme.txt`. Please review its contents in addition to just
changing the version number. 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`.
Put a date on the release line in docs/changes.txt. Finally, tag the release:
Update the date in the manual (docs/doxygen/mainpages/manual.h). git tag vX.Y.Z -m 'Tag X.Y.Z release.'
Update the release announcement post in docs/publicity/announce.txt. ## Creating Release Files
Tag the release:
git tag WX_x_y_z -m 'Tag x.y.z release.'
Creating release files
----------------------
Follow these steps assuming the current working directory is the root of git Follow these steps assuming the current working directory is the root of git
working copy and you want to prepare distribution for the version x.y.z: working copy and you want to prepare distribution for the version x.y.z:
1. Run `./build/tools/git-make-release.sh x.y.z` to create source archives 1. Run `./build/tools/git-make-release.sh x.y.z` to create source archives
../wxWidgets-x.y.z.{7z,tar.bz2,zip} and wxWidgets_x.y.z_Headers.zip. `wxWidgets-x.y.z.{7z,tar.bz2,zip}` and `wxWidgets-x.y.z-headers.7z`.
2. Run `./build/tools/make-html-docs.sh x.y.z` to create HTML documentation 2. Run `./build/tools/make-html-docs.sh x.y.z` to create HTML documentation
archives ../wxWidgets-x.y.z.{tar.bz2,zip} archives `wxWidgets-x.y.z-docs-html.{tar.bz2,zip}`.
3. This step must be done under Windows as it relies on having hhc.exe, the 3. Run the following commands under Windows since it relies on having `hhc.exe`
Html Help compiler, in PATH: run the following commands (the HTML Help compiler) in your PATH:
``` ```
cd docs\doxygen cd docs\doxygen
@ -43,7 +45,7 @@ working copy and you want to prepare distribution for the version x.y.z:
``` ```
4. This step also must be done under Windows as it uses Inno Setup to produce 4. This step also must be done under Windows as it uses Inno Setup to produce
the .exe file and it also requires the CHM file built above: the `.exe` file and it also requires the CHM file built above:
``` ```
md x.y.z-sources md x.y.z-sources
@ -55,9 +57,7 @@ working copy and you want to prepare distribution for the version x.y.z:
iscc build\tools\wxwidgets.iss iscc build\tools\wxwidgets.iss
``` ```
## Uploading
Uploading
---------
Upload the files to SourceForge. This can be done via the web interface or just 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 scp to sfusername,wxwindows@frs.sf.net:/home/frs/project/w/wx/wxwindows/x.y.z
@ -67,10 +67,10 @@ The following files need to be uploaded:
wxWidgets-x.y.z.7z wxWidgets-x.y.z.7z
wxWidgets-x.y.z.tar.bz2 wxWidgets-x.y.z.tar.bz2
wxWidgets-x.y.z.zip wxWidgets-x.y.z.zip
wxWidgets-docs-chm-x.y.z.zip wxWidgets-x.y.z-docs-chm.zip
wxWidgets-docs-html-x.y.z.tar.bz2 wxWidgets-x.y.z-docs-html.tar.bz2
wxWidgets-docs-html-x.y.z.zip wxWidgets-x.y.z-docs-html.zip
wxWidgets-x.y.z_Headers.7z wxWidgets-x.y.z-headers.7z
You will need to use the web interface to mark the latest uploaded files as 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, being "default downloads" for the appropriate platforms (.zip or .exe for MSW,
@ -91,20 +91,17 @@ And upload the change log too:
scp docs/changes.txt \ scp docs/changes.txt \
sfuser,wxwindows@frs.sf.net:/home/frs/project/w/wx/wxwindows/x.y.z 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 Also upload the files to the FTP mirror at ftp.wxwidgets.org (ask Chris for
access if you don't have it). access if you don't have it).
Create http://docs.wxwidgets.org/x.y.z/ (ask Bryan to do it if not done yet). Create http://docs.wxwidgets.org/x.y.z/ (ask Bryan to do it if not done yet).
## Announcement
Announcement
------------
Update http://www.wxwidgets.org, usually a news item is enough but something Update http://www.wxwidgets.org, usually a news item is enough but something
more can be called for for major releases. more can be called for for major releases.
Post docs/publicity/announce.txt at least to wx-announce@googlegroups.com and Post `docs/publicity/announce.txt` at least to wx-announce@googlegroups.com and
to wx-users for the important releases. to wx-users for the important releases.
Submit a link to http://www.reddit.com/r/programming Submit a link to http://www.reddit.com/r/programming
@ -120,12 +117,10 @@ Also update docs/index.html for the minor or major (i.e. not micro) releases.
Post to wxBlog if necessary. Post to wxBlog if necessary.
Announce on Google+/Twitter/whatever the person doing the release prefers (we Create a new post on our official Google+ page here:
don't have "official" wxWidgets account, should we?). https://plus.google.com/+wxwidgets/ (contact Bryan for access)
## Version Updates
Version updates
---------------
Trac: mark the milestone corresponding to the release as completed and add a 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 new version for it to allow reporting bugs against it and create the next
@ -134,10 +129,10 @@ milestone (ask Vadim or Robin to do it or to get admin password).
Update the roadmap at http://trac.wxwidgets.org/wiki/Roadmap to at least Update the roadmap at http://trac.wxwidgets.org/wiki/Roadmap to at least
mention the new release there. mention the new release there.
Run misc/scripts/inc_release to increment micro version, i.e. replace x.y.z 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) with x.y.z+1 (minor or major versions updates require manual intervention)
and rerun both `bakefile_gen` and `autoconf` afterwards to update the version and rerun both `bakefile_gen` and `autoconf` afterwards to update the version
in the generated files too. in the generated files too.
Update the definition of the stable and release branches in Update the definition of the stable and release branches in
build/buildbot/config/include/defs.xml after a minor version change. `build/buildbot/config/include/defs.xml` after a minor version change.