[Xapian-tickets] [Xapian] #523: Migrate from XS Search::Xapian to SWIG version
Xapian
nobody at xapian.org
Sat Jun 25 11:47:24 BST 2011
#523: Migrate from XS Search::Xapian to SWIG version
----------------------------+-----------------------------------------------
Reporter: olly | Owner: olly
Type: defect | Status: new
Priority: normal | Milestone: 1.3.0
Component: Search::Xapian | Version: SVN trunk
Severity: normal | Keywords:
Blockedby: | Platform: All
Blocking: |
----------------------------+-----------------------------------------------
Description changed by olly:
Old description:
> This ticket is to track the issues remaining to solve before the SWIG
> Perl bindings are a complete replacement for the XS ones.
>
> * {{{"$it"}}} doesn't work in SWIG, while in XS it dereferences (for
> !TermIterator and !ValueIterator at least). I did some digging last year
> and it seemed there was some problematic interaction with eq/ne which I
> didn't get to the bottom of.
> * "Stringify" is also missing for subclasses of Error (which in the XS
> version I'm using in 1.2.4 to give backwards compatibility for cases
> which were still throwing string exceptions in 1.2.3).
> * XS version has simple anon-sub wrappers for !MatchDecider and
> !ExpandDecider. SWIG doesn't support directors for Perl in current
> releases (though there's work on a branch). But perhaps we can support
> these simple wrappers without needing directors.
>
> One option is to deprecate the stringify stuff and make the switch at the
> start of the next release series.
New description:
This ticket is to track the issues remaining to solve before the SWIG Perl
bindings are a complete replacement for the XS ones.
* {{{"$it"}}} doesn't work in SWIG, while in XS it dereferences (for
!TermIterator and !ValueIterator at least). I did some digging last year
and it seemed there was some problematic interaction with eq/ne which I
didn't get to the bottom of.
* "Stringify" is also missing for subclasses of Error (which in the XS
version I'm using in 1.2.4 to give backwards compatibility for cases which
were still throwing string exceptions in 1.2.3).
* XS version has simple anon-sub wrappers for !MatchDecider and
!ExpandDecider. SWIG doesn't support directors for Perl in current
releases (though there's work on a branch). But perhaps we can support
these simple wrappers without needing directors.
* The SWIG-generated version is fussier about what sort of scalars you
pass - for example, if an integer is expected, passing a string containing
an integer or floating point number doesn't work, at least in some cases.
One option is to deprecate the stringify stuff and make the switch at the
start of the next release series.
--
--
Ticket URL: <http://trac.xapian.org/ticket/523#comment:3>
Xapian <http://xapian.org/>
Xapian
More information about the Xapian-tickets
mailing list