We are proud to release Elektra 0.8.21.
Elektra serves as a universal and secure framework to access configuration settings in a global, hierarchical key database. For more information, visit https://libelektra.org.
The news can be read rendered at our web server.
In this release 8 authors created 307 commits and changed 217 files (5227 insertions, 1914 deletions). The highlights of this release are:
We are happy to announce that there will be a talk about Elektra in one of the main tracks of Fosdem 2018:
And a second talk in the Config Management DevRoom:
See you in Brussels at 3 and 4 February 2018!
I will also be present in the Config Management Camp directly after Fosdem in Gent.
I am proud to release a book with the title "Context-aware Configuration" describing:
The Fosdem talk will cover some highlights from the book.
A huge thanks to everyone involved in the questionnaire survey, without you we would not have been able to collect all the information that led to the requirements for Elektra.
The LaTeX sources are available here and the compiled book can be downloaded from here.
crypto are now considered stable. They are no longer tagged as
crypto encrypts individual values within configuration files,
fcrypt encrypts and/or signs the whole configuration file.
For this release Peter Nirschl prepared a demo showing Elektra's cryptographic abilities:
Thanks to Peter Nirschl for this great work!
We plan to switch to INI as default storage instead of Elektra's infamous internal dump format.
As preparation work we implemented the
dini plugin which transparently
dump files to
ini files on any write attempt.
Furthermore, we fixed most of the INI bugs which blocked INI to be the
Due to this progress we will likely switch to INI as default starting
with the next release. If you want to, you can switch now by compiling
Or simply switch for your installation with:
sudo kdb change-default-storage dini
If you are already using
ini as default, changing to
dinialways checks if a file uses the
dumpformat, unless the
dumpplugin is not installed.
NOTE: INI (dini) was not completely ready for 0.8.21 thus we kept
diniis currently an experimental plugin.
We added even more functionality, which could not make it to the highlights:
kdb rmnow supports
-fto ignore non-existing keys
%as profile name to disable reading from any profile
The new function
int elektraArrayDecName (Key * key);
decreases the index of an array element by one. It can be used to reverse the effect of
thanks to René Schwaiger
We improved the documentation in the following ways:
jniplugin. The ReadMe now also contains information about the Java prerequisites of the
jniplugin on Debian Stretch.
jenkins build all pleaseand
jenkins build doc pleasewere documented thanks to René Schwaiger
As always, the ABI and API of kdb.h is fully compatible, i.e. programs compiled against an older 0.8 version of Elektra will continue to work (ABI) and you will be able to recompile programs without errors (API).
All unit tests of 0.8.20 run successfully with Elektra 0.8.21. There are, however, some additions and changes in rarely used interfaces:
kdbinvoke.hinterface: make structure private and complete API
kdbopmphm.hgot nearly rewritten
These notes are of interest for people maintaining packages of Elektra:
intercept-fsis now marked more clearly as experimental
jniplugin is again experimental because it does not work with some Java systems. For the
luaplugin there are also problems with some Lua systems.
These notes are of interest for people developing Elektra:
jenkins build all pleasethanks to René Schwaiger. Please use it carefully, since it puts our build server under heavy load.
tests/icheck.suppressionto disable already checked API changes.
kdbis not available (
Many problems were resolved with the following fixes:
dbus_connection_unref(NULL)API thanks to Kai-Uwe Behrmann
std::bindthanks to Nick Sarnie
kdb info -ldoes not open
change-storage-symlinknow correctly use
elektraArrayValidateName, thanks to René Schwaiger
The Order Preserving Minimal Perfect Hash Map (OPMPHM) is ready to extend
ksLookup. The implementation of the randomized Las Vegas hash map
algorithm is in a final stage and the heuristic functions that ensure time and space optimality are backed up by benchmarks.
Thanks to Kurt Micheli, the next release will include the OPMPHM!
You can download the release from here or GitHub
The hashsums are:
The release tarball is also available signed by me using GnuPG from here or GitHub
Already built API-Docu can be found online or GitHub.
Subscribe to the RSS feed to always get the release notifications.
For any questions and comments, please contact the issue tracker on GitHub or me by email using email@example.com.
Permalink to this NEWS entry
For more information, see https://libelektra.org
Best regards, Markus Raab for the Elektra Initiative