2011-01-02 * added support for UndefinedXMLAttributes and UndefinedMetaTags config options. 2010-12-19 * fix bug in swish_lint.c where -c config was overriding command line options. Options are now parsed in the order specfied at the command line, so -c conffile should come before any overrides. 2010-11-03 * fix bug in looks_like_gz() where null pointer free attempt was made without first checking if there was a file extension. 2010-07-07 * built-in tokenizer now recognizes '_' as a valid word character. 2010-07-03 * refactor header.c parsing of PropertyNameAlias to allow for aliasing of built-in PropertyNames, adding new public function swish_property_get_builtin_id(). 2010-06-16 * fix IncludeConfigFile config directive. Now uses swish_fs_get_path() for values relative to the original config file. 2010-06-09 * XInclude support is now configurable. Set 0 in config to disable it. swish_lint can use -X0 to disable. * added -X and -x options to swish_lint. These can be used to set FollowXInclude and IngoreXMLNS, respectively, at run time. 2010-06-08 * add XInclude support, including a few new public functions: swish_fs_get_path() swish_buffer_concat() 2010-05-20 * revert change from 2010-05-16 because it caused unpredictable test failures on swish-e nightly build machine. 2010-05-16 * remove some dependencies on mbstowcs() and wcstombs(), which are locale-dependent. Still must have locale set to .UTF-8 though, because of towlower(). Some public functions are renamed. swish_locale_to_wchar() => swish_utf8_to_wchar() swish_wchar_to_locale() => swish_wchar_to_utf8() 2010-05-13 * added swish_err_msg() function and accompanying infastructure for error messaging. 2010-05-11 * quieted gcc 4.x warning for libxml2 xmlParserError() calls. 2010-05-09 * new Makefile targets for building a single libswish3.c file This new feature is used by the bindings/perl SWISH::3 module to bundle the libswish3.c and libswish3.h files with the CPAN distribution, to make it easier to install (no external dependency). 2010-05-05 * add new debug var SWISH_DEBUG_IO and use it in io.c. * SWISH::3 perl bindings now detect .gz extension and transparently decompress like swish_lint et al do. * swish_io_slurp_gzfile_len() signature changed. It now takes a pointer to the original file length, which will be updated to the actual buffer length post-decompress. 2010-04-05 * fix bug where bump_word was being applied too aggressively. 2010-02-16 * turn SWISH_PARSER_WARNINGS on by default, rather than off. This effectively "re-throws" libxml2 parser warnings and errors via SWISH_WARN(). Turn it off by setting SWISH_PARSER_WARNINGS=0 env variable. * fix bug in utf8 tokenizer where lowercase version of string is different byte length than uppercase version. * standardize (and document) libswish3 handling of document encodings. 2010-02-07 * rename reset_bool_flags() to reset_headmaker() in header.c and fix case where illegal placed text in a config file could case the parser to segfault. * xmlns support added for config files. 2010-01-05 * changed default Property->sort flag to SWISH_TRUE to match 2.x behavior. 2009-12-15 * added binmode flag to the io_slurp* functions. The default is false, which will remove all NUL bytes from the buffer after slurping. 2009-12-04 * added swish_string_to_boolean() function * added documentation to libswish3 about reserved Configuration Directive names 2009-10-17 * zlib now required. * added transparent .gz file decompression via swish_io_slurp_gzfile_len() * changed signature for swish_io_slurp_file() * added is_gzipped flag to docinfo struct 2009-10-12 * added --Facets, --begin and --max options to swish_xapian 2009-10-08 * daily builds available at http://swish-e.org/devel/daily.html * added multiple-value sorting to swish_xapian, supporting functions in swish_StringList space