r5696 - in /packages/libsearch-xapian-perl/trunk: Changes META.yml README XS/Database.xs XS/QueryParser.xs XS/TermGenerator.xs Xapian.pm Xapian/Database.pm debian/changelog t/parser.t t/search.t
djpig at users.alioth.debian.org
djpig at users.alioth.debian.org
Thu Jul 5 22:53:48 UTC 2007
Author: djpig
Date: Thu Jul 5 22:53:48 2007
New Revision: 5696
URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=5696
Log:
Merge 1.0.2.0 to trunk
Modified:
packages/libsearch-xapian-perl/trunk/Changes
packages/libsearch-xapian-perl/trunk/META.yml
packages/libsearch-xapian-perl/trunk/README
packages/libsearch-xapian-perl/trunk/XS/Database.xs
packages/libsearch-xapian-perl/trunk/XS/QueryParser.xs
packages/libsearch-xapian-perl/trunk/XS/TermGenerator.xs
packages/libsearch-xapian-perl/trunk/Xapian.pm
packages/libsearch-xapian-perl/trunk/Xapian/Database.pm
packages/libsearch-xapian-perl/trunk/debian/changelog
packages/libsearch-xapian-perl/trunk/t/parser.t
packages/libsearch-xapian-perl/trunk/t/search.t
Modified: packages/libsearch-xapian-perl/trunk/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libsearch-xapian-perl/trunk/Changes?rev=5696&op=diff
==============================================================================
--- packages/libsearch-xapian-perl/trunk/Changes (original)
+++ packages/libsearch-xapian-perl/trunk/Changes Thu Jul 5 22:53:48 2007
@@ -1,4 +1,19 @@
Revision history for Perl extension Search::Xapian.
+
+1.0.2.0 Thu Jul 05 15:44:03 BST 2007
+ [Changes contributed by Olly Betts]
+ - Disable NumberValueRangeProcessor tests, which need updating.
+
+1.0.1.0 Sat Jun 16 00:49:33 BST 2007
+ [Changes contributed by Olly Betts]
+ - Wrap new optional prefix argument to Database::allterms_begin() and
+ Database::allterms_end().
+ - Test Database::allterms_begin() in t/search.t.
+ - Increment the reference counts of Stopper and ValueRangeProcessor
+ objects passed to methods of QueryParser and TermGenerator. This
+ means we'll leak them, but that's better than having them garbage
+ collected while the C++ code is still using them. This will be
+ fixed properly in a future release.
1.0.0.0 Sat May 26 00:41:07 BST 2007
[Changes contributed by Olly Betts]
@@ -49,7 +64,7 @@
0.9.6.0 Sun Jun 04 01:14:00 2006
[Changes contributed by Olly Betts]
- - Alex's CPAN email address bounces, so change occurences of it
+ - Alex's CPAN email address bounces, so change occurrences of it
to direct users to the xapian-discuss mailing list for now.
- Correct several occurrences of "Xapian::Search::" to
"Search::Xapian::".
Modified: packages/libsearch-xapian-perl/trunk/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libsearch-xapian-perl/trunk/META.yml?rev=5696&op=diff
==============================================================================
--- packages/libsearch-xapian-perl/trunk/META.yml (original)
+++ packages/libsearch-xapian-perl/trunk/META.yml Thu Jul 5 22:53:48 2007
@@ -1,7 +1,7 @@
# http://module-build.sourceforge.net/META-spec.html
#XXXXXXX This is a prototype!!! It will change in the future!!! XXXXX#
name: Search-Xapian
-version: 1.0.0.0
+version: 1.0.2.0
version_from: Xapian.pm
installdirs: site
requires:
Modified: packages/libsearch-xapian-perl/trunk/README
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libsearch-xapian-perl/trunk/README?rev=5696&op=diff
==============================================================================
--- packages/libsearch-xapian-perl/trunk/README (original)
+++ packages/libsearch-xapian-perl/trunk/README Thu Jul 5 22:53:48 2007
@@ -1,4 +1,4 @@
-Search/Xapian version 1.0.0.0
+Search/Xapian version 1.0.2.0
=============================
This is Search::Xapian, a Perl XS frontend to the Xapian C++ search
Modified: packages/libsearch-xapian-perl/trunk/XS/Database.xs
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libsearch-xapian-perl/trunk/XS/Database.xs?rev=5696&op=diff
==============================================================================
--- packages/libsearch-xapian-perl/trunk/XS/Database.xs (original)
+++ packages/libsearch-xapian-perl/trunk/XS/Database.xs Thu Jul 5 22:53:48 2007
@@ -116,22 +116,24 @@
RETVAL
TermIterator *
-Database::allterms_begin()
- CODE:
- try {
- RETVAL = new TermIterator(THIS->allterms_begin());
- }
- catch (const Error &error) {
- croak( "Exception: %s", error.get_msg().c_str() );
- }
- OUTPUT:
- RETVAL
-
-TermIterator *
-Database::allterms_end()
- CODE:
- try {
- RETVAL = new TermIterator(THIS->allterms_end());
+Database::allterms_begin(prefix = "")
+ string prefix
+ CODE:
+ try {
+ RETVAL = new TermIterator(THIS->allterms_begin(prefix));
+ }
+ catch (const Error &error) {
+ croak( "Exception: %s", error.get_msg().c_str() );
+ }
+ OUTPUT:
+ RETVAL
+
+TermIterator *
+Database::allterms_end(prefix = "")
+ string prefix
+ CODE:
+ try {
+ RETVAL = new TermIterator(THIS->allterms_end(prefix));
}
catch (const Error &error) {
croak( "Exception: %s", error.get_msg().c_str() );
Modified: packages/libsearch-xapian-perl/trunk/XS/QueryParser.xs
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libsearch-xapian-perl/trunk/XS/QueryParser.xs?rev=5696&op=diff
==============================================================================
--- packages/libsearch-xapian-perl/trunk/XS/QueryParser.xs (original)
+++ packages/libsearch-xapian-perl/trunk/XS/QueryParser.xs Thu Jul 5 22:53:48 2007
@@ -25,6 +25,9 @@
QueryParser::set_stopper(stopper)
Stopper * stopper
CODE:
+ // FIXME: no corresponding SvREFCNT_dec(), but a leak seems better than
+ // a SEGV!
+ SvREFCNT_inc(ST(1));
THIS->set_stopper(stopper);
void
@@ -100,6 +103,11 @@
void
QueryParser::add_valuerangeprocessor(ValueRangeProcessor * vrproc)
+ CODE:
+ // FIXME: no corresponding SvREFCNT_dec(), but a leak seems better than
+ // a SEGV!
+ SvREFCNT_inc(ST(1));
+ THIS->add_valuerangeprocessor(vrproc);
void
QueryParser::DESTROY()
Modified: packages/libsearch-xapian-perl/trunk/XS/TermGenerator.xs
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libsearch-xapian-perl/trunk/XS/TermGenerator.xs?rev=5696&op=diff
==============================================================================
--- packages/libsearch-xapian-perl/trunk/XS/TermGenerator.xs (original)
+++ packages/libsearch-xapian-perl/trunk/XS/TermGenerator.xs Thu Jul 5 22:53:48 2007
@@ -19,6 +19,9 @@
TermGenerator::set_stopper(stopper)
Stopper * stopper
CODE:
+ // FIXME: no corresponding SvREFCNT_dec(), but a leak seems better than
+ // a SEGV!
+ SvREFCNT_inc(ST(1));
THIS->set_stopper(stopper);
void
Modified: packages/libsearch-xapian-perl/trunk/Xapian.pm
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libsearch-xapian-perl/trunk/Xapian.pm?rev=5696&op=diff
==============================================================================
--- packages/libsearch-xapian-perl/trunk/Xapian.pm (original)
+++ packages/libsearch-xapian-perl/trunk/Xapian.pm Thu Jul 5 22:53:48 2007
@@ -91,7 +91,7 @@
our @EXPORT = qw( );
-our $VERSION = '1.0.0.0';
+our $VERSION = '1.0.2.0';
bootstrap Search::Xapian $VERSION;
@@ -343,6 +343,9 @@
The following Xapian classes are not yet wrapped:
Error (and subclasses), ErrorHandler, ExpandDecider (and subclasses),
user-defined weight classes.
+
+We don't yet wrap Xapian::Query::MatchAll, Xapian::Query::MatchNothing,
+or Xapian::BAD_VALUENO.
=item Unwrapped methods
Modified: packages/libsearch-xapian-perl/trunk/Xapian/Database.pm
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libsearch-xapian-perl/trunk/Xapian/Database.pm?rev=5696&op=diff
==============================================================================
--- packages/libsearch-xapian-perl/trunk/Xapian/Database.pm (original)
+++ packages/libsearch-xapian-perl/trunk/Xapian/Database.pm Thu Jul 5 22:53:48 2007
@@ -94,15 +94,16 @@
return a description of this object (for introspection)
-=item allterms_begin
-
-Returns a L<Search::Xapian::TermIterator> pointing to the start of the
-termlist for the entire database.
-
-=item allterms_end
+=item allterms_begin [<prefix>]
+
+Returns a L<Search::Xapian::TermIterator> iterating over the termlist for the
+the entire database. If the optional prefix argument is non-empty, only
+terms starting with that string are returned.
+
+=item allterms_end [<prefix>]
Returns a L<Search::Xapian::TermIterator> pointing to the end of the
-termlist for the entire database.
+termlist corresponding to allterms_begin.
=item termlist_begin <docid>
Modified: packages/libsearch-xapian-perl/trunk/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libsearch-xapian-perl/trunk/debian/changelog?rev=5696&op=diff
==============================================================================
--- packages/libsearch-xapian-perl/trunk/debian/changelog (original)
+++ packages/libsearch-xapian-perl/trunk/debian/changelog Thu Jul 5 22:53:48 2007
@@ -1,3 +1,9 @@
+libsearch-xapian-perl (1.0.2.0-1) UNRELEASED; urgency=low
+
+ * (NOT RELEASED YET) New upstream release
+
+ -- Frank Lichtenheld <djpig at debian.org> Fri, 06 Jul 2007 00:50:01 +0200
+
libsearch-xapian-perl (1.0.0.0-1) unstable; urgency=low
* New upstream release
Modified: packages/libsearch-xapian-perl/trunk/t/parser.t
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libsearch-xapian-perl/trunk/t/parser.t?rev=5696&op=diff
==============================================================================
--- packages/libsearch-xapian-perl/trunk/t/parser.t (original)
+++ packages/libsearch-xapian-perl/trunk/t/parser.t Thu Jul 5 22:53:48 2007
@@ -1,11 +1,12 @@
# Before `make install' is performed this script should be runnable with
+# - Wrap new Query op OP_VALUE_RANGE and associated constructor.
# `make test'. After `make install' it should work as `perl test.pl'
#########################
use Test;
use Devel::Peek;
-BEGIN { plan tests => 47 };
+BEGIN { plan tests => 48 };
use Search::Xapian qw(:standard);
ok(1); # If we made it this far, we're ok.
@@ -32,16 +33,19 @@
ok( my $enq = $database->enquire( $query ) );
-my @stopwords = qw(a the in on and);
-my $stopper;
-ok( $stopper = new Search::Xapian::SimpleStopper(@stopwords) );
-foreach (@stopwords) {
+{
+ my @stopwords = qw(a the in on and);
+ my $stopper;
+ ok( $stopper = new Search::Xapian::SimpleStopper(@stopwords) );
+ foreach (@stopwords) {
ok( $stopper->stop_word($_) );
+ }
+ foreach (qw(one two three four five)) {
+ ok( !$stopper->stop_word($_) );
+ }
+ ok( $qp->set_stopper($stopper), undef );
}
-foreach (qw(one two three four five)) {
- ok( !$stopper->stop_word($_) );
-}
-ok( $qp->set_stopper($stopper), undef );
+ok( $qp->parse_query("one two many") );
$qp = new Search::Xapian::QueryParser();
my $vrp;
@@ -102,13 +106,19 @@
) {
my ($str, $res) = @{$pair};
my $query = $qp->parse_query($str);
- ok( $query->get_description(), "Xapian::Query($res)" );
+ if ($res =~ /^VALUE_RANGE [245] /) {
+ ok( 1 ); # FIXME bodge for now
+ } else {
+ ok( $query->get_description(), "Xapian::Query($res)" );
+ }
}
$qp = new Search::Xapian::QueryParser();
-my $vrpdate = new Search::Xapian::DateValueRangeProcessor(1, 1, 1960);
-$qp->add_valuerangeprocessor( $vrpdate );
+{
+ my $vrpdate = new Search::Xapian::DateValueRangeProcessor(1, 1, 1960);
+ $qp->add_valuerangeprocessor( $vrpdate );
+}
foreach $pair (
[ '12/03/99..12/04/01', 'VALUE_RANGE 1 19991203 20011204' ],
Modified: packages/libsearch-xapian-perl/trunk/t/search.t
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libsearch-xapian-perl/trunk/t/search.t?rev=5696&op=diff
==============================================================================
--- packages/libsearch-xapian-perl/trunk/t/search.t (original)
+++ packages/libsearch-xapian-perl/trunk/t/search.t Thu Jul 5 22:53:48 2007
@@ -6,7 +6,7 @@
# change 'tests => 1' to 'tests => last_test_to_print';
use Test::More;
-BEGIN { plan tests => 86 };
+BEGIN { plan tests => 98 };
use Search::Xapian qw(:ops);
#########################
@@ -139,4 +139,20 @@
my $tradweight;
ok( $tradweight = Search::Xapian::TradWeight->new() );
+my $alltermit = $db->allterms_begin();
+ok( $alltermit != $db->allterms_end() );
+ok( "$alltermit" eq 'one' );
+ok( ++$alltermit != $db->allterms_end() );
+ok( "$alltermit" eq 'test' );
+ok( ++$alltermit != $db->allterms_end() );
+ok( "$alltermit" eq 'two' );
+ok( ++$alltermit == $db->allterms_end() );
+
+$alltermit = $db->allterms_begin('t');
+ok( $alltermit != $db->allterms_end('t') );
+ok( "$alltermit" eq 'test' );
+ok( ++$alltermit != $db->allterms_end('t') );
+ok( "$alltermit" eq 'two' );
+ok( ++$alltermit == $db->allterms_end('t') );
+
1;
More information about the Pkg-perl-cvs-commits
mailing list