Subject: CVS commit: pkgsrc/textproc
From: Amitai Schleier
Date: 2020-06-10 19:54:30
Message id: 20200610175430.52E60FB27@cvs.NetBSD.org

Log Message:
Update to 1.4.16. From the changelog:

API:

* MSet::snippet(): The snippet now includes trailing punctuation which carries
  meaning or gives useful context.  See
  https://github.com/xapian/xapian/pull/180, reported by Robert Stepanek.

* MSet::snippet(): Fix segfault generating snippet from default-constructed
  MSet.  This probably isn't something you'd typically do, but it shouldn't
  crash.  Found during extended testing of #803 (which only affected git
  master) which was reported by Robert Stepanek.

* Remove trailing full stop from exception messages.  We conventionally don't
  include one, but a few cases didn't follow that convention.

testsuite:

* Replace direct use of ftime() which gives deprecation warnings with recent
  mingw.  Reported by srinivasyadav22.

matcher:

* 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.

* Improve the optimisation of an always-matching OP_VALUE_GE to also take
  effect when the value slot's lower bound is equal to the limit of the
  OP_VALUE_GE.  Patch from boda sadalla.

glass backend:

* Report the correct errno value if commit() fails.  We were potentially
  reporting ENOENT from an unlink() call cleaning up a temporary file prior to
  throwing the exception instead.

documentation:

* Fix missing menus in API documentation.  Newer doxygen generates .js files
  which we also need to distribute and install.  Reported by sec^nd on #xapian.

* Note OP_FILTER ignored subquery bug fixed in 1.4.15 as present in 1.4.14 and
  older.

portability:

* Use our own autoconf cache variable namespace (xo_cv_ prefix instead of
  ac_cv_) to avoid colliding with standard autoconf macro use if config.site or
  a shared config.cache is used.  The former case caused a build failure for
  the OpenBSD port with 1.4.15, reported by Lucas R.

* Use clock_gettime() and nanosleep() under modern mingw as these allow higher
  precision than what we previously used.

Bindings:

* Remove code to support SVN snapshots since we stopped using SVN more than 5
  years ago.

* Ignore overloads for logical ops, *, /.  These were already ignored for
  several languages, and aren't actually usefully wrapped for any of the other
  languages.

CSharp:

* Work around mono terminfo parsing bug in more cases.  With this, "make",
  "make check", "make install" and "make \ 
uninstall" all work on Ubuntu 18.10.
  Patch from Dipanshu Garg, fixes https://github.com/xapian/xapian/pull/287 and
  #801.

Lua:

* 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.

* Correct documentation - get_description() is wrapped as tostring() in Lua,
  not str() as we previously claimed.

* Add test coverage for passing Lua function for a Stopper.

Perl:

* Resolve the remaining issues and remove the "experimental" marker:

  + Add search_xapian_compat() function which sets up aliases in the
    Search::Xapian namespace to aid writing code which uses either
    Search::Xapian or this module.

  + Allow passing Perl sub for simpler Xapian functor classes.  This fills in a
    missing feature compared to Search::Xapian.  See #523.

  + Remove useless PerlStopper class which was an incomplete copy of the
    apparently non-functional Search::Xapian::PerlStopper.  We now support
    passing a Perl sub for a Stopper object.

  + Adjust some method names to match Search::Xapian.  Iterators now support
    inc() (and dec() where the C++ class supports operator--) like
    Search::Xapian, rather than increment() and prev().  Reported by Eric Wong
    in #523.

  + Drop undocumented and unexpected extra equals() method.

  + Provide compatibility with ENQ_ASCENDING, etc constants.  SWIG wraps these
    as $Xapian::Enquire::ASCENDING, which better matches the C++ API, but
    Search::Xapian wraps this as Search::Xapian::ENQ_ASCENDING, etc so provide
    those too for compatibility.  Reported by Eric Wong in #523.

  + Drop stringification and int conversion overloads.  These seem more
    confusing than helpful, and overloading stringification works badly
    with SWIG-generated bindings.

  + Document remaining known differences from Search::Xapian.

* Update recently tested versions in README.

* Improve documentation.

* Fix t/02pod.t to look for files in right directory.

Ruby:

* Don't print iterator sizes to stdout.  This was some debugging accidentally
  left in as part of a change in 1.4.12.  Patch from Dan Callaghan.

Files:
RevisionActionfile
1.18modifypkgsrc/textproc/xapian/distinfo-bindings
1.40modifypkgsrc/textproc/xapian/distinfo
1.18modifypkgsrc/textproc/xapian/PLIST
1.12modifypkgsrc/textproc/xapian/Makefile.common
1.5modifypkgsrc/textproc/p5-Xapian/PLIST
1.14modifypkgsrc/textproc/csharp-xapian/Makefile