head 1.29; access; symbols RELEASE_1_8_6:1.29 RELEASE_1_8_4:1.28 RELEASE_1_8_2:1.24 RELEASE_1_8_0:1.23 RELEASE_1_6_4:1.22 RELEASE_1_4_12:1.22 RELEASE_1_4_0:1.22 RELEASE_1_2_6:1.21 RELEASE_1_2_2:1.20 RELEASE_1_2_0:1.17 RELEASE_1_1_6:1.14 RELEASE_1_0_2:1.12 RELEASE_1_0_0:1.12 SNAPSHOT_0_9_0:1.10 SNAPSHOT_0_6_0:1.10 SNAPSHOT_0_5_1:1.9 SNAPSHOT_0_5_5:1.8 SNAPSHOT_0_4_0:1.7 SNAPSHOT_0_1_4:1.5; locks; strict; comment @# @; 1.29 date 2009.03.19.09.03.46; author stevech1097; state Exp; branches; next 1.28; commitid O95NcZT5ycyeECGt; 1.28 date 2009.03.19.08.48.37; author stevech1097; state Exp; branches; next 1.27; commitid VK0AYgPoEa12zCGt; 1.27 date 2009.01.15.10.40.42; author stevech1097; state Exp; branches; next 1.26; commitid NXoTSBCTBWp2dxyt; 1.26 date 2009.01.15.10.32.55; author stevech1097; state Exp; branches; next 1.25; commitid 86VtjyEN8aFmaxyt; 1.25 date 2009.01.15.10.30.22; author stevech1097; state Exp; branches; next 1.24; commitid efwWMIrKc05v9xyt; 1.24 date 2009.01.15.09.07.05; author stevech1097; state Exp; branches; next 1.23; commitid cOwRfd0QRn2VGwyt; 1.23 date 2008.12.10.06.50.04; author stevech1097; state Exp; branches; next 1.22; commitid XZEZsQ38uXVE5Ttt; 1.22 date 2007.03.14.09.18.16; author stevech1097; state Exp; branches; next 1.21; 1.21 date 2006.08.21.03.32.28; author stevech1097; state Exp; branches; next 1.20; 1.20 date 2006.08.16.14.30.42; author stevech1097; state Exp; branches; next 1.19; 1.19 date 2006.07.03.06.20.25; author stevech1097; state Exp; branches; next 1.18; 1.18 date 2006.07.03.04.06.43; author stevech1097; state Exp; branches; next 1.17; 1.17 date 2006.07.03.03.51.14; author stevech1097; state Exp; branches; next 1.16; 1.16 date 2006.05.29.06.07.14; author stevech1097; state Exp; branches; next 1.15; 1.15 date 2006.05.29.05.59.07; author stevech1097; state Exp; branches; next 1.14; 1.14 date 2006.05.29.05.51.19; author stevech1097; state Exp; branches; next 1.13; 1.13 date 2005.10.11.07.02.21; author stevech1097; state Exp; branches; next 1.12; commitid 64b8434b63794567; 1.12 date 2005.08.31.23.37.47; author stevech1097; state Exp; branches; next 1.11; commitid 482a43163f4a4567; 1.11 date 2005.08.12.01.09.03; author stevech1097; state Exp; branches; next 1.10; commitid 713242fbf6ac4567; 1.10 date 2005.07.02.10.11.05; author stevech1097; state Exp; branches; next 1.9; commitid 720242c668384567; 1.9 date 2005.06.22.01.29.13; author stevech1097; state Exp; branches; next 1.8; commitid 50a742b8bee44567; 1.8 date 2005.05.20.11.07.31; author stevech1097; state Exp; branches; next 1.7; commitid 4ab7428dc4ef4567; 1.7 date 2005.03.10.09.18.09; author stevech1097; state Exp; branches; next 1.6; 1.6 date 2005.03.10.08.31.35; author stevech1097; state Exp; branches; next 1.5; 1.5 date 2005.01.12.07.44.46; author stevech1097; state Exp; branches; next 1.4; 1.4 date 2005.01.12.07.09.05; author stevech1097; state Exp; branches; next 1.3; 1.3 date 2004.11.24.21.21.45; author cworth; state Exp; branches; next 1.2; 1.2 date 2004.11.24.21.00.08; author cworth; state Exp; branches; next 1.1; 1.1 date 2004.11.14.03.19.29; author stevech1097; state Exp; branches; next ; desc @@ 1.29 log @'SC' @ text @Here are the steps to follow to create a new pycairo release: 1) Ensure that there are no local, uncommitted modifications. The best thing to do here may be to begin with a fresh checkout from CVS: cvs -d cairographics.org:/cvs/cairo co pycairo But it's probably good enough if "cvs -q update -Ad" generates no output. 2) Fill out an entry in the NEWS file Sift through the information in ChangeLog since the last release. Summarize major changes briefly in a style similar to other entries in NEWS. 3) Increment version numbers in: cairo/cairomodule.c configure.ac doc/conf.py README setup.py Increment pycairo_major/minor/micro_version in configure.ac Increase the cairo_required_version - to an even numbered version. Increment pycairo_major/minor version to match the cairo major/minor version that pycairo requires (and increment the micro version if necessary for any subsequent pycairo updates). (install fresh copy, run examples, run any other tests) 4) Commit the changes to NEWS, configure.ac etc Don't forget to fill out the ChangeLog just like with any other commit. It's especially important to mention the new version number in the ChangeLog. Add a '=== Pycairo x.x.x ===' header to ChangeLog Do "cvs -q update -Ad" to confirm there are no uncommitted changes. 5) Run "make distcheck" and verify that it gives in no warnings or errors and ends with a message of the form: =============================================== pycairo-X.Y.Z archives ready for distribution: pycairo-X.Y.Z.tar.gz =============================================== 6) Edit Makefile.am and select either 'snapshot' or 'release'. Run "make release-publish" which will perform the following steps for you: * Check that the version number ends with an even micro component * Check that no release exists with the current version * Verify that make distcheck completes successfully * Generate the final tar file * Generate an md5sum file * scp both files to appear on http://cairographics.org/releases * Place local copies of the files in the releases directory * Create a LATEST-package-version file (after deleting any old one) * Tag the entire source tree with a tag of the form RELEASE_X_Y_Z * Provide some text for the release announcement (see below). 7) Verify that the tar file arrived at the website. Check tar file has read permissions for all. Update the pycairo webpage to reference the new release. Update http://cheeseshop.python.org entry for pycairo. 8) Edit: cairo/cairomodule.c configure.ac setup.py to increment pycairo_version_micro to the next larger (odd) number and commit. 9) Send a message to cairo-announce@@cairographics.org and CC python-announce-list@@python.org to announce the new release using the text provided from "make release-publish". Generating documentation archives --------------------------------- $ cd doc/ $ vi conf.py # update the version and release numbers $ make clean $ make html $ cd .build/ $ mv html pycairo-x.x.x-docs-html $ tar cjf /tmp/pycairo-x.x.x-docs-html.tar.bz2 pycairo-x.x.x-docs-html $ zip -r /tmp/pycairo-x.x.x-docs-html.zip pycairo-x.x.x-docs-html $ chmod a+r /tmp/pycairo* untar docs in /tmp and check that they have correct version number and view OK. copy file to the 'releases' directory on cairo website: scp pycairo-xxx cairographics.org:/srv/cairo.freedesktop.org/www/releases cd doc html_docs_create.sh html_docs_upload.sh @ 1.28 log @'SC' @ text @d67 1 a68 1 cairo/cairomodule.c @ 1.27 log @'SC' @ text @d17 1 d19 2 a20 1 cairo/cairomodule.c a21 2 README doc/conf.py @ 1.26 log @'SC' @ text @d93 2 a94 1 copy file to the 'releases' directory on cairo website. d96 3 a98 1 scp pycairo-xxx cairographics.org:/srv/cairo.freedesktop.org/www/releases @ 1.25 log @'SC' @ text @d85 1 a85 1 $ cd doc/.build/ @ 1.24 log @'SC' @ text @d21 1 d61 1 a61 2 7) Verify that the tar file arrived at the website. Update the pycairo webpage to reference the new release. d63 2 a77 2 10) Update http://cheeseshop.python.org entry for pycairo. @ 1.23 log @'SC' @ text @d62 1 @ 1.22 log @'SC' @ text @d76 19 @ 1.21 log @'SC' @ text @d16 1 a16 1 3) Increment version numbers in: @ 1.20 log @'SC' @ text @d63 6 a68 2 8) Edit configure.ac to increment pycairo_version_micro to the next larger (odd) number and commit. @ 1.19 log @'SC' @ text @d16 5 a20 1 3) Increment pycairo_major/minor/micro_version in configure.ac d22 1 a26 1 Also increment version numbers in README and setup.py @ 1.18 log @'SC' @ text @d66 2 @ 1.17 log @'SC' @ text @d59 2 a60 2 8) Increment pycairo_version_micro to the next larger (odd) number in configure, and commit. @ 1.16 log @'SC' @ text @d42 2 a43 4 6) Run "make release-publish" which will perform the following steps for you: edit Makefile.am and select either 'snapshot' or 'release' @ 1.15 log @'SC' @ text @d58 4 a61 1 7) Increment pycairo_version_micro to the next larger (odd) number in a63 3 8) Verify that the tar file arrived at the website. Update the pycairo webpage to reference the new release. @ 1.14 log @'SC' @ text @d18 1 a18 1 Increase the cairo_required_version. d61 4 a64 1 8) Send a message to cairo-announce@@cairographics.org @ 1.13 log @'SC' @ text @d45 2 @ 1.12 log @'SC' @ text @d32 1 @ 1.11 log @'SC' @ text @d1 1 a1 6 So far, cairo (and pycairo) hasn't reached an initial release. But we can still form good habits now by practicing the release process with the current snapshots. A new snapshot is needed whenever significant new features or bug fixes are committed. Here are the steps to follow: d13 2 a14 3 Sift through the information in ChangeLog since the last snapshot. Summarize major changes briefly in a style similar to other entries in NEWS. d18 5 a22 5 Increase the cairo_required_version. Increment pycairo_major/minor version to match the cairo major/minor version that pycairo requires (and increment the micro version if necessary for any subsequent pycairo updates). Also increment version numbers in README and setup.py d26 1 a26 1 4) Commit the changes to NEWS and configure.ac d28 4 a31 4 Don't forget to fill out the ChangeLog just like with any other commit. It's especially important to mention the new version number in the ChangeLog. Add a '=== Pycairo x.x.x ===' header to ChangeLog d44 1 d49 2 a50 1 * scp both files to cairographics.org:/home/www/cairo/snapshots d52 1 a52 1 * Place local copies of both files in the releases directory d55 2 a56 17 7) Tag the entire source tree with a tag of the form SNAPSHOT_X_Y_Z: cvs tag SNAPSHOT_X_Y_Z 8) Send a message to cairo-announce@@cairographics.org to announce the new snapshot using the text provided from "make release-publish". 9) Mail message To: python-announce-list@@python.org Subject: ANN: pycairo x.x.x Pycairo is a set of Python bindings for the vector graphics library cairo. http://www.cairographics.org http://www.cairographics.org/pycairo d58 4 a61 1 @ 1.10 log @SC @ text @d66 12 @ 1.9 log @SC @ text @d28 1 a28 1 (increment setup.py version) @ 1.8 log @SC @ text @d28 1 @ 1.7 log @SC 2005/03/10 @ text @d24 2 a25 1 Increment pycairo major/minor version to match the cairo major/minor d31 1 a31 1 4) Commit the changes to NEWS and configure.in d36 1 @ 1.6 log @SC 2005/03/10 @ text @d24 5 a28 3 [Should have some version guidelines here. Do we track the cairo version at all? I don't know what the convention is for python bindings of C libraries. ] @ 1.5 log @SC 2005/01/12 @ text @d1 2 a2 2 So far, pycairo hasn't reached an initial release. But we can still form good habits now by practicing the release process with the current @ 1.4 log @SC 2005/01/12 @ text @d58 1 a58 1 9) Send a message to cairo-announce@@cairographics.org to announce the @ 1.3 log @ * NEWS: Add notes for 0.1.3 snapshot. @ text @d16 1 a16 14 2) Verify that the code passes "make distcheck" Running "make distcheck" should result in no warnings or errors and end with a message of the form: =============================================== pycairo-X.Y.Z archives ready for distribution: pycairo-X.Y.Z.tar.gz =============================================== (But the tar file isn't actually ready yet, as we still have some more steps to follow). 3) Fill out an entry in the NEWS file d22 1 a22 1 4) Increment pycairo_major/minor/micro_version in configure.ac d28 1 a28 1 5) Commit the changes to NEWS and configure.in d34 8 @ 1.2 log @ * configure.ac: Increment pycairo version to 0.1.3. * RELEASING: Some cleanups since copying this file over from cairo, (mostly s/cairo/pycairo/) @ text @d21 4 a24 3 ================================================ pycairo-X.Y.Z.tar.gz is ready for distribution ================================================ @ 1.1 log @SC 14/10/2004 @ text @d1 1 a1 1 So far, cairo hasn't reached an initial release. But we can still form d11 1 a11 1 cvs -d cairographics.org:/cvs/cairo co cairo d22 1 a22 1 cairo-X.Y.Z.tar.gz is ready for distribution d32 7 a38 19 to other entries in NEWS. Take special care to note any incompatible changes in the API. These should be easy to find by looking for cairo.h in the ChangeLog. Additionally, the output following command should be examined using the previous snapshot tag: cvs diff -r SNAPSHOT_X_Y_Z src/cairo.h 4) Increment CAIRO_VERSION in configure.in Right now, in its pre-release form, we are incrementing CAIRO_VERSION for each snapshot but we are not changing the libtool shared library version information. Increment the subminor version for bug fixes and backwards-compatible additions to the API. Increment the minor number (and reset the subminor) for backward-incompatible changes to the API (including removals). Leave the major number at 0 until we are ready for the first 1.0 release, (at which point these rules will change). @