user/dev discussion of public-inbox itself
 help / color / mirror / code / Atom feed
From: Eric Wong <e@80x24.org>
To: meta@public-inbox.org
Subject: [PATCH 0/4] support SWIG-generated Xapian binding
Date: Sun, 22 Dec 2019 22:17:36 +0000	[thread overview]
Message-ID: <20191222221740.17114-1-e@80x24.org> (raw)

Xapian upstream is slowly migrating to a SWIG-generated
Perl binding and plans to drop the XS-based Search::Xapian
at some point:  https://trac.xapian.org/ticket/523

The SWIG-generated "Xapian" binding seems to work fine with
some minor tweaks to our own code, and we can support both
the old and new bindings.

OpenBSD (tested 6.5) only has the SWIG-generated binding,
FreeBSD packages both, and Debian only has Search::Xapian.

With this, OpenBSD users may now enjoy Xapian-based search.

PATCH 1/4 is is a huge cleanup for our test cases, making
PATCH 3/4 easier-to-implement.  I'm kinda annoyed at PATCH 2/4
because I'm no fan of operator overloading, but oh well,
we used "!=" instead of "->nequal" in those loop, anyways :x

Eric Wong (4):
  testcommon: add require_mods method and use it
  searchidx: call "++" on PostingIterator instead of "->inc"
  search: support SWIG-generated Xapian.pm
  t/search.t: update permissions check for OpenBSD

 lib/PublicInbox/Admin.pm      |  4 +++
 lib/PublicInbox/Search.pm     | 57 ++++++++++++++++++++++++-----------
 lib/PublicInbox/SearchIdx.pm  | 36 ++++++++++++++--------
 lib/PublicInbox/SearchMsg.pm  |  3 +-
 lib/PublicInbox/TestCommon.pm | 24 ++++++++++++++-
 lib/PublicInbox/V2Writable.pm |  5 ++-
 lib/PublicInbox/Xapcmd.pm     | 25 +++++++++------
 t/altid.t                     |  6 +---
 t/altid_v2.t                  |  6 +---
 t/convert-compact.t           |  6 +---
 t/edit.t                      |  7 +----
 t/filter_rubylang.t           |  3 +-
 t/httpd-corner.t              |  9 ++----
 t/httpd-https.t               |  7 ++---
 t/httpd-unix.t                | 10 ++----
 t/httpd.t                     |  8 ++---
 t/indexlevels-mirror.t        |  9 ++----
 t/init.t                      |  5 +--
 t/mda_filter_rubylang.t       |  7 +----
 t/msgmap.t                    |  7 +----
 t/nntp.t                      |  8 ++---
 t/nntpd-tls.t                 |  7 ++---
 t/nntpd.t                     | 13 ++++----
 t/over.t                      |  6 +---
 t/plack.t                     |  5 +--
 t/psgi_attach.t               |  5 +--
 t/psgi_bad_mids.t             |  5 +--
 t/psgi_mount.t                | 10 ++----
 t/psgi_multipart_not.t        |  7 ++---
 t/psgi_scan_all.t             |  5 +--
 t/psgi_search.t               |  8 ++---
 t/psgi_text.t                 |  5 +--
 t/psgi_v2.t                   | 10 ++----
 t/purge.t                     |  6 +---
 t/replace.t                   |  6 +---
 t/search-thr-index.t          |  8 ++---
 t/search.t                    | 14 +++------
 t/solver_git.t                | 13 ++------
 t/v1-add-remove-add.t         |  6 +---
 t/v1reindex.t                 |  6 +---
 t/v2-add-remove-add.t         |  6 +---
 t/v2mda.t                     |  5 +--
 t/v2mirror.t                  |  7 ++---
 t/v2reindex.t                 |  6 +---
 t/v2writable.t                |  5 +--
 t/watch_filter_rubylang.t     |  7 +----
 t/watch_maildir.t             |  7 +----
 t/watch_maildir_v2.t          |  6 +---
 t/www_listing.t               |  8 ++---
 t/xcpdb-reshard.t             | 10 +++---
 xt/git-http-backend.t         |  8 ++---
 xt/msgtime_cmp.t              |  2 +-
 xt/nntpd-validate.t           |  8 ++---
 xt/perf-nntpd.t               |  1 -
 54 files changed, 188 insertions(+), 295 deletions(-)


             reply	other threads:[~2019-12-22 22:17 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-12-22 22:17 Eric Wong [this message]
2019-12-22 22:17 ` [PATCH 1/4] testcommon: add require_mods method and use it Eric Wong
2019-12-22 22:17 ` [PATCH 2/4] searchidx: call "++" on PostingIterator instead of "->inc" Eric Wong
2019-12-22 22:17 ` [PATCH 3/4] search: support SWIG-generated Xapian.pm Eric Wong
2019-12-23 18:07   ` Eric Wong
2019-12-22 22:17 ` [PATCH 4/4] t/search.t: update permissions check for OpenBSD Eric Wong

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://public-inbox.org/README

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20191222221740.17114-1-e@80x24.org \
    --to=e@80x24.org \
    --cc=meta@public-inbox.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/public-inbox.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).