Release Checklists
==================

Main Release
------------

A list of things to be done every release by the release manager on every
tarball release.

(currently Brian Sutherland <jinty@web.de>)

* Version number in files is correct:
    * SERVER_VERSION in src/schooltool/http.py
    * version number in setup.py

* Check that RELEASE is up to date.

* Tag release.

* Make and sign tarballs and zipfiles with ``make schoolbelldist`` or
  ``make schooltooldist``.

* Functional and unit tests run without errors from unpacked tarballs.

* Upload tarballs to www.schoolbell.org

* Send announcement to:
    * schooltool-announce@schooltool.org
    * schooltool@schooltool.org

Package Release
---------------

A list of things the package maintainer should do every package release. The
current package maintainer is the release manager.

* changelog version number (1.0rc1 => 0.9.99+1.0rc1).

* Check/update changelog.

* Sign the packages with a gpg key.

* Sarge chroot testing
    * Test package build with only build-deps installed.
    * Test functional tests against server installed in chroot.
    * SchoolTool specific: run import smapleshool.

* Hoary chroot testing
    * Test package build with only build-deps installed.
    * Test functional tests against server installed in chroot.
    * SchoolTool specific: run import smapleshool.

* Lintian run on packages. All errors explainable.

* Linda run on packages. All errors explainable.

* Manual check of .diff.tar.gz

* Upload packages to sid.
