Release Overview for 1.0.12

This page contains a high level description of the more notable changes made for release 1.0.12. For full details of user-visible changes, see the NEWS files in each module:

See also the list of bug reports marked as fixed in 1.0.12.


  • WritableDatabase::remove_spelling() now works properly.
  • The QueryParser now treats NON_SPACING_MARK Unicode characters as phrase generators, which improves handling of Arabic. This is a stop-gap solution for 1.0.x which will work with existing databases without requiring reindexing - in 1.1.0, NON_SPACING_MARK will be regarded as part of a word. (#355)
  • Fix undefined behaviour in distribution of OP_NEAR and OP_PHRASE over a non-leaf subquery (indentified by valgrind on testcase nearsubqueries1). (#349)
  • Enhance distribution of OP_NEAR/{{{OP_PHRASE}} over non-leaf subqueries to work when there are multiple non-leaf subqueries (#201).

Flint backend

  • Release the database lock if the database is closed due to an unrecoverable error during modifications. (#354)
  • If we fail to get the lock after we spawn the child lock process (the common case is because the database is already open for writing) then we now clean up the child process properly.


  • Add handling of exceptions from Database::get_metadata() and methods of Enquire which might throw DatabaseModifiedError to address situation reported in #284.
Last modified 4 years ago Last modified on 26/01/16 10:10:43