Opened 8 years ago

Closed 8 years ago

#7304 closed enhancement (fixed)

xapian-core-1.2.22

Reported by: Fernando de Oliveira Owned by: Fernando de Oliveira
Priority: normal Milestone: 7.9
Component: BOOK Version: SVN
Severity: normal Keywords:
Cc:

Description

http://oligarchy.co.uk/xapian/1.2.22/xapian-core-1.2.22.tar.xz

http://lists.xapian.org/pipermail/xapian-discuss/2015-December/009277.html

SHA1: 803fd5fda3fec85800ff117432a8a51fe5d24ddf xapian-core-1.2.22.tar.xz

http://xapian.org/docs/xapian-core-1.2.22/NEWS

Xapian-core 1.2.22 (2015-12-29):

API:
• Add FLAG_CJK_NGRAM for QueryParser and TermGenerator.  Has the same
  effect as setting the environment variable XAPIAN_CJK_NGRAM.  Fixes
  #180, reported by Richard Boulton, with contributions from Pavel
  Strashkin, Mikkel Kamstrup Erlandsen and Brandon Schaefer.
• Fix bug parsing multiple non-exclusive filter terms - previously this
  could result in such filters effectively being ignored.
• Fix Database::get_doclength_lower_bound() over multiple databases when
  some are empty or consist only of zero-length documents.  Previously
  this would report a lower bound of zero, now it reports the same
  lowest bound as a single database containing all the same documents.
• Make Database::get_wdf_upper_bound("") return 0.
• Mark constructors taking a single argument as "explicit" to avoid
  unwanted implicit conversions.

testsuite:
• If command line option --verbose/-v isn't specified, set the verbosity
  level from environmental variable VERBOSE.
• Skip timed tests if $AUTOMATED_TESTING is set.  Fixes #553, reported
  by Dagobert Michelsen.
• Don't leave an extra fd open when starting xapian-tcpsrv for remotetcp
  tests.
• apitest: Revert disabling of part of adddoc5 for clang - the test
  failure was in fact due to a bug in 1.3.x, and 1.2.x was never
  affected.
• apitest: Tweak bounds checks in dbstats1 testcase - multi backends
  should give tight bounds.

brass backend:
• Format limit on docid now correctly imposed when sizeof(int) > 4.
• Avoid potential DB corruption with full-compaction when using 64K
  blocks.

chert backend:
• Format limit on docid now correctly imposed when sizeof(int) > 4.
• Avoid potential DB corruption with full-compaction when using 64K
  blocks.

flint backend:
• Format limit on docid now correctly imposed when sizeof(int) > 4.
• Avoid potential DB corruption with full-compaction when using 64K
  blocks.

remote backend:
• Fix to handle total document length exceeding 34,359,738,368.  (Fixes
  #678, reported by matf).
• Avoid dividing by zero when getting the average length for an empty
  database.
• Stop apparent error from remote server when read-only client
  disconnects.  A read-only client just closes the connection when done,
  but the server previously reported "Got exception NetworkError:
  Received EOF", which sounds like there was a problem.  Now we just say
  "Connection closed" here, and "Connection closed unexpectedly" if the
  client connects in the middle of an exchange.  Possibly fixes #654,
  reported by German M. Bravo.
• Give a clearer error message when the client and server remote
  protocol versions aren't compatible.
• Check length of key in MSG_SETMETADATA.

build system:
• pkg-config: Fix library name in .pc file to say "xapian" not
  "xapian-core".  Reported by Eric Lindblad to the xapian-devel list.
• Private symbol decode_length() is no longer visible outside the
  library.

documentation:
• Stop maintaining ChangeLog files.  They make merging patches harder,
  and stop 'git cherry-pick' from working as it should.  The git repo
  history should be sufficient for complying with GPLv2 2(a).
• Strip out "quickstart" examples which are out of date and rather
  redundant with the "simple" examples.
• Correct documentation of Enquire::get_query().  If no query has been
  set, the documentation said Xapian::InvalidArgumentError was thrown,
  but in fact we just return a default initialised Query object (i.e.
  Query()).  This seems reasonable behaviour and has been the case since
  Xapian 0.9.0.
• Document xapian-compact --blocksize takes an argument.
• Update snowball website link to snowballstem.org.

tools:
• xapian-replicate: Fix replication for files > 4GB on 32-bit platforms.
  Previously replication would fail to copy a file whose size didn't fit
  in size_t.  Fixes #685, reported by Josh Elsasser.
• xapian-tcpsrv: Better error if -p/--port not specified
• quest: Support `-f cjk_ngram`.

examples:
• xapian-metadata: Extend "list" subcommand to take optional key prefix.

portability:
• Fix new warnings from recent versions of GCC and clang.
• Add spaces between literal strings and macros which expand to literal
  strings for C++11 compatibility in __WIN32__-specific code.
• Need <unistd.h> for unlink() on FreeBSD, reported by Germán M. Bravo
  via github PR 72.
• Fix testsuite to build when S_ISSOCK() isn't defined.
• Don't provide our own implementation of sleep() under __WIN32__ if
  there already is one - mingw provides one, and in some situations it
  seems to clash with ours.  Reported to xapian-discuss by John Alveris.
• Add missing '#include <arpa/inet.h>' to htons().  Seems to be
  implicitly included on most platforms, but Interix needs it.  Reported
  by Eric Lindblad on xapian-discuss.
• Disable "<FUNCTION> is expected to return a value" warning from Sun's
  C++ compiler, as it fires for functions ending in a "throw" statement.
  Genuine instances will be caught by compilers with superior warning
  machinery.
• Prefer scalbn() to ldexp() where possible, since the former doesn't
  ever set errno.
• '#include <config.h>' in the "simple" examples, as when compiling with
  xlC on AIX, _LARGE_FILES gets defined by AC_SYS_LARGEFILE to enable
  large file support, and defining this changes the ABI of std::string,
  so it also needs to be defined when compiling code using Xapian.
• On cygwin, include <arpa/inet.h> instead of winsock headers for
  htons() and htonl().
• Include <cygwin/version.h> for CYGWIN_VERSION_API_MAJOR.
• Avoid referencing static members via an object in that object's own
  definition, as this doesn't work with all compilers (noted with GCC
  3.3), and is a bit of an odd construct anyway.  Reported by Eric
  Lindblad on xapian-discuss.
• GCC < 3.4.2 lacks operator<< overloads for unsigned long long on some
  platforms, so simply work around this by using str(), as this isn't
  performance sensitive code.  Reported by Eric Lindblad on
  xapian-discuss.
• Fix delete which should be delete[] in brass backend cursor code.

Change History (3)

comment:1 by Fernando de Oliveira, 8 years ago

Owner: changed from blfs-book@… to Fernando de Oliveira
Status: newassigned

comment:2 by Fernando de Oliveira, 8 years ago

Fixed at r16772.

comment:3 by Fernando de Oliveira, 8 years ago

Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.