From b18ecb7707e83cb8cb38c3736aecd984999ca0a7 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Thu, 24 Aug 2023 01:22:33 +0000 Subject: introduce optional C++ xap_helper This allows us to perform the expensive "dump_ibx" operations in native C++ code using the Xapian C++ library. This provides the majority of the speedup with the -cindex --associate switch. Eventually this may be expanded to cover all uses of Xapian within the project to ensure we have access to Xapian APIs which aren't available in XS|SWIG bindings; and also for ease-of-installation on systems which don't provide pre-packaged Perl Xapian bindings (e.g. OpenBSD 7.3) but do provide Xapian development libraries. Most of the C++ code is still C, as I'm not remotely familiar with C++ compared to C. I suspect many users and potential hackers being from git, Linux kernel, and glibc world are in the same boat. --- MANIFEST | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'MANIFEST') diff --git a/MANIFEST b/MANIFEST index 162e3038..4f61af42 100644 --- a/MANIFEST +++ b/MANIFEST @@ -162,10 +162,10 @@ lib/PublicInbox/AltId.pm lib/PublicInbox/AutoReap.pm lib/PublicInbox/Cgit.pm lib/PublicInbox/CidxComm.pm -lib/PublicInbox/CidxDumpIbx.pm lib/PublicInbox/CidxDumpShardRoots.pm lib/PublicInbox/CidxLogP.pm lib/PublicInbox/CidxRecvIbx.pm +lib/PublicInbox/CidxXapHelperAux.pm lib/PublicInbox/CmdIPC4.pm lib/PublicInbox/CodeSearch.pm lib/PublicInbox/CodeSearchIdx.pm @@ -368,8 +368,12 @@ lib/PublicInbox/WwwListing.pm lib/PublicInbox/WwwStatic.pm lib/PublicInbox/WwwStream.pm lib/PublicInbox/WwwText.pm +lib/PublicInbox/XapClient.pm +lib/PublicInbox/XapHelper.pm +lib/PublicInbox/XapHelperCxx.pm lib/PublicInbox/Xapcmd.pm lib/PublicInbox/gcf2_libgit2.h +lib/PublicInbox/xap_helper.h sa_config/Makefile sa_config/README sa_config/root/etc/spamassassin/public-inbox.pre @@ -610,6 +614,7 @@ t/www_altid.t t/www_listing.t t/www_static.t t/x-unknown-alpine.eml +t/xap_helper.t t/xcpdb-reshard.t version-gen.perl xt/cmp-msgstr.t -- cgit v1.2.3-24-ge0c7