Omega 1.4.3 (2017-01-25): indexers: * omindex: + Add support for indexing vCard files if Perl and its Text::vCard module are available. + Recognise application/x-rpm as alternative type since libmagic reports this rather than application/x-redhat-package-manager. + Use official MIME type application/vnd.debian.binary-package for debian packages. We used to map .deb and .udeb to application/x-debian-package, but in 2014 (after we added that support for .deb) an official type was registered with IANA. We now map extensions .deb and .udeb to the official type, but the unofficial type is still recognised (older versions of libmagic probably report it, and users may be mapping to it). + Handle PHP as MIME type text/x-php. The main difference this makes is that PHP files which don't have extension '.php' (e.g. .phtml, .phps, .php5, .ph4, etc) get identified by libmagic as text/x-php and will now be indexed. It also means that the user can now more easily configure different filters for HTML and PHP. + Don't use meta description as sample by default. Now we have dynamic snippets (via $snippet), the body text is a better default. Also generated HTML sometimes has unhelpful content in the meta description. To get the previous behaviour, use the new omindex command line option: --sample=description Omega 1.4.2 (2016-12-26): documentation: * Replace auto-generated list of the supported MIME types with an auto-generated table showing the extensions that are mapped to each MIME type by default. Partly addresses #569, reported by catkin. indexers: * omindex: Add support for indexing markdown files (extension .md or .markdown, mime-type text/markdown, using "markdown" to convert to HTML). testsuite: * Add support for "make installcheck" to run tests against installed version. build system: * configure: Fail with clear error with xapian-core < 1.4.0. portability: * Fix GCC -Wimplicit-fallthrough warning. * Add missing for time_t. * Avoid snprintf_for formatting fixed-width integers - it results in warnings about possible output truncation with GCC7 (which aren't actually possible due to limited input range) and it's a bit heavyweight for this job anyway. Omega 1.4.1 (2016-10-21): general: documentation: * Document bug in how $filters encodes DOCIDORDER=A. * Suggest DOCIDORDER=X for DONT_CARE. * Correct mentions of C++ API method MSet::get_snippet() to MSet::snippet(). * Fix typo in Omega 1.4.0 NEWS entry. Patch from James Aylett. indexers: * omindex: * Also index leafname with _ and & replaced by spaces. Literal spaces are often avoided in filenames, and "hello_world.txt" ought to be searchable for via "hello" and "world". Partly addresses #618, reported by Julien Pfefferkorn. omega: * Add support for sorting by more than one value - e.g. SORT=+1,-2 * Add $msizelower and $msizeupper which provide access to the lower and upper bounds on the number of matches. * Add support for $set{weighting,coord}. * Add weightingpurefilter option. Normally a query consisting only of filter terms won't have relevance weights calculated. This new option allows you to specify a weighting scheme to use for such queries, with the same values supported as for the existing weighting option. For example, $set{weightingpurefilter,coord} will weight such queries by how many filter terms match each document. * $filters now includes DATEVALUE, which means we'll force the first page when reloading or changing page starting from existing URLs upon upgrade to 1.4.1, but the exact same existing URL could be for a search without the date filter where we want to force the first page, so there's an inherent ambiguity there. Forcing first page in this case seems the least problematic side-effect. Omission noted by Gaurav Arora. testsuite: * Add feature test for boolprefix and prefix maps. * Add more feature tests for $filters. build system: * GCC 4.7 is now enforced as the minimum version. * Drop unused configure check for symbol visibility * Drop compiler options that are no longer useful: + -fshow-column is the default in all GCC versions we now support (checked as GCC 4.6). + -Wno-long-long is no longer necessary now that we require C++11 where "long long" is a standard type. portability: * Fix build on platforms which don't provide timegm(), such as Cygwin. Reported on xapian-discuss by John Bankert. Omega 1.4.0 (2016-06-24): general: documentation: * Clarify $allterms and $terms documentation. Make it clearer how they differ, and document that $allterms without a parameter list gives all terms indexing the current hit. Noted by Andy Chilton. Omega 1.3.7 (2016-06-01): indexers: * Make named entity look-up (e.g. é -> 233) use the same keyword-lookup table approach we already use for HTML tags and built-in MIME content-types, rather than a std::map, which makes it faster while using less memory. Omega 1.3.6 (2016-05-09): documentation: * Fix overview.rst processing in VPATH build. Our workaround for lack of an include path in docutils was only handling the first include in the file. omega: * Implement $match command for omegascript. Patch from Richhiey Thomas. templates: * Lower case all HTML tags, attributes and values; explicitly close