Subject: CVS commit: pkgsrc/textproc/xapian
From: Thomas Klausner
Date: 2010-02-16 15:51:26
Message id: 20100216145126.D40EB175DF@cvs.netbsd.org

Log Message:
Update to 1.0.18:

Xapian-core 1.0.18 (2009-02-14):

API:

* Document: Add new add_boolean_term() method, which is an alias for add_term()
  with wdfinc=0.

* QueryParser:

  + Add support for quoting boolean terms so they can contain arbitrary
    characters (partly addresses ticket#128).

  + Add ENCLOSING_MARK and COMBINING_SPACING_MARK categories, plus several
    zero-width space characters, as phrase generators.  This mirrors a better
    fix in 1.1.4, but without losing compatibility with existing databases.

  + Fix handling of an explicit AND before a hated term (foo AND -bar).
    (ticket#447)

* TermIterator: Only include trailing '+' or '#' on a term if it isn't followed
  by a word character (makes more sense and matches QueryParser's behaviour).
  (ticket#446)

* Database: Fix many methods to behave better on a database with no
  subdatabases, such as is constructed by Database().  Fixes ticket#415.

testsuite:

* Add test coverage for xapian-compact, and improve coverage for
  WritableDatabase::replace_document().

* apitest: Rename matchfunctor<n> to matchdecider<n> to match current
  terminology.

flint backend:

* When updating documents, don't update posting entries which haven't changed.
  Largely fixes ticket #250.

* If the number of entries in the position table happened to be 4294967296 or
  an exact multiple, Xapian would ignore positional data for that table when
  running queries.

* Iterating all the terms in the database with a prefix is now slightly more
  efficient.

* Fix locking code to work if stdin and/or stdout have been closed.

* If a document is replaced with itself unmodified, we no longer increase the
  automatic flush counter.

* When iterating a posting list modified since the last flush(), the reported
  wdf is now correct (previously it was too high by its old value).

* Replacing a document deleted since the last flush failed to update the
  collection frequency and wdf, and caused an assertion failure when assertions
  were enabled.

* WritableDatabase::replace_document() didn't always remove old positional
  data (the only effect is that the position table was bloated by unwanted
  entries).

* xapian-inspect:

  + New "until" command which shows entries until a specified key is \ 
reached.

  + New "open" command which allows easy switching between tables.

* xapian-compact: Fix typos in --help output.

quartz backend:

* Replacing a document deleted since the last flush failed to update the
  collection frequency and wdf, and caused an assertion failure when assertions
  were enabled.

* WritableDatabase::replace_document() didn't always remove old positional
  data (the only effect is that the position table was bloated by unwanted
  entries).

remote backend:

* Throw UnimplementedError if a MatchDecider is used with the remote backend.
  Previously Xapian returned incorrect results in this case.

build system:

* configure: With --enable-maintainer-mode, enable -Werror for GCC >= 4.1
  rather than >= 4.0 as Apple's GCC 4.0 gives bogus uninitialised variable
  warnings.

documentation:

* The API documentation now includes Xapian::Error and subclasses, and doesn't
  mention Xapian::Query::Internal.

* Make clear in the Xapian::Document API documentation that this class is a
  lazy handle and discuss the issues this can cause.

* INSTALL: Improve text about zlib dependency.

* HACKING: Add details of our licensing policy for accepting patches.

examples:

* quest: If no database is specified, still parse the query and report
  Query::get_description() to provide an easy way to check how a query parses.

portability:

* Fix GCC 4.2 warning.

xapian-core 1.0.17 (2009-11-18):

API:

* QueryParser:

  + Fix handling of a group of two or more terms which are all stopwords which
    notably caused issues when default_op was OP_AND, but could probably
    manifest in other cases too.  Fixes ticket#406.

  + Fix interaction of FLAG_PARTIAL and FLAG_SYNONYM.  (ticket#407)

* Database: A database created via the default constructor no longer causes a
  segfault when the methods get_metadata() or metadata_keys_begin() are called.

flint backend:

* Don't try to close the fd one more than the maximum allowable when locking
  the database.  Harmless, except it causes a warning when running under
  valgrind.  (ticket#408)

remote backend:

* Xapian::Sorter isn't supported with the remote backend so throw
  UnimplementedError rather than giving incorrect results.  (ticket#384)

* Fix potential reading off the end of the MSet which is returned internally
  by the remote server.

documentation:

* Various documentation comment improvements for the Database class.

examples:

* examples/quest.cc: Tighten up the type of the error we catch to detect an
  unknown stemming language.

portability:

* xapian-config: Need to quote ^ for Solaris /bin/sh.

* configure: Actually use any flags we determine are needed to switch the
  compiler to proper ANSI C++ mode, when building xapian-core - this stopped
  working in 1.0.12, breaking support for HP's aCC, Compaq's cxx, Sun's CC, and
  SGI's CC.

Files:
RevisionActionfile
1.11modifypkgsrc/textproc/xapian/Makefile
1.6modifypkgsrc/textproc/xapian/PLIST
1.9modifypkgsrc/textproc/xapian/distinfo