CPAN modules


The following are Perl modules written by Gavin Carr at Open Fusion and contributed back to the Perl community. They are available here and via CPAN, the Comprehensive Perl Archive Network.



Config::Directory is a module that provides an object-oriented interface to configuration data stored as multiple small files in one or more config directories. Multiple cascading directories allow package and site or user config data to be kept separate, while using a separate file per config data item makes front-end interfacing and scripting much simpler. This version supports both reading and writing of config data files.

Current version: Config::Directory 0.04.


HTML::Breadcrumbs is a module used to automatically create HTML 'breadcrumb trails' (like the Home > Software > CPAN modules links at the top of the page) from a URL path (like /labs/cpan/index.html). It allows you to munge the path in various ways, control what labels are used for the various path elements, how the various elements are formatted, etc.

Current version: HTML::Breadcrumbs 0.7.


HTML::Tabulate is a module used to render/display a set of data in an HTML table. Conceptually, it takes a dataset and a presentation definition and applies the presentation to the dataset to produce the HTML table output. The presentation definition accepts arguments corresponding to HTML table tags ('table', 'tr', 'th', 'td' etc.) to define attributes for those tags, plus additional arguments for other aspects of the presentation. The presentation definition can also be defined in multiple stages, to allow a base definition that is overridden according to more specific needs. HTML::Tabulate also supports advanced features like automatic striping, arbitrary cell formatting, link creation, etc.

Current version: HTML::Tabulate 0.27.


URI::Query is a module providing simple URI query string manipulation, particularly removing some subset of the query arguments, and potentially adding or replacing others. It provides functionality not available in the standard URI or CGI modules, and is simpler and less error-prone than using regexes directly.

Current version: URI::Query 0.06.


File::DirCompare is a module for comparing directory trees using arbitrary callbacks, useful for doing flexible diff-like operations within perl.

Current version: File::DirCompare 0.3.


These modules can all be installed via the standard CPAN install mechanisms:

The Easy Way

perl -MCPAN -e 'install Module::Name'

The Manual Way

Having downloaded the module source (using Module-Name-X.YY as an example):

tar zxvf Module-Name-X.YY.tar.gz
cd Module-Name-X.YY
perl Makefile.PL
make test
make install


These modules are licensed under the terms of the Perl Artistic Licence.