diff options
author | Matthias Clasen <matthiasc@src.gnome.org> | 2008-06-04 03:28:55 +0000 |
---|---|---|
committer | Matthias Clasen <matthiasc@src.gnome.org> | 2008-06-04 03:28:55 +0000 |
commit | 1e5192fd1cacc8dc4389c48b513e96d5e3f40db9 (patch) | |
tree | 2b956a95a0411330fd434b39b76be52ce5569a0b /docs | |
parent | 7b46a3a2ec5bb59a7c2e07c0f364281a0e1d21cd (diff) | |
download | gtk+-1e5192fd1cacc8dc4389c48b513e96d5e3f40db9.tar.gz |
Updates
svn path=/trunk/; revision=20312
Diffstat (limited to 'docs')
-rw-r--r-- | docs/RELEASE-HOWTO | 119 |
1 files changed, 83 insertions, 36 deletions
diff --git a/docs/RELEASE-HOWTO b/docs/RELEASE-HOWTO index b029f91c49..217743453f 100644 --- a/docs/RELEASE-HOWTO +++ b/docs/RELEASE-HOWTO @@ -1,45 +1,92 @@ How to do a GTK+ release? ========================= -Make sure you have Owen's special autoconf and libtool RPMs, available at: -http://people.redhat.com/otaylor/gtk/autotools/. - +Make sure you have suitable versions of autoconf and libtool. Also make sure you have the following packages installed with all their -dependencies (I used the RPM package names from RedHat 9): +dependencies: * gtk-doc -* linuxdoc-tools * docbook-utils - Without those packages make distcheck will *not* pass. -0) Blow away your gtk+ directory, check a new version out -1) autogen and build it, make sure to enable docs. -2) Update NEWS based on the various ChangeLog files -3) Verify that the version in configure.in has been bumped after the last -release. (Note that this is critical, a slip-up here will cause the soname -to change). -4) Make sure that make check is happy (If you don't do it here, make distcheck -will also catch it, but it is kind of disheartening to see make distcheck fail -due to an extraneous symbol after watching it build the docs for an hour...) -5) Add === Released 2.x.y === at the top of all ChangeLog files -6) make distcheck -7) Fix broken stuff found by 5) repeat -8) cvs commit; you'll have a bunch of po file changes, and maybe some -doc changes too (NOTE: be sure to use cvs with compression, else you'll -end up waiting for a long time :). -9) If 7) fails because someone else committed inbetween, curse, cvs up, -fix conflicts and go to 5) -10) type 'cvs tag GTK_2_x_y' in the toplevel directory -11) You now have the tarball, and the CVS tag, now upload the tarball to -gnome.org and gtk.org -12) Go to the gnome-announce list archives, find the last announce message, -create a new message in the same form, replacing version numbers, commentary -at the top about "what this release is about" and the Summary of changes. -13) Send it to gnome-announce-list, gtk-list, gtk-app-devel-list and -gtk-devel-list. Set reply-to to gnome-hackers. -14) Bump the version number in configure.in. -15) Create a new milestone in bugzilla and move the remaining bugs from the -2.x.y milestone over to the new one. -16) Add a link to the release announcement to www.gtk.org which lives in -the gtk-web cvs module. + 0) Blow away your gtk+ directory, check a new version out + + 1) autogen and build it, make sure to enable docs by specifying + --enable-gtk-doc --enable-man + + 2) Update NEWS based on the various ChangeLog files; follow the format + of prior entries. This includes finding noteworthy new features, + collecting summaries for all the fixed bugs that are referenced + and collecting all updated translations. + Also collect the names of all contributors that are mentioned. + We don't discriminate between bug reporters, patch writers, + committers, etc. Anybody who is mentioned in ChangeLog gets + credits, but only real names, not email addresses or nicknames. + + 3) Verify that the version in configure.in has been bumped after the last + release. (Note that this is critical, a slip-up here will cause the + soname to change). + + 4) Make sure that make check is happy (If you don't do it here, make distcheck + will also catch it, but it is kind of disheartening to see make distcheck + fail due to an extraneous symbol after watching it build the docs for an + hour...). + Typical problems to expect here (depending on whether this is a devel + snapshot or a stable release): + * forgotten source files + * new symbols missing from .symbols files + * symbols that are exported by should be private (static or _-prefixed) + + 5) If this is a devel release, make sure that the docs for new symbols + are in good shape. Look at the -unused.txt files and add stuff found + there to the corresponding -sections.txt file. Make sure that all + new symbols have proper Since: tags, and that there is an index + in the main -docs.sgml for the next stable version. + + 6) Add === Released 2.x.y === at the top of all ChangeLog files + + 7) make distcheck + + 8) Fix broken stuff found by 7), repeat + + 9) svn commit; you'll have a bunch of po file changes, ChangeLog updates, + and maybe some doc changes too + +10) If 7) fails because someone else committed inbetween, curse, svn up, + fix conflicts and go to 7) + +11) Now you've got the tarball. Check that the tarball size looks + reasonable compared to previous releases. If the size goes down + a lot, likely the docs went missing for some reason. If the size + goes up by a lot, something else may be wrong. + +11) Tag the release. The command for doing that looks like + + svn cp svn+ssh://matthiasc@svn.gnome.org/svn/gtk+/branches/gtk-2-12 \ + svn+ssh://matthiasc@svn.gnome.org/svn/gtk+/tags/GTK_2_12_10 + +12) Bump the version number in configure.in and commit this change + with a ChangeLog entry + +13) Upload the tarball to master.gnome.org and run install-module to transfer + it to download.gnome.org. If you don't have an account on master.gnome.org, + find someone who can do it for you. The command for this looks like + + scp gtk+-2.12.10.tar.gz matthiasc@master.gnome.org: + ssh matthiasc@master.gnome.org + install-module gtk+-2.12.10.tar.gz + +14) Get the bz2 tarball and the .md5sum files back from master.gnome.org + You can probably also create it locally, but I've experienced md5 + mismatches when doing so + +15) Go to the gnome-announce list archives, find the last announce message, + create a new message in the same form, replacing version numbers, + commentary at the top about "what this release is about" and the + Summary of changes. + +16) Send it to gnome-announce-list, gtk-list, gtk-app-devel-list and + gtk-devel-list. Set reply-to to gnome-hackers. + +17) Add a link to the release announcement to www.gtk.org which lives + in the gtk-web cvs module. |