panthema / 2012 / 1119-eSAIS-Inducing-Suffix-and-LCP-Arrays-in-External-Memory / eSAIS-DC3-LCP-0.5.4 / stxxl / misc / do-release.txt (Download File)
-*- mode: org -*-
############################################################################
#  misc/do-release.txt
#
#  Notes about the procedure of publishing a release.
#
#  Part of the STXXL. See http://stxxl.sourceforge.net
#
#  Copyright (C) 2013 Timo Bingmann <tb@panthema.net>
#
#  Distributed under the Boost Software License, Version 1.0.
#  (See accompanying file LICENSE_1_0.txt or copy at
#  http://www.boost.org/LICENSE_1_0.txt)
############################################################################

#+STARTUP: showall

* Prerelease Checks

** Run misc/analyze-source.pl (-w) to uncrustify everything.

** Check that the library passes all build tests on all supported systems.

** Check that the CHANGELOG and TODO is up to date.

* Release Procedure

** Update CHANGELOG -> change from (unreleased) to (release date)

** Update the following files with the correct version number:
   [file:../CMakeLists.txt] -> STXXL_VERSION_*
   [file:../Doxyfile] -> PROJECT_NUMBER

** Git commit and add signed tag
   git commit -am "Finalizing release 1.4.x"
   git tag -s -a 1.4.x
   git push
   git push --tags

** Package final source tarball and zip
   git reset --hard master
   git clean -d -f -x
   mkdir build; cd build
   cmake ..
   make package_source
   # check tarball
   tar tvvzf stxxl-1.4.x.tar.gz
   # move stxxl-1.4.x.tar.gz out of build

** Generate stand-alone doxygen tarball:
   # check doxygen version!
   git reset --hard master
   git clean -d -f -x
   mv include/stxxl/bits/config.h.in include/stxxl/bits/config.h
   doxygen
   optipng -o7 doxygen-html/*.png
   tar czf stxxl-1.4.x-doxygen.tar.gz doxygen-html
   # check tarball
   tar tvvzf stxxl-1.4.x-doxygen.tar.gz
   # move stxxl-1.4.x-doxygen.tar.gz out of build

** Upload both tarballs to sourceforge

** Update website with new versions

** Let website generator create tag/master for current git repository.
   - copy tag/master into git website repository

* Post-Release Procedure

** Update CHANGELOG -> change to next version 1.4.99 (unreleased)

** Update the following files with the new prerelease version number:
   [file:../CMakeLists.txt] -> STXXL_VERSION_*
   [file:../Doxyfile] -> PROJECT_NUMBER

** Git commit and add signed tag
   git commit -am "Tagging trunk with prerelease 1.4.99"

* Announcements

** Post announcement messages on sourceforge "forum" and "news" sections

** Post announcement on freecode.net