$darkmode
Elektra 0.11.0
|
We are proud to release Elektra 0.8.23.
In 717 commits 11 authors changed 835 files with 31144 insertions(+), 21773 deletions(-).
Elektra serves as a universal and secure framework to access configuration settings in a specified, global, hierarchical key database. For more information, visit https://libelektra.org.
For a small demo see here:
You can also read the news on our website
To keep persistent configuration settings in sync with the configuration settings of applications, notifications are needed. For notifications it is important that they do not block the execution of the applications. In Elektra we achieve this using transport plugins.
Elektra's notification feature has received its first transport plugin pair: D-Bus. Transport plugins provide a link between applications using Elektra. These plugins send and receive notifications when a key is modified within the key database. The existing dbus
plugin has been modified to use an asynchronous I/O binding for sending messages, if available. The new dbusrecv
plugin is responsible for receiving messages sent from the dbus
plugin and other sources with the same message format.
For more details see the notification tutorial or the example applications.
Thanks to Thomas Wahringer.
The goal of the Web UI is to provide safe and unified access to all configuration settings of a system. Different to other UIs, it generates its interface according specifications as found in Elektra.
For example, if a configuration setting only has a number of choices, you get exactly these choices within the user interface.
To get outstanding usability, Web UI now provides:
Furthermore:
Note that new version of the Web UI requires Elektra 0.8.23 or later.
Thanks to Daniel Bugl.
We started to overhaul our build system to improve build times and responsiveness. It focuses heavily on containerisation to improve hardware utilization.
If you are interested in #devops
have a look at our Jenkinsfile.
Daily builds Debian packages for Stretch are available again in our stretch repository. Add it to your sources.list
:
Thanks to Lukas Winkler.
We added even more functionality, which could not make it to the highlights:
kdb ls
now has -0
option to allow key names with newlines (needed for Web UI)We improved the documentation in the following ways:
.
at end of short helpcheck/type/min
and check/type/max
are deprecatedAs 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).
We removed:
12
from kdb mv
from docuWe changed:
kdb get
, kdb mv
and kdb cp
now use error code 11
if keys are not foundkdb cp
and kdb mv
now fail instead of doing something unexpected, thanks to René Schwaiger for reportingShell scripts:
These notes are of interest for people maintaining packages of Elektra:
spec
and list
plugin is required. So if ENABLE_TESTING
is checked, CMake checks the presence of a storage, a resolver, the list and the spec plugin, thanks to René SchwaigerWe added:
kdbnotificationinternal.h
, kdbioplugin.h
.kdbio_glib.h
and kdbio_uv.h
libelektra-dbusrecv.so
build-web
, run-elektrad
, and run-web
testmod_dbusrecv
ENABLE_ASAN
in the constants pluginkdb-run-elektrad.1
and kdb-run-web.1
We removed:
Base64.pdf
is not installed anymoredoc_docker_jenkinsnode_README_md.3elektra
, doc_docker_README_md.3elektra
, and doc_vagrant_README_md.3elektra
The website is generated from the repository, so all information about plugins, bindings and tools are always up-to-date. Furthermore, we changed:
These notes are of interest for people developing Elektra:
. run_env
is a script to be sourced from the build directory. It sets environment variables, so that Elektra from the build directory is used (instead of the installed one).add_plugin
by adding TEST_README
. Furthermore TEST_REQUIRED_PLUGINS
allows us to specify which additional plugins are required, thanks to René Schwaigerconst
was added to exceptions in catch blocks thanks to René SchwaigerThe CMake functions
add_plugin
add_msr_test
add_msr_test_plugin
, and the newadd_shell_recorder_test
now allow you to specify a list of required plugins for Shell Recorder and Markdown Shell Recorder tests.
stderr
with the text following the directive STDERR:
, thanks to René SchwaigerSTDERR:
in a Markdown Shell Recorder test empty:. The Markdown Shell Recorder will then check if the command printed nothing to the standard error output.
-p
, and always cleans up the protocol, thanks to René Schwaigermake run_memcheck
fail valgrind will now set an exit-code which will get picked up by make, thanks to Lukas WinklerLD_LIBRARY_PATH
in all tests removing the need to specify it for running ctest, thanks to Lukas WinklerRUN_SERIAL
property to all tests that can not be run in parallel, thanks to Lukas Winklerctest -j
is now possible, thanks to Lukas Winklerdoc/CODING.md
.Many problems were resolved with the following fixes:
dump
, resolver
, list, and spec), all test of the test suite now finish successfully again, thanks to René Schwaigerkdb-test
type
next to check/type
-Werror
), thanks to René SchwaigerElektra Initiative are the people behind Elektra. Our goal is to build up expertise with configuration settings and improve the situation in the FLOSS landscape. To learn more about the needs of configuration-wise non-trivial FLOSS applications, we have workshops. After a successful workshop with the LCDproc's maintainer, the next Workshop will be with people from KDE.
We will use the opportunity of Akademy being in Vienna. We already got positive feedback from kconfig maintainers (David Faure and Aleix Pol).
If you are interested, you can sign up. We are looking forward to an informative, interactive and interesting workshop!
We are currently working on following topics:
You can download the release from here or GitHub
The hashsums are:
The release tarball is also available signed by Markus Raab using GnuPG from here or GitHub
Already built API documentation 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 Markus Raab by email using elekt. ra@m arkus -raa b.org
For more information, see https://libelektra.org
Best regards, Elektra Initiative