FIXES:
Minor fix in dictd.8 (paths to config files), sf.net bug #2407717
Thanks to Peter Volkov
Bug fixed in installing plugins, sf.net bug #2218879,
Thanks to Peter Volkov
DICTFMT sorts entries in 00-database-alphabet entry
lexicographically, that is now this order doesn't depend on
sizeof(long). This fixes sf.net bug #2197588.
Thanks to Peter Volkov and his tests on PowerPC.
DICTD: SHOW STRAT: s/databases present/strategies present/
found and reported by Goran Tal <goran.tal@gmail.com>. Thanks.
DICTFMT: 'dictfmt -I' never worked (regrettable oversight, heh),
found and reported by Goran Tal <goran.tal@gmail.com>. Thanks.
Makefile.in, configure.in:
"building and installing different set of things based
on configure results considered harmful"(C) me :-)
Plugins support in dictd is enabled by default (if available).
DBI and JUDY plugins are disabled by default.
Enable them explicitly by using
./configure --with-plugin-dbi
and
./configure --with-plugin-judy
This fixes sf.net bug #2218879 by Peter Volkov.
By using DICTL_USE environment variable dictl utility can now use an
external program for charset2charset conversions. This addresses
sf.net bug #2407725, again by Peter Volkov
* Makefile.in, configure.in:
(Clean-ups)
--with-local-libmaa option is removed from "configure" script.
You should build libmaa manually before dictd/dict/...
This removes lots of garbage from configure.in and Makefile.in and
makes them MUCH cleaner. If you want to link dictd with libmaa statically,
use Makefile's LIBMAA variable.
configure.in, include_regex.h.in, index.c:
(Clean-ups) Ages ago, I've add to "configure" script an option
--with-regex-include to make possible to build dictd with PCRE.
Now, I've removed this option. If you want to build dictd with with PCRE,
ask PCRE developers to install pcre/regex.h file linked to pcreposix.h.
All other regexp libraries compatible with POSIX API do the same,
rx/regex.h, rxspencer/regex.h etc. etc.
So, this is good and well known convension.
Makefile.in: LIBMAA variable added. Change it if you want to link
dictd against libmaa statically or...
* configure.in: Enable additional gcc warnings on all platforms
unconditionally, not only under Linux, I need them under NetBSD.
Makefile.in: fix for "uninstall" target
Lots of clean-ups in dictl.
Other minor clean-ups in Makefile.in and configure.in
Minor spelling fixes in NEWS
Major changes:
dictd tarball no longer contains libmaa library. Now
dictd/dict/dictfmt/dictzip/... are built with external libmaa
library. Also, by default local "libmaa" directory is not used to
detect libmaa even if this directory is present,
use './configure --with-local-libmaa' option to force this.
configure:
removed: --with-cc, --with-cflags, --with-prog, --with-gprof,
--with-checker, --with-efence, --with-insure and --with-purify
options. Use standard CC, CPPFLAGS, CFLAGS, LDFLAGS etc.
environment variables instead
Compilation errors fixed on Solaris, Interix, HP-UX and others.
dictfmt_index2suffix: \001 -> \1 inside regexp. It seems it is better
eccepted by different awk/regexp_engines. (heirloom posix2001/awk and
libuxre)
fixed: sf.net bug #1627458 (make samples fails to build)
fixed: sf.net bug #1941358 (first connection is denied)
dictfmt_index2suffix: no need for GNU awk
dictfmt_index2suffix and dictfmt_index2word are generated from *.in
Lots of minor fixes and clean-ups in regression tests, Makefiles,
configure...
Lots of GCC warning messages were also fixed
Major changes:
Everything can now be compiled with pcc (Portable C Compiler),
tested under NetBSD
clean-ups in C code, configure.in etc. Warning messages generated by
NetBSD/alpha were fixed. Lots of warning messages produced by icc-10
(Intel C Compiler) were fixed too.
FIX: now dictd/libmaa can be built from external "object" (any!)
directory just like many other autobloat-based projects can do.
That is, the following works fine now
cd obj-dir
/path/to/dictd-sources/configure --with-libmaa
gmake
gmake install
dictd:
- FIXED: compilation failure on Linux if --disable-plugin
option is specified.
- index.c:
FIXED: while processing MATCH command unicity of only first
column of .index is checked, but fourth column (if present)
is not.
- timestamp log marker (log_option "timestamp") is changed from
:T: to :t: because :T: begins client's full command (log_option
"command")
dictfmt:
- FIXED: maximum length of headwords is limited to hardcoded
constant just by cutting the end of headword. Now internal
arrays are realloced automatically.
dict:
- ADDED: -F|--flush option for flushing stdout after each
definition/match. This may be useful in combination with -f
colorit:
- bashism fixed: 'echo -en' -> more portable 'printf'.
Thanks to Debian users.
libmaa:
- fixed: DESTDIR support
dictdplugin_popen:
- fixed: missed header file, seen with gcc-4.3.
Thanks to Martin Michlmayr for report
dictd:
- ADDED: 'limit_time' keyword for limiting time (in seconds)
during which a client may talk to the server.
This is for preventing DOS attacks.
This option may be used as a replacement for 'delay' option.
See dictd.8 for the documnetation
- ADDED: new keyword 'limit_matches' and 'limit_defintions'
limiting a number of matches and definitions respectively
that the server may send to the client.
This is for preventing DOS attacks.
See dictd.8 for more information
- ADDED: new keyword 'limit_queries'
limiting a number of queries that client may send to the server
This is for preventing DOS attacks.
See dictd.8 for more information
- ADDED: new keyword 'limit_childs' equal to old 'limit'.
'limit' is now deprecated. Use 'limit_childs' instead.
- ADDED: Two new search strategies, 'first' and 'last'.
They match first or last word only in a multi-word entries.
See dictd.8 for more information.
- ADDED: new keywords 'site_no_banner', 'site_no_uptime'
and 'site_no_dblist' for changing the way dictd answers on SHOW SERVER
command (dict -I)
See dictd.8 for more information.
- ADDED: support for the case-sensitive search.
For this database should be created with dictfmt --case-sensitive.
- 'site' keyword has been moved to 'global' section of dictd.conf file
Do not place it at the top level!
- removed: --test-XXX options. Use -i and --stdin2stdout for debugging.
dictfmt:
- FIXED: longopts passed to getopt_long as argument was not
ended with zeros. I even don't how this code could work
for so many years.
Affected dictfmt versions: 1.6.1-1.10.8
- ADDED: --index-data-separator option that allows
to set index and data parts of the headword in .index file
(first and fourth columns respectively) completely independantly.
That is, the first column in .index file can now be treated
as an index and an optional fourth columns - as a data, all this for
MATCH protocol command. See dictfmt.1 for more information.
- added: -i and -I for resorting .index files.
See dictd.8 for more information.
- added: By default a special headword 00-database-dictfmt-X.Y.Z
is generated, i.e. every created database is marked
"what version of dictfmt was used to create it".
added: --without-ver option for preventing this.
dictunformat:
- minor fixes and improvements for 4-column .index file input
See dictfmt --index-data-separator and
dictunformat --index-data-separator
dictfmt_index2suffix and dictfmt_index2word
- fixes, now these utilities are ready for 4-column input and
use 'dictfmt -i/-I' for resorting .index entries.
See dictfmt.1 for more information.
dict:
- ADDED: -f option that enables formatted output, i.e. output
convenient for postprocessing by standard UNIX utilities.
See dict.1 for more information.