tcllib_releasemgr - Tcllib - The Release Manager's Guide
Welcome to Tcllib, the Tcl Standard Library. Note that Tcllib is not a package itself. It is a collection of (semi-independent) Tcl packages that provide utility functions useful to a large collection of Tcl programmers.
The audience of this document is the release manager for Tcllib, their deputies, and anybody else interested in the task of creating an official release of Tcllib for distribution.
Please read Tcllib - How To Get The Sources first, if that was not done already. Here we assume that the sources are already available in a directory of your choice.
The "sak.tcl" script in the toplevel directory of a Tcllib checkout is the one tool used by the release manager to perform its Tasks.
The main commands to be used are
sak.tcl validate sak.tcl test run sak.tcl review sak.tcl readme sak.tcl localdoc sak.tcl release
More detail will be provided in the explanations of the various Tasks.
todo: open a candidate for release
todo: test, validate and check that the candidate is worthy of release fix testsuites, possibly fix packages, documentation regenerate docs coordinate with package maintainers wrt fixes big thing: going over the packages, classify changes since last release to generate a nice readme.
todo: finalize release, make candidate official
With the release made it has to be published and the world notified of its existence.
Create a proper fossil event for the release, via http://core.tcl-lang.org/tcllib/eventedit.
An existing event should be used as template.
Update a number of web locations:
The first location maps to the file "embedded/index.md" in the repository itself, as such it can edited as part of the release process. This is where reference to the new fossil event is added, as the new current release.
The next two locations are in the fossil tcllib wiki and require admin or wiki write permissions for http://core.tcl-lang.org/tcllib.
The last two locations require ssh access to http://www.tcl-lang.org and permission to edit files in the web area.
***TODO*** mailing lists and other places to send notes to.