New in 2.7
----------
* Bugfix release.
New in 2.6
----------
* added French translation contributed by Matthieu Sion
* added build script and instructions for compiling with Mingw under Windows
(contributed by Matthieu Sion)
* now accepts a simplified list append syntax:
option += "value"
insted of
option += {"value"}
* added flag CFGF_NO_TITLE_DUPES: multiple section titles must be unique
(duplicates raises an error, only applies to sections)
(suggested by Brian Fallik)
* fixed rpm builds, patch by Dan Lipsitt
* always installs pkg-config .pc script
* remove obsolete confuse-config script in favour of pkg-config
* fixed a bug reported by Josh Kropf with single sections with titles
* added patch that escapes values with quotes and backslashes when printing.
* fixed a memory leak in default values for string lists,
reported by Vineeth Neelakant.
* windows build files now only in separate zip distribution
New in 2.5
----------
* added flag CFGF_NODEFAULT (option has no default value)
* fixed cfg_set_validate_func() for sections, using the "|" syntax
* added a tutorial
* updated autoconf stuff, libconfuse installs with appropriate suffix now
* added data file for pkg-config (try 'pkg-config --libs libconfuse')
* updated confuse-config script (now only installed if pkg-config not found)
* added cfg_name() and cfg_opt_name() functions
New in 2.4
----------
* added option type CFGT_PTR as a user-defined type
* fixed building of shared libraries
New in 2.3
----------
* fixes compilation errors with gcc < 3.3
* options passed to cfg_init() are now dynamically duplicated, so it is no
longer necessary to declare the cfg_opt_t array static
* added tests using 'check' (a unit testing framework for C)
* added config script 'confuse-config'
New in 2.2
----------
* Allows more characters in an unquoted string (thanks Mike)
* added cfg_opt_get functions
* added cfg_opt_size function
* added support to print options to a file
* added print callback function per option
* simple options can be retrieved with the cfg_get functions (allows
using the cfg_print function for simple values)
* added validating callback function per option
New in 2.1
----------
* Reversed logic in cfg_getXXX functions, they now abort if given an
undeclared option name, and NULL/false if no value is set. Suggested
by Ademar de Souza Reis Jr.
* Sections without CFGF_MULTI flag now have default values
* The cfg_getXXX functions now accept an extended syntax for the
option name, try cfg_getxxx(cfg, "sectionname|optionname"). This way
one doesn't have to first get the section with cfg_getsec().
* Fixed two more memory leaks. (val->section and cfg->filename)
* Fixed unterminated string bug in replacement strndup function
* Added project files for MS Visual C++ 6.0
* Includes io.h on windows
* Fixed initialization of default values for lists, when given a NULL
string. Now initialized to the empty list. Noted by Juraj Variny.
* Setting a list to the empty list in the config file now possible.
* Appending to default values in a list is now ok.
* Hexadecimal escape sequences allowed in double-quoted strings
* Corrected line number with multi-line quoted strings
* Fixed undetected /*comment*/ (ie, without space between /* and the text)
* Forgot to fclose include file after use, found by James Haley
* Only include NLS support if gettext found in libc or preinstalled
* Documented the cfg_setlist and cfg_addlist functions
* The cfg_opt_setxxx functions no longer take a cfg_t parameter (unused anyway)
New in 2.0
----------
NOTE! Compatibility with earlier versions is broken.
* Changed cfg_flag_t from enum to int (should now compile with c++)
* Variable number of arguments to functions: function types should no
longer specify number of expected arguments in the initializer, the
callback should instead check the argc variable.
* Fixed the cfg_tilde_expand function
* Added documentation for the value parsing callback
* Changed the definitions of cfg_func_t and cfg_callback_t, the cfg
and option context are now both passed as parameters
* Fixed and extended the example programs
* Added a bunch of cfg_setXXX functions to set option values after parsing
* Some types renamed for consistency (cfgopt_t to cfg_opt_t, cfgval_t
to cfg_value_t, cfgbool_t to cfg_bool_t)
* cfg_free_val() renamed to cfg_free_value()
* Lexer symbols now uses prefix cfg_ to ease linking with other lexers
* Forgot to close the file in cfg_parse()
* Memory leaks fixed (checked with valgrind)
* Sections with same title are always overwritten
* Lists can now have (complete) default values in the form of a string
that is parsed in the same way as the config file (see doc + examples)
* Added support for building as a DLL on Windows
* Included project files for Borland C++ Builder 6.0
* Included project files for Dev-Cpp 5.0
* Included project files for MS Visual Studio
* Pre-built documentation now included in the source tarball
New in 1.2.3
------------
* fixed segfault due to uninitialized user-defined error function
* added callback support
New in 1.2.2
------------
* changed name to libConfuse (libcfg was way too common)
* Doesn't build shared libraries by default (only static)
* More swedish translations
* Implemented the cfg_free() function (previous versions had only a stub)
* New function: cfg_free_val()
* updated the manual
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>