NAME
CPANDB::Generator - Generator module for the CPAN Index Database
SYNOPSIS
# Simplicity itself
CPANDB::Generator->new->run;
DESCRIPTION
This is a module used to generate a unified index database, pulling in
data from various other sources to produce a single schema that contains
the essential elements from all of them.
It is uploaded to the CPAN for the purpose of full disclosure, or in
case the author gets hit by a bus. Generating the index database
involves downloading a number of relatively large SQLite datasets, the
consumption of several gigabytes of disk, and a fairly large amount of
CPU time.
If you are interested in using the index database, you should instead
see the CPANDB distribution.
METHODS
new
my $cpan = CPANDB::Generator->new(
cpan => '/root/.cpan',
sqlite => '/root/CPANDB.sqlite',
);
Creates a new generation object.
The optional "cpan" param identifies the path to your cpan operating
directory. By default, a fresh one will be generated in a temporary
directory, and deleted at the end of the generation run.
The optional "sqlite" param specifies where the SQLite database should
be written to. By default, this will be to a standard location in your
home directory.
Returns a new CPANDB::Generator object.
dir
The "dir" method returns the directory that the SQLite database will be
written into.
dsn
The "dsn" method returns the DBI DSN that is used to connect to the
generated database.
cpan_sql
Once it has been fetched or updated from your CPAN mirror, the
"cpan_sql" method returns the location of the CPAN::SQLite database used
by the CPAN client.
This database is used as the source of the information that forms the
core of the unified index database, and that the rest of the data will
be decorated around.
run
The "run" method executes the process that will produce and fill the
final database.
SUPPORT
Bugs should be reported via the CPAN bug tracker at
<
http://rt.cpan.org/NoAuth/ReportBug.html?Queue=CPANDB-Generator>
For other issues, contact the author.
AUTHOR
Adam Kennedy <
[email protected]>
COPYRIGHT
Copyright 2009 Adam Kennedy.
This program is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.
The full text of the license can be found in the LICENSE file included
with this module.