NAME
cpanest - generate an Hyper Estraier index for CPAN
SYNOPSIS
cpanest [-clean] [-noclean] [-cpan url or directory] [-node node_uri] [-force] [-noforce] [-keep directory] [-match regexp] [-test level] [-trust_mtime] [-notrust_mtime]
DESCRIPTION
This is a port of cpanwait
from WAIT perl search engine to node API of Hyper Estraier.
All the hard work was done by Ulrich Pfeifer who wrote all parsers and formatters. I just added support for Hyper Estraier back-end after.
This documentation is somewhat incomplete and off-the-sync with code.
OPTIONS
- -clean / -noclean
-
Clean the table befor indexing. Default is off.
- -cpan url or directory
-
Default directory or URL for indexing. If an URL is given, there currently must be a file indices/find-ls.gz relative to it which contains the output of
find . -ls | gzip
. Default is ftp://ftp.rz.ruhr-uni-bochum.de/pub/CPAN. - -node http://localhost:1978/node/cpan
-
Specify node URI
- -force
-
Force reindexing, even if cpan thinks files are up to date. Default is off
- -keep directory
-
If fetching from a remote server, keep files in directory. Default is /app/unido-i06/src/share/lang/perl/96a/CPAN/sources.
- -match regexp
-
Limit to patches matching regexp. Default is authors/id/.
- -test level
-
Set test level, were 0 means normal operation, 1 means, don't really index and 2 means, don't even get archives and examine them.
- -trust_mtime / -notrust_mtime
-
If on, the files mtimes are used to decide, which version of an archive is the newest. If b<off>, the version extracted is used (beware, there are far more version numbering schemes than cpan can parse).
AUTHORS
Ulrich Pfeifer <pfeifer@ls6.informatik.uni-dortumund.de>
Dobrica Pavlinusic <dpavlin@rot13.org>
COPYRIGHT
Copyright (c) 1996-1997, Ulrich Pfeifer
Copyright (c) 2005, Dobrica Pavlinusic
NAME
HyperEstraier::WAIT::Table
DESCRIPTION
This is a mode that emulates WAIT::Table
functionality somewhat.
There are some limitations and only one key attribute is supported (and used for @uri
).
Porting from WAIT to this module.
Since only one key is supported (and used as @uri
attribute), use first parametar of keyset
as key
.
Full text index is specified as invindex
, but you need just name of fields.
You will probably need to add
use WAIT::Parse::Base;
to your code after you remove WAIT::Config
and WAIT::Database
.
METHODS
new
my $tb = new HyperEstraier::WAIT::Table(
uri => 'http://localhost:1978/node/cpan',
attr => qw/docid headline source size parent/,
key => 'docid',
invindex => qw/name synopsis bugs description text environment example author/,
);
have
if ( $tb->have(docid => $something) ) ...
insert
my $key = $tb->insert(
docid => $base,
headline => 'Something',
...
);
delete_by_key
$tb->delete_by_key($key);
delete
$tb->delete( docid => $did, ... );