I have just made available a new release of the TIL. This is really an
interim release since the manual is still lagging behind. The release
consolidates the components that had been made available previously (a
number of bug fixes mainly) and provides a number of new library
components and utilities, as listed below in no particular order. The
TIL lives at http://til.sf.net/.
* accesscontrol: Access control is module modelled after the
hosts.allow and hosts.deny access control mechanisms found on UNIX
system. The module handles the control of a number of resources (by
default the name of the application), from a number of sources. The
implementation supports both ways found on UNIX systems: separating the
access control rules in two files or having all control rules in one
single file, where access or denial are specified by keywords.
* rescacher: Result cacher is a module meant to cache the result of
invariant lengthy operations. The module stores the command called
together with its arguments the first time it is called and the cached
value will be returned next time the same command is called with the
same arguments.
* uid: The unique identifier module uniquely associate identifier
to strings throughout the lifetime of any applications. The module
provides handles any number of pools of unique identifier associations.
* lockfile: lockfile is a module modelled after and compatible
with the lockfile command on UNIX systems. The module is able to create
semaphore files and to wait for the release of the lock. The module has
undergone few testing and will perhaps be improved later.
* log rotation: the diskutil module now contains routines to
automatically perform rotation of, typically, log files.
* starter: The service starter is now able to handle starting of
Java processes in a better way. The syntax of the starting files is able
to make the difference between arguments that should be given to the JVM
(typically the classpath) and arguments that should be given to the
process itself. In theory the same should apply to tcl and tk processes.
* synchro: The synchronisation module has an initial support for
downloading the header of a remote file and deciding upon its
synchronisation once the header has been downloaded (and its content
partly examined).
* URL caching: Two new utilities have been added to the library.
One visualises the content of a cache, the other is able to do some
query/replace operations on the URLs of a cache.
* Log Viewer: A utility is able to remotely connect to the service
starter and visualise in real-time the log file of the services that are
under its control. The log viewer understands the "syntax" of the log
files, i.e. logs that are generated by the logger library from the Tcllib.
* hostalive: hostalive is a module on top of the ping command. It
periodically checks for the "presence" of hosts through sending ICMP
requests and reports when they are off-line (and on-line again). The
module understands the ping command available on the three major
platforms: Mac OSX, Linux and Windows. It is capable of being "nice" to
the network through using low-pace ping commands.
* preprocessor: preprocessor is a module to do query/replace on
files line by line, whenever these lines match a condition. This is
early work than needs a number of improvements before stabilising.
* tax: tax is a tiny xml parser based on a parser from the Wiki.
This implementation adds the possibility to get to know where tags are
in the tree during parsing and is explained further in the Wiki.