Release Overview for 1.2.5
This page contains a high level description of the most notable changes made for release 1.2.5. For full details of user-visible changes, see the NEWS files in each module:
See also the full list of bug reports marked as fixed in 1.2.5.
API
Enquire::get_eset() now accepts a min_wt argument to allow the minimum wanted weight to be specified. Default is 0, which gives the previous behaviour.
Replication
Only keep $XAPIAN_MAX_CHANGESETS
changeset files when generating a new one
(previously this variable only controlled if we generated changesets or
not). Closes ticket#278.
brass backend
Bumped format version number (we now store the oldest revision for which we might have a replication changeset).
chert, flint, and brass backends
- Optimise not to read the bitmaps from the base files when opening a database for reading.
- Optimise to only update doclength when it has changed.
xapian-chert-update
Fix to handle larger databases, and databases which have values set.
Documentation
Assorted updates and improvements.
Omega
- Update $url's URL encoding to follow RFC3986.
- Allow QueryParser flags to be set from OmegaScript (ticket#418). The
FLAG_SPELLING_CORRECTION
flag can now be set using$opt{flag_spelling_correction,1}
- the old$opt{spelling,true}
way to enable this flag still works, but it now deprecated.
- templates/emptydocs,templates/godmode,templates/opensearch,templates/query,templates/xml: Add missing escaping. Some of these instances may allow cross-site scripting, so upgrading your templates is recommended, especially if you have any sensitive cookies set on the domain Omega is running on.
- templates/xml: Remove support for undocumented
HILITECLASS
CGI variable. There's no evidence we can find using Google code search or web search that this has been used anywhere, and it's difficult to handle escaping it properly in the face of all the ways it could reasonably be used.
Python bindings
- Remove old and broken
Enquire.get_matching_terms()
method. We deprecatedEnquire.get_matching_terms()
in 1.0.x, and removed it in 1.1.0, but accidentally left an older version ofget_matching_terms()
exposed.
- Remove broken implementation of
MSet.__contains__
. This appears never to have worked, and to have been broken for at least the past 3.5 years without anyone mentioning it, and is probably of little use anyway, so no need to deprecate.
- MSet.items and ESet.items are now deprecated. Note that
MSET_DOCUMENT
never worked on the tuple returned by MSet.items. (ticket#531)