Release notes for Recoll 1.23.x
Installing over an older version: 1.19-21
Some of the input handlers were converted from shell scripts to Python programs, and some helper dependancies changed. For example, you will need to install python-libxml2 and python-libxslt1 in most cases (for replacing xsltproc).
1.20-23 indexes are fully compatible. Installing 1.23 over an 1.19 index is possible, but there have been small changes in the way compound words (e.g. email addresses) are indexed, so it will be best to reset the index. Still, in a pinch, 1.23 search can mostly use an 1.19 index.
Always reset the index if you do not know by which version it
was created (e.g.: you're not sure it's at least 1.18). The
best method is to quit all Recoll programs and delete the
index directory (
rm -rf ~/.recoll/xapiandb), then start
recollindex -z will do the same in most, but not all, cases. It's better to use the rm method, which will also ensure that no debris from older releases remain (e.g.: old stemming files which are not used any more).
Case/diacritics sensitivity is off by default. It can be turned on only by editing recoll.conf ( see the manual). If you do so, you must then reset the index.
Minor releases at a glance
Fixes two specific Windows issues:
- PDF content indexing was not working.
- "Reset index" sometimes failed and leaved around a partially erased index. The only solution was to delete the index directory in the file manager. 1.23.8 still sometimes fails resetting the index, but restarting the GUI is sufficient to get things going.
- Fixes an ennoying bug with dir: filtering (potential missing results for directory names with upper-case characters).
- Released to fix the snippets generation problem on systems using Xapian 1.4. See the BUGS document for more details.
- Support the new version of the web plugin, which creates files in the Downloads directory instead of the old webqueue directory. A script moves the files to the old place for indexing.
- Restore search mode when loading saved simple search.
- Add option -P to recollindex to force purge with -i.
- Split package into non-gui/gui subpackages.
- Add -L option to GUI for forcing messages language.
- Removed 'bin' from default skippedNames.
- Improve robustness of email header parser against encoding errors.
- email: fix additional header indexing.
- Restable: fix popup menu (show dups would open parent folder).
- Added function to list files which we failed to index (accessible from the GUI term explorer).
- Always process text/html when resulting from a conversion even if the type is excluded by indexedmimetypes or excludedmimetypes.
- Small fixes to pdf XMP metadata handling.
- Small fixes for supporting Dragonfly BSD.
- GUI qss file: force text color to black to avoid white on white text problem with some KDE themes.
- Fixed issue on Windows which prevented adding a drive root (e.g. d:/) to topdirs.
- Mostly released because of a couple of bug fixes.
- Updated rclpdf.py handler with improved metadata capability (will be documented shortly).
- Fixes for the KDE KIO slave build only.
Changes in Recoll 1.23.0
Recoll 1.23 has few user-visible changes. The release was created mostly because some of the minor feature changes are critical from some niche Recoll uses (e.g.: the improved audio file properties indexing), and because the changes to the logging system were too extensive for a minor version.
- Input handler for ODF flat XML file formats.
- Configuration: some list configuration variables, namely skippedNames, noContentSuffixes, and xallexcepts, have acquired variants suffixed with + or - for adding or removing values from the default value, which is a longish list, which hence does not need to be copied for modification any more.
- New nomd5types variable for listing types of files for which we should not compute an MD5 hash (used for duplicates detection). See the manual for details. The default list excludes the audio file types.
- Unicode BOM detection for text files
- Allow using full CSS style for term highlighting, not just color.
- Internal only: the code now uses some C++11 features (e.g. std::threads, std::mutex) to replace home-grown hacks. In consequence, a C++11 compiler is now required for building. Also C++ streams are used for logging.
- execm input handlers now have an alternate method to set metadata fields, easier than HTML meta fields.