Release Overview for 1.4.16

This page contains a high level description of the most notable changes in this release. For full details of user-visible changes, see the NEWS files in each module:

See also the full list of bug reports marked as fixed in this release.



  • Fix segfault in rare cases in the query optimiser. We keep a pointer to the most recent posting list to use as a hint for opening the next posting list, but the existing mechanism to take ownership of this hint had a flaw. We now invalidate the hint in situations where it might be indirectly deleted which is safe, but somewhat conservative.


  • Fix missing menus in API documentation. Newer doxygen generates .js files which we also need to distribute and install.

Lua bindings

  • Allow passing a Lua function as a MatchSpy. This was supposed to be supported already, but the typemaps weren't set up.
  • On platforms where sizeof(long) is 4, SWIG was wrapping Xapian::BAD_VALUENO as a negative constant in Lua, which was then rejected by a check which disallows passing negative values for unsigned C++ types. We now direct SWIG to handle Xapian::valueno as double (which is what numbers in Lua usually actually are) which gives us an unsigned constant, and also eliminates the negative value check.


  • Resolve the remaining issues and remove the "experimental" marker from the SWIG-generated Perl bindings.
Last modified 2 years ago Last modified on 08/06/20 07:45:17
Note: See TracWiki for help on using the wiki.