Log message:
Update to 1.0.10:
Xapian-core 1.0.10 (2008-12-23):
API:
* Composing an OP_NEAR query with two non-term subqueries now throws
UnimplementedError instead of AssertionError (in a --enable-assertions build)
or leading to unexpected results (otherwise). This partly addresses bug#201.
* Using a MultiValueSorter with no values set no longer causes a hang or
segmentation fault (but it is still rather pointless!)
matcher:
* If we're using values for sorting and for another purpose, cache the
Document::Internal object created to get the value for sorting, like we do
between other uses.
flint backend:
* If the disk became full while flushing database changes to disk, the
WritableDatabase object would throw a DatabaseError exception but be left in
an inconsistent state such that further use could lead to the database on
disk ending up in a "corrupt" state (theoretically fixable, but no tool
to fix such a database exists). Now we try to ensure that the object is
left in a consistent state, but if doing so throws a further exception, we
put the WritableDatabase object in a "closed" state such that further
attempts to use it throw an exception.
* Create the lockfile "flintlock" with permissions 0666 so that the \
umask is
honoured just like we do for the other files (previously we used 0600).
Previously it wasn't possible to lock a database for update if it was
owned by another user, even if you otherwise had sufficient permissions via
"group" or "other".
* Fix garbled exception message when a base file can't be reread.
quartz backend:
* Fix garbled exception message when a base file can't be reread.
remote backend:
* xapian-tcpsrv and xapian-progsrv now accept -w as a short form of --writable,
as was always intended.
build system:
* This release now uses newer versions of the autotools (autoconf 2.62 ->
2.63; automake 1.10.1 -> 1.10.2).
documentation:
* INSTALL: Add new paragraphs about HP's aCC and IRIX (adapted from footnotes
in PLATFORMS).
* PLATFORMS: HP testdrive has been shut down, so all mark all those machines as
"no longer available". Update atreus' build report to 1.0.10.
* docs/queryparser.html: Add link to valueranges.html.
examples:
* delve: Add missing "and" to --help output. Report termfreq and \
collection
freq for each term we're asked about.
portability:
* Fix to build with GCC 4.4 snapshot.
Xapian-core 1.0.9 (2008-10-31):
API:
* Database::get_spelling_suggestion() is now faster (15% speed up for parsing
queries with FLAG_SPELLING_CORRECTION set in a test on real world data).
* Fix OP_ELITE_SET segmentation fault due to excess floating point precision
on x86 Linux (and possibly other platforms).
* Database::allterms_begin() over multiple databases now gives a TermIterator
with operations O(log(n)) rather than potentially O(n) in the number of
databases.
* Add new Database methods metadata_keys_begin() and metadata_keys_end() to
allow the complete list of metadata in a database to be retrieved (this
API addition is needed so that copydatabase can copy database metadata).
testsuite:
* Remove the cached test databases before running the testsuite.
* apitest: Fix cursordelbug1 to work on Microsoft Windows (bug#301).
* apitest,queryparsertest: Skip tests which fail because the timer granularity
is too coarse to measure how long the test took. In practice, this is only
an issue on Microsoft Windows (bug#300 and bug#308).
matcher:
* Adjust percent cutoff calculations in the matcher in a way which corresponds
to the change to percentage calculations made in 1.0.7 to allow for excess
precision.
* Query::MatchAll no longer gives match results ranked by increasing document
length.
flint backend:
* xapian-compact: Fix crash while compacting spelling table for a single
database when built with MSVC, and probably other platforms, though Linux
got lucky and happened to work (bug#305).
build system:
* configure: Disable -Wconversion for now - it's not useful for older GCC and
is buggy in GCC 4.3.
* configure: Set -Wstrict-overflow to 1 instead of 5, to avoid unreasonable
warnings under GCC 4.3.
documentation:
* Minor improvements to API documentation, including documenting the
XAPIAN_FLUSH_THRESHOLD environmental variable in WriteableDatabase::flush()
(bug#306).
* valueranges.html: Fix typos in example code, and drop superfluous empty
destructor from ValueRangeProcessor subclass.
* HACKING: Several improvements.
examples:
* copydatabase: Also copy user metadata.
Xapian-core 1.0.8 (2008-09-04):
API:
* Fix output of RSet::get_description
testsuite:
* Report subtotals per backend, rather than per testgroup per backend to make
the output easier to read.
flint backend:
* Fix WritableDatabase::add_document() and replace_document() not to be O(n*n)
in the number of values in the new document.
* Fix handling of a table created lazily after the database has had commits,
and which is then cursored while still in sequential mode.
* Fix failure to remove all the Btree entries in some cases when all the
postings for a term are removed. (bug#287)
* xapian-inspect: Show the help message on start-up. Correct the documented
alias for next from ' ' to ''. Avoid reading outside of input string when it
is empty. (bug#286)
quartz backend:
* Backport fix from flint for WritableDatabase::add_document() and
replace_document() not to be O(n*n) in the number of values in the new
document.
build system:
* configure: Report bug report URL in --help output.
* xapian-config: Report bug report URL in --help output.
* configure: Fix deprecation error for --enable-debug=full to say to instead
use '--enable-assertions --enable-log' not '--enable-debug --enable-log'.
documentation:
* valueranges.html: Expand on some sections.
examples:
* quest: Fix to catch QueryParserError instead of const char * which
QueryParser threw in Xapian < 1.0.0.
* copydatabase: Use C++ forms of C headers. Only treat '\' as a directory
separator on platforms where it is. Update counter every 13 counting up to
the end so that the digits all "rotate" and the counter ends up on \
the exact
total.
portability:
* Eliminate literal top-bit-set characters in testsuite source code.
|
Log message:
Initial import of Xapian, an Open Source Search Engine Library,
released under the GPL. It's written in C++, with bindings to allow
use from Perl, Python, PHP, Java, Tcl, C# and Ruby (so far!)
Xapian is a highly adaptable toolkit which allows developers to
easily add advanced indexing and search facilities to their own
applications. It supports the Probabilistic Information Retrieval
model and also supports a rich set of boolean query operators.
If you're after a packaged search engine for your website, you
should take a look at Omega: an application we supply built upon
Xapian. Unlike most other website search solutions, Xapian's
versatility allows you to extend Omega to meet your needs as they
grow.
|