* Thu May 08 2025 schubi@suse.com
- Update to version 0.7.9:
* Comments can include comment character tag multiple time.
* Fixed static library declaration in meason
* Fixed versioning in cmake
* Fri Apr 25 2025 schubi@suse.com
- Update to version 0.7.8:
* Fix memory access if there are a comment character inside a comment.
* Mon Jan 13 2025 schubi@suse.com
- Update to version 0.7.7:
* Additional fix for parsing empty config files (bsc#1234405).
* Fri Dec 13 2024 schubi@suse.com
- Update to version 0.7.6:
* Do not try to parse files with name like ".." and "." (#227)
* using econf_readConfig in econftool
* Mon Dec 09 2024 schubi@suse.com
- Update to version 0.7.5:
* Removed PATH_MAX (Issue #220)
* Add ROOT_PREFIX as option to replace TESTSDIR hack
* CI: valgrind doesn't work together with sanitizers
* econf_readConfig: don't allocate econf_file in error case
* tests: use cleanup to free key_file for some tests
* libeconf: don't allocate array from size 0
* libeconf: fix use of uninitialized stat result if file does not exist
* econftool: dynamically allocate xdg_config_dir
* Disable clang <= 17, enable valgrind
* Disable whitespace check
* Disable deprecation warning for econftool and example
* Add new CI with different compilers and valgrind
* Test econf_readConfig()
* Disable deprecation warning for tests
* Implement econf_*freep functions for automatic cleanup
* Cleanup *free functions
* Wed Oct 02 2024 schubi@suse.com
- Updated license in the spec file to MIT.
* Thu Sep 26 2024 schubi@suse.com
- Update to version 0.7.4:
* Fixed memory leaks (#219)
* Fixed: econf_readDirs crashes if one of the paths is NULL (#211)
* Added links to man page. E.g. "man econf_readConfig" is working now.
* Handle groups correctly which do not have any key entry.
* Wed Sep 18 2024 schubi@suse.com
- Update to version 0.7.3:
* Groups handled in an own list (#218)
* Add econftool as dependency of its tests
* Simplify snprintf call
* Remove unused functions and reduce variable visibility (#213)
* Fix typos (#212)
* Fri Jun 14 2024 schubi@suse.com
- Update to version 0.7.2:
* Do not check errno while float conversion. This is a false
alarm for S390 and PPC (#210)
* Mon Jun 10 2024 schubi@suse.com
- Update to version 0.7.1:
* Improved error handling while parsing values with the wrong format.
Added new return value ECONF_VALUE_CONVERSION_ERROR.
* Setting parsing options via econf_file struct.
see econf_newKeyFile_with_options. These options will be used by
econf_readConfig and econf_readConfigWithCallback.
Following options are supported:
JOIN_SAME_ENTRIES (default 0)
Parsed entries with the same name will not be replaces but
will be joined to one entry.
PYTHON_STYLE (default 0)
E.G. Identations will be handled like multiline entries.
PARSING_DIRS (default /usr/etc/:/run:/etc)
List of directories from which the configuration files have to be parsed.
The list is a string, divides by ":". The last entry has the highest
priority. E.g.: "PARSING_DIRS=/usr/etc/:/run:/etc"
CONFIG_DIRS (default <empty>)
List of directory structures (with order) which describes the directories
in which the files have to be parsed.
The list is a string, divides by ":". The last entry has the highest
priority. E.g. with the given list: "CONFIG_DIRS=.conf.d:.d" files in
following directories will be parsed:
"<default_dirs>/<config_name>.conf.d/"
"<default_dirs>/<config_name>.d/"
"<default_dirs>/<config_name>/"
* CAUTION: From now on every econf_file element MUST be intialized if
econf_readConfig and econf_readConfigWithCallback is used.
Either with NULL or:
econf_file *key_file = NULL;
if (error = econf_newKeyFile_with_options(&key_file, "PYTHON_STYLE=1"))
{
fprintf (stderr, "ERROR: couldn't create new key file: %s\n",
econf_errString(error));
return 1;
}
error = econf_readConfig (&key_file,
"foo",
"/usr/lib",
"example",
"conf",
"=", "#");
Version: 0.3.5+git20200203.3144b69-bp152.1.8
* Mon Feb 03 2020 rbrown@suse.com
- Update to version 0.3.5+git20200203.3144b69:
* Release version 0.3.5
* Use float.h instead of obsolete gnuism values.h
* Remove gnuism (strdupa)
* Check for empty value (NULL pointer) before calling strdup.
* Tue Jan 21 2020 rbrown@suse.com
- Update to version 0.3.4+git20200121.febebf2:
* Release version 0.3.4
* Fix buffer overflow in econf_readDirs
* Fix parsing of quoted strings, and values starting with delimiters
* tests: add test for quoted strings
* tests: tst-configdirs5: fix config dir paths
* Mon Oct 28 2019 iforster@suse.com
- Update to version 0.3.3+git20191028.3ac14ce:
* Release version 0.3.3
* Reset *key_file to NULL after free
* Thu Sep 26 2019 kukuk@suse.com
- Update to version 0.3.2+git20190926.fea4a03:
* Release version 0.3.2
* Fix merging an empty file (#105)
* Add test cases for merge function
* Tue Sep 24 2019 rbrown@suse.com
- Update to version 0.3.1+git20190924.822cf5b:
* release version 0.3.1
* Set delimiter in readFile
* Change parser interface to store file name and line numbers per key
* Update ccpp.yml
* Fri Sep 06 2019 kukuk@suse.de
- Update to version 0.3.0+git20190906.0e60a88:
* Ensure LICENSE, README, and TODO are included in the release tarball
* Rewrite set*ValueNum functions to avoid libm usage and add error checking
* Move src/*.c to lib and release version 0.3.0
* Thu Sep 05 2019 kukuk@suse.de
- Update to version 0.3.0+git20190905.0ca8fe2:
* Merge doc changes from parlt91 (pull rq#73)
* Implement econf_get*ValueDef functions: if key is not found, a provided default is returned.
* Differentiate between no value provided and empty value provided
* Remove obsolete check for comments
* Enhance and adjust test cases
* Remove obsolete check for comments
* Wed Sep 04 2019 kukuk@suse.de
- Update to version 0.2.0+git20190904.03fa5b4:
* Enhance and adjust test cases
* Update ccpp.yml
* Update ccpp.yml
* Update ccpp.yml
* Wed Sep 04 2019 kukuk@suse.de
- Update to version 0.2.0+git20190904.989df9f:
* Remove debug printf
* Wed Sep 04 2019 kukuk@suse.de
- Update to version 0.2.0+git20190904.c9c1820:
* Implement alternate file parser solving the problems with group entry detection.
* Add new parse error error code
* Bool values read from a config file are not sanitzied, so we need to do that in the getBoolValueNum function, too.
* Only use <file>.<suffix>.d directories
* Release version 0.2.0
* Add an explanation about this project.
* Check for NULL pointer arguments
* Fix error return value
* Fix typo in comment
* Add test case for reading login.defs with data from util-linux test suite
* Mon Sep 02 2019 kukuk@suse.de
- Update to version 0.0.0+git20190902.dd17c11:
* Fix int64 variables on 32bit architectures
* Sat Aug 31 2019 kukuk@suse.de
- Update to version 0.0.0+git20190831.fb7c1bb:
* Rewrite econf_readDirs - don't assume suffix is ".conf" - Read files and directories in correct order
* Fri Aug 30 2019 kukuk@suse.de
- Update to version 0.0.0+git20190830.04ba053:
* Make clear that the API and ABI of the three functions econf_newIniFile, econf_newKeyFile, econf_writeFile are not stable yet.
* Fix getGroups argument types and add several test cases for this.
* Fix cppcheck and compiler warnings
* Thu Aug 29 2019 kukuk@suse.de
- Update to version 0.0.0+git20190829.a1479b1:
* Make comment argument an array, so that we can support more than one comment character in the future.
* Change the API
* Fix size_t as return value of getc()
* Thu Aug 29 2019 kukuk@suse.de
- Update to version 0.0.0+git20190829.209219e:
* Convert all functions to new error API
* Convert econf_newKeyFile provide the error via return code
* Wed Aug 28 2019 kukuk@suse.de
- Update to version 0.0.0+git20190828.74eeb32:
* Fix tst-arguments3 and tst-arguments4 and only use error return code.
* Bug fixes for new API
* Change API of econf_get* and econf_set* functions to return error code direct.
* Fix some compiler warnings
* Prevent possible crash when parsing 0xFF
* Add "--enable-compiler-warnings" option to enable much more GCC compiler warnings
* Fix more cppcheck warnings
* Fix github actions build
* Update bin/Makefile.am to work with Asan
* Add missing tst-getconfdirs4-data to EXTRA_DIST
* Fix some cppcheck warnings
* Don't ignore getline return value
* Add free for getStringValue in tst-group1
* Remove XFAIL for tst-groups1
* Update example.c to free after getStringValue
* Add addbrackets for getValue functions
* tst-getconfdirs4: make sure, only a file in /etc/ and not in /usr/etc works, too.
* Tue Aug 27 2019 kukuk@suse.de
- Update to version 0.0.0+git20190827.5ed5492:
* Mark all input char pointer as const in the official API
* Tue Aug 27 2019 kukuk@suse.de
- Update to version 0.0.0+git20190827.b243e6c:
* getStringValueNum returns a newly allocated string or NULL in error case.
* Tue Aug 27 2019 kukuk@suse.de
- Update to version 0.0.0+git20190827.8374759:
* Fix missing return
* Remove XFAIL for tst-setgetvalues1
* Fix representation of float and double values
* Add preliminary test case for group handling
* NULL terminate string returned by addbrackets
* Fix addbrackets function
* Mon Aug 26 2019 kukuk@suse.de
- Update to version 0.0.0+git20190826.99b6bf3:
* Add more "const".
* Fix setString and setBoolean
* Add test suite which sets and gets all possible kind of types. Some are failing, so mark this test as XFAIL.
* Start marking some string arguments/results as const
* Optimize some strdup away
* Mark econf_write_key_file as ALPHA as the API is not stable