1. Verify that the versions currently set in Version.txt
   make sense for this release. See file for instructions.

    - GEOS_VERSION_PATCH
    - GEOS_VERSION_MINOR
    - GEOS_VERSION_MAJOR

    - CAPI_INTERFACE_CURRENT
    - CAPI_INTERFACE_REVISION
    - CAPI_INTERFACE_AGE

2. Prepare the build directory.

   $ mkdir _build && cd _build && cmake -DBUILD_DOCUMENTATION=YES ..

3. Run the build, distcheck, docs targets, fix any problems with them.

   $ cmake --build .
   $ cmake --build . --target docs
   $ ctest --output-on-failure .
   $ cmake --build . --target distcheck

4. Update the NEWS file (extract most important things from the
   repository log). Make sure to update the release date.

5. Commit the changes in the NEWS file.

6. Build the distribution package.

   $ BRANCH_NAME=3.10
   $ git clone --depth 1 --branch $BRANCH_NAME \
         https://github.com/libgeos/geos.git geos-$BRANCH_NAME
   $ cd geos-$BRANCH_NAME
   $ mkdir _build && cd _build
   $ cmake ..
   $ cmake --build . --target dist

7. Verify that you can un-pack and build the tarball.

   $ tar xvfz geos-VERSION.tar.bz2
   $ cd geos-VERSION
   $ mkdir _build && cd _build && cmake ..
   $ cmake --build .
   $ ctest --output-on-failure .

8. Copy the tarball to upload.osgeo.org:/osgeo/download/geos

9. Tag the release:

   $ git tag MAJOR.MINOR.PATCH
   $ git push origin MAJOR.MINOR.PATCH

10. Create and push a release branch if this was a PATCH=0 release,
    update the versions for next release in Version.txt (both in
    main and release branch if this was a PATCH=0 release).

11. Update wiki page https://trac.osgeo.org/geos/ at Download section

    - Add latest release
    - Remove previous patch level release (if any)

12. Close current trac milestone and add new one for next release,
    add new trac version for this release.

12. Announce on geos-devel

