Canfigger is a lightweight C language library designed to parse configuration files. It provides functionality to read them and represent their contents as a linked list of key-value pairs, along with associated attributes for each
pair.
Homepage
Download
Recent Releases
0.3.117 Apr 2026 14:04
minor feature:
* Fix Windows build
+ Add canfigger_config_dir(), canfigger_data_dir(), canfigger_path_join()
* bugfix: Last line without trailing newline was silently dropped
* bugfix: Memory leak root list not freed on tmp_line allocation failure
* bugfix: free_incomplete_node leaked the attributes struct
* bugfix: add_key_node failure on 2nd+ node corrupted previous node's key
* bugfix: isspace() called on plain char (undefined behaviour); cast to
unsigned char
* Strip UTF-8 BOM so it doesn't corrupt the first key
* Refactor read_entire_file: single exit point, checked fseek return values
* Prefix all error messages with "canfigger:"
* Add tests: bom, no_trailing_newline; fix unicode test missing count/null
assertions
+ Add canfigger_version.h (generated at build time) exposing
CANFIGGER_VERSION_MAJOR, CANFIGGER_VERSION_MINOR, CANFIGGER_VERSION_PATCH
+ Add CANFIGGER_CHECK_VERSION(maj, min) macro to canfigger.h for
compile-time version checks
0.3.029 Feb 2024 06:41
minor feature:
* use dynamic memory allocation for keys, values, and attributes
* canfigger_free() replaced with canfigger_free_current_key_node_advance()
- canfigger_free_attr() removed
* use 'canfigger_free_current_attr_str_advance()' instead of
'list- attr_node = list- attr_node- next'
0.2.005 Jan 2022 21:27
minor feature:
implement support for multiple attributes (breaking change)
0.1.228 Dec 2021 05:48
minor feature:
Code maintenance/refactor
Minor adjustments to meson.build so that canfigger can be used as a meson subproject
0.1.125 Jun 2021 03:15
minor feature:
The docs now install when 'ninja install' is run
.
If doing an early return due to error, the file descriptor now gets.
Properly.
0.1.006 Jun 2021 21:46
minor feature:
Initial release
|