update news release date and reminder to do so for future
[geos.git] / HOWTO_RELEASE
blob3554f4e341456e627f1fec74222d11b0861f23e5
1 1: Verify that the versions currently set (see 10 and 11 below) make
2    sense for this release.
4 2: Run 'make distcheck', fix any problem with it.
6 3: Generate the ChangeLog by running 'make cl'
8 4: Update the NEWS file (extract most important things from the ChangeLog)
9    Make sure to update the release date
11 5. Commit the new ChangeLog and NEWS files.
13 6: Tag the release:
14    $ base=http://svn.osgeo.org/geos/
15    $ svn copy -m "Tagged release MAJOR.MINOR.PATCH" \
16                 $base/trunk $base/tags/MAJOR.MINOR.PATCH
18 7: Export the tag and 'make dist-bzip2'. 
19    $ svn export $base/tags/$rev
20    $ cd $rev
21    $ ./autogen.sh && ./configure && make dist-bzip2
23 8: Verify that you can unpack and build the tarball
25 9: Copy the tarball to upload.osgeo.org:/osgeo/download/geos
27 10: Increment all the version numbers for the next release, as below.
29 11: Increment CAPI_INTERFACE_X in configure.in
30    - For a release with no interface changes just bump REVISION.
31      [ Even if *nothing* changed in CAPI ]
32    - Adding interfaces, bump CURRENT/AGE, set REVISION to 0.
33    - Deleting interfaces / compatibility issues - bump CURRENT, others to zero
34      [ THIS MUST BE CAREFULLY AVOIDED ]
36 12: Increment release version:
37    - In configure.in
38    - In include/geos/version.h.vc 
39    - In capi/geos_c.h.in
40      - VERSION_PATCH for bugfixes/improvements (even breaking C++ API)
41      - VERSION_MINOR for NEW interfaces in the C lib
42      - VERSION_MAJOR for SUBSTANTIAL additions or C lib ABI break
43        [ THIS MUST BE CAREFULLY AVOIDED ]
44    - In main CMakeLists.txt main one
45       - VERSION_MAJOR, VERSION_MINOR, VERSION_PATCH
46       - CAPI_INTERFACE_*
48 13: Update wiki page http://trac.osgeo.org/geos/ at Download section
49     - Add latest release
50     - Remove previos patch level release (if any)
52 14: Announce 
53