GNU Dico NEWS -- history of user-visible changes. 2023-05-12 See the end of file for copying conditions. Please send Dico bug reports to Version 2.11.90 (git) * pcre module now requires libpcre2 Support for obsolescent libpcre has been withdrawn. * Bugfixes ** GCIDE indexer ** Fix premature freeing of search argument in Python iterators https://puszcza.gnu.org.ua/bugs/?595 Version 2.11, 2021-04-27 * Bugfixes in the gcide module * Fix searches in the gcider utility * Support for Python 2 has been withdrawn Version 2.10, 2020-09-04 * Fix compilation with gcc 10 * Restore po files Version 2.9, 2019-04-24 * New configuration variable DEFAULT_PIDFILE_NAME Use it to alter the default pidfile location, e.g.: ./configure DEFAULT_PIDFILE_NAME=/var/dico/dicod.pid * Fix compilation on 32-bit systems Version 2.8, 2019-02-26 * Fix out-of-boundary memory access in metaphone2 encoder * Fix eventual access to freed memory block * Rewrite utf8_iterator to work with non zero terminated strings. * Fix the build on OpenBSD Version 2.7, 2018-09-25 * Support for virtual databases Virtual database is a collection of regular databases defined in the dicod configuration. Virtual databases can be used to group databases by languages, or to select the format of the DEFINE responses depending on whether OPTION MIME has been requested. Example of defining a virtual database: database { name "English Translating Database"; info "Translations from English to other languages"; handler "virtual"; database "en-sw"; database "en-no"; database "en-pl"; } See the GNU dico manual, subsection 4.3.12.2 "Virtual Databases" for a detailed discussion. * Support for building with WordNet on Debian-based systems Debian-based systems provide a package "wordnet-dev", which installs a shared wordnet library. However, this library is named "libwordnet.so", instead of the expected "libWN.so". Due to this change, previous versions of dico were unable to locate the library and build the wordnet database module. To fix this. the --with-libWN configure option was introduced. Argument to this option is the base name of the shared libWN library, without suffix. Optionally, the "lib" prefix is allowed. For example, to configure on Debian: ./configure --with-libWN=wordnet * Dicoweb: graceful handling of unsupported content types. New setting ONERROR allows the administrator to configure actions to take on certain types of errors. In particular, ONERROR['UNSUPPORTED_CONTENT_TYPE'] defines what to do when a DEFINE request returns article in unsupported content type. * The dictorg module improved The code has been thorougly revisited to ensure correct handling of databases in dictd database format. Testsuite is included. * Default m4 quoting characters changed to [ ] Version 2.6, 2018-08-27 * Support for Guile 2.2.0 * Support for Python 3 Version 2.5, 2018-01-28 * Support for four-column index files in dictorg databases Version 2.4, 2016-11-21 * dico accepts UNIX socket name as argument to the open command * Fix coredump in gcide module * Update translations Version 2.3, 2016-08-09 * IPv6 support * Guile 2.x support * New matching strategy: metaphone2 The metaphone2 strategy implements the Double Metaphone phonetic encoding algorithm. * Implement info and description for gcide dictionary * Fixed bugs in idxgcide * Added manpages Version 2.2, 2012-03-04 * Configuration changes ** load-module The load-module form allows for a statement use, e.g.: load-module word; The above statement is equivalent to: load-module word { command "word"; } Either string or list of strings is accepted as argument. The latter is useful for loading several modules with a single statement, e.g.: load-module (stratall,substr,word); * New modules ** gcide This module provides support for GNU Collaborative International Dictionary of English. ** wordnet This module provides support for WordNet, a lexical database for the English language developed in the Princeton University and distributed under a BSD style license. ** word This module provides the following strategies: word "Match separate words within headwords" first "Match the first word within headwords" last "Match the last word within headwords" ** nprefix Provides the nprefix strategy. It is similar to prefix but returns the specified range of matches. For example MATCH nprefix ## returns at most headwords whose prefix matches , skipping first unique matches. ** pcre Provides matching strategy based on Perl regular expressions. ** pam Implements PAM authentication. * New utility: gcider "Gcider" is a window-based application for browsing the GNU Collaborative International Dictionary of English (see http://www.gnu.org/software/gcide). Version 2.1, 2010-07-07 * Normalize exit codes. The dicod server uses exit codes from sysexits.h. * Replies to MATCH command. The dictorg backend filters out duplicate entries from MATCH replies. Only the first one from a sequence of such duplicates is retained. * New configuration statements. ** prepend-load-path Acts much the same as module-load-path, but adds directories at front of the default Dico module directory. * Strategies ** All The `all' strategy has been re-implemented as a loadable module. To enable this strategy in daemon, load the `stratall' module: load-module stratall { command "stratall"; } ** Substr New strategy `substr' matches a substring anywhere in the headword. To enable this strategy, load the `substr' module: load-module substr { command "substr"; } * LDAP Dicod now supports LDAP as an underlying mechanism for storing user databases. The LDAP support is loaded as a module: load-module ldap { command "ldap"; } See the documentation, subsection 3.3.3.2 "LDAP Databases", for a detailed description. * Dicoweb Improved handling of databases without a descriptive name (previous version would throw exception for such cases). The file settings.py renamed to settings-sample.py. The file static/opensearch.xml has been moved to templates. If you are upgrading from an earlier version, you may safely remove it. * Bugfixes: ** Fixed improper handling of conversion errors in levenshtein.c (debian #582692) ** Removed the use of fixed-size buffer in dictorg.c (fixes debian #582708) Version 2.0, 2009-03-29 Initial version. ========================================================================= Copyright information: Copyright (C) 2008-2023 Sergey Poznyakoff Permission is granted to anyone to make or distribute verbatim copies of this document as received, in any medium, provided that the copyright notice and this permission notice are preserved, thus giving the recipient permission to redistribute in turn. Permission is granted to distribute modified versions of this document, or of portions of it, under the above conditions, provided also that they carry prominent notices stating who last changed them. Local variables: mode: outline paragraph-separate: "[ ]*$" eval: (add-hook 'write-file-hooks 'time-stamp) time-stamp-start: "changes. " time-stamp-format: "%:y-%02m-%02d" time-stamp-end: "\n" end: