* Rework backends/yaml/yamlconf.cpp loadConfig to a stack-based parser producing fully indexed paths for arbitrary nested sequences/mappings
* Add backends/yaml/yamlconf.cpp saveConfig to serialize the config tree back to YAML, including sequence-of-mappings and nested sequences
* Escape backslashes and quotes in YAML scalar output (yamlconf.cpp quoteValue)
* Make backends/yaml/yamlconf.cpp and src/conf.cpp throw confplus::ConfException instead of raw string literals on I/O/parser failures
* Derive confplus::ConfException from std::exception (src/exception.h)
* Fix src/conf.cpp delKey to recursively search the whole config tree instead of only the top-level sibling list
* Add ConfigData-relative overload of Config::getKey (src/conf.cpp, src/conf.h) for resolving paths under a given node
* Rework backends/regedit/regedit.cpp saveKeyRecursive to map every confplus path segment onto its own native registry subkey, replacing the sequence-of-mappings transposition into parallel numeric-indexed values
* Rework backends/regedit/regedit.cpp loadsubKey subkey enumeration to build native nested config paths per subkey instead of transposing numeric subkeys into parallel arrays
* Install conf.h, backend.h and exception.h headers from src/CMakeLists.txt so consumers of the installed package can include them
* Add optional Windows regedit backend wiring in backends/CMakeLists.txt (REGEDIT_FOUND)
-- Jan Koester <jan.koester@tuxist.de> Sat, 27 Jun 2026 00:00:00 +0200