Commit graph

17 commits

Author SHA1 Message Date
adam
9d0e79c401 revbump for textproc/icu 2021-04-21 11:40:12 +00:00
schmonz
77684ef3f6 Update to 1.4.18. From the changelog:
Portability:

* Support macOS 11.0 - AC_CANONICAL_HOST identifies this as darwin20, which
  wasn't caught by our glob pattern.  Patch from FX Coudert in
  https://github.com/xapian/xapian/pull/319

CSharp:

* Wrap const std::string* parameters to accept a string or null in C#.  See #204.

Java:

* Wrap const std::string* parameters to accept a String or null in Java.

Perl:

* Fix minor documentation typo.
2021-01-14 18:18:11 +00:00
ryoon
2831546220 *: Recursive revbump from textproc/icu-68.1 2020-11-05 09:07:25 +00:00
schmonz
5831e5d7af 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.
2020-06-10 17:54:29 +00:00
adam
6bd0c30da6 Revbump for icu 2020-06-02 08:22:31 +00:00
adam
24daafa112 Recursive revision bump after textproc/icu update 2020-04-12 08:27:48 +00:00
schmonz
1b85c0e1db Reset PKGREVISIONS. Attempt to fix some PLISTs. 2019-08-02 21:28:53 +00:00
ryoon
6fc378bce9 Recursive revbump from textproc/icu 2019-04-03 00:32:25 +00:00
schmonz
37403f6ee8 Unset PKGREVISION after xapian version bump. 2019-02-12 19:23:04 +00:00
adam
16dd5de231 revbump after updating textproc/icu 2018-12-09 18:51:58 +00:00
schmonz
a2b1c3883f Update to 1.4.7. From the changelog:
API:

* Database::check(): Fix bogus error reports for documents with length zero
  due to a new check added in 1.4.6 that the doclength was between the stored
  upper and lower bounds, which failed to allow for the lower bound ignoring
  documents with length zero (since documents indexed only by boolean terms
  aren't involved in weighted searches).  Reported by David Bremner.

* Query: Use of Query::MatchAll in multithreaded code causes problems because
  the reference counting gets messed up by concurrent updates.  Document that
  Query(string()) should be used instead of MatchAll in multithreaded code, and
  avoid using it in library code.  Reported by Germán M. Bravo.

* Stem:

  + Stemming algorithms added for Irish, Lithuanian, Nepali and Tamil.

  + Merge Snowball compiler changes which improve code generation.

  + Merge optimisations to the Arabic and Turkish stemmers.

glass backend:

* A long-lived cursor on a table in a WritableDatabase could get into
  an invalid state, which typically resulted in a DatabaseCorruptError
  being thrown with the message:

      Db block overwritten - are there multiple writers?

  But in fact the on-disk database is not corrupted - it's just that
  the cursor in memory has got into an inconsistent state.  It looks
  like we'll always detect the inconsistency before it can cause on-disk
  corruption but it's hard to be completely certain.

  The bug is in code to rebuild the cursor when the underlying table
  changes in ways which require that, which is a fairly rare occurrence
  to start with, and only triggers when a block in the cursor has been
  released, reallocated, and we tried to load it in the cursor at the
  same level - the cursor wrongly assumes it has the current version
  of the block.

  Reported with a reproducer by Sylvain Taverne.  Confirmed by David
  Bremner as also fixing a problem in notmuch for which he hadn't managed
  to find a reduced reproducer.
2018-08-26 13:25:33 +00:00
ryoon
b9c1e1d533 Recursive revbump from textproc/icu-62.1 2018-07-20 03:33:47 +00:00
schmonz
7f9e452b4e Update xapian bindings for 1.4.6. 2018-07-06 16:23:11 +00:00
adam
299d329d51 revbump after icu update 2018-04-14 07:33:52 +00:00
adam
8977d31a36 Revbump after textproc/icu update 2017-11-30 16:45:00 +00:00
maya
33ebf687dc revbump for requiring ICU 59.x 2017-09-18 09:52:56 +00:00
schmonz
a913631ac9 Add Xapian language bindings for C#, Lua, Perl, PHP, Python, Ruby, and Tcl. 2017-07-10 17:34:04 +00:00