0.9.7 Release
- guid: 39F907DA-8B5B-4984-9D19-33BAB7B71B3D
- author: Mihael Pranjić
- pubDate: Fri, 09 Jul 2021 10:19:29 +0200
- shortDesc: FUSE Tool, TOML Improvements, ElektraSettings GSettings Bindings
We are proud to release Elektra 0.9.7.
What is Elektra?
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.
You can also read the news on our website.
You can try out the latest Elektra release using our docker image elektra/elektra.
This is the quickest way to get started with Elektra without compiling and other obstacles, simply run:
docker pull elektra/elektra
docker run -it elektra/elektra
Highlights
We added an experimental preview of the Filesystem in User Space FUSE tool. This tool enables the inspection and modification of the KDB, in the form of a classical filesystem. (Alexander Firbas)
ElektraSettings GSettings Backend
The experimental ElektraSettings GSettings backend has been updated and is working well with GNOME 40. We do not recommend to use it on production systems yet, but we have been testing ElektraSettings as a replacement for dconf
successfully and want to share the progess with you. If you want to try ElektraSettings back up all your data first. (Mihael Pranjić)
TOML Improvements
Multiple critical bugs have been fixed in the experimental TOML
plugin see below. We are currently working towards using the TOML
plugin as the default storage plugin for Elektra. (Klemens Böswirth and Jakob Fischer)
Plugins
The following section lists news about the plugins we updated in this release.
- Introduce email address validation plugin based on regex. (a-kraschitzer)
Resolver
- Fix invalid cache key name. (Mihael Pranjić)
Length
- Implement a plugin that validates that a string length is less or equal to given number. (Philipp Oppel)
Blacklist
- Implement a blacklist plugin that rejects values specified in a metadata array. (Robert Sowula)
TOML
- Fixed a bug (#3896) that caused the
toml
plugin to swallow the first letter of
all keys (after the namespace), if the parent key was a root key (e.g. user:/
). (Klemens Böswirth)
- The
type
metakey is now set for numbers on reading. (Jakob Fischer)
- Rewrote some error messages, to make them less technical. (Jakob Fischer)
- Fixed parsing of floats/empty keynames/multiline strings. (Jakob Fischer)
Python
- Fix format string overflow and add error checking when appending to
sys.path
. (Mihael Pranjić)
Libraries
The text below summarizes updates to the C (and C++)-based libraries of Elektra.
Core
- A few rare bugs (mostly related to empty keyname parts
/%/
) in the keyname validation and canonicalization logic
have been fixed. (Klemens Böswirth)
- Fix default backend key name for cache compatibility. (Mihael Pranjić)
Bindings
Bindings allow you to utilize Elektra using various programming languages. This section keeps
you up-to-date with the multi-language support provided by Elektra.
JNA
- Currently the binding's automated clean-up of native keys and key sets is deactivated until JNI segmentation fault issues are resolved in an upcoming release. After these issues have been resolved, manual clean-up of native resources will be discouraged. Therefore the
Key::get*AndRelease
convenience methods introduced with the last release have been removed. (Michael Tucek)
- Upgrade Gradle to 7.1.1. (Mihael Pranjić)
Gsettings
- Fix user and default (system) namespaces and key names. (Mihael Pranjić)
- Rewrite
dbus
change notification mechanism. (Mihael Pranjić)
Scripts
- Add a script that automates the process of inserting source archive hashsums and Git statistics into the release notes during a release. (Robert Sowula)
Documentation
- JNI documentation updates and small fixes. (Markus Raab)
- Small updates in notification tutorial. (Markus Raab)
- Add tutorial about writing specifications. (Aaron Abebe aaron.abebe@gmail.com)
- Change GPG keyserver for receiving the apt key from keys.gnupg.net to keyserver.ubuntu.com (Robert Sowula)
- The man pages now use the date of the last change recorded in git. (Klemens Böswirth)
Tests
- Upgrade GoogleTest frameworks to version 1.11.0. (Mihael Pranjić)
- Add additional test cases for module
key
. (@lawli3t)
- Add additional test cases for module
keyname
. (@lawli3t)
- Add additional test cases for module
keyvalue
. (@lawli3t)
- Add tests for module
keyset
. (@lawli3t)
Packaging
- Add packages for following bindings:
glib
, io_ev
, io_glib
and io_uv
. (Robert Sowula)
Build
Docker
- Upgrade Alpine Linux images to 3.14.0. (Mihael Pranjić)
Infrastructure
Jenkins
- Add the deployment of the website to the release pipeline, therefore removing the need to wait until the main pipeline succeeds after a release. (Robert Sowula)
- Restructure the release job stages to make it more failsafe and enable a re-run without any version conflict until the last stage. (Robert Sowula)
- Fix invalid package artifact path in release pipeline. (Robert Sowula)
- Clean Jenkins workspaces after builds. (Mihael Pranjić)
Outlook
We are currently working on following topics:
- Elektrify KDE (Dardan Haxhimustafa), (Felix Resch) and (Mihael Pranjić)
- 1.0 API (Stefan Hanreich) and (Klemens Böswirth)
- Improve Java Development Experience (Michael Tucek)
- Elektrify GNOME (Mihael Pranjić)
- Continious Releases (Robert Sowula)
- KDB access using FUSE (Alexander Firbas)
- Default TOML plugin (Jakob Fischer) and (Klemens Böswirth)
- Improve Plugin Framework (Klemens Böswirth)
- Improve 3-way merge (Dominic Jäger)
- Shell completion (Ulrike Schäfer)
- Ansible module (Thomas Waser)
Statistics
We closed 40 issues for this release.
About 18 authors changed 307 files with 6547 insertions(+) and 1914 deletions(-) in 304 commits.
Thanks to all authors for making this release possible!
Join the Initiative!
We welcome new contributors!
Read here about how to get started.
As first step, you could give us feedback about these release notes.
Contact us via our issue tracker.
Get the Release!
You can download the release from here
or GitHub
The hashsums are:
- name: elektra-0.9.7.tar.gz
- size: 7712448
- md5sum: 4355e7df0dcf4178974097604f996747
- sha1: c418d344d72879dd2b3fd6fa8e9831c921cfaba5
- sha256: 12b7b046004db29317b7b937dc794abf719c400ba3115af8d41849127b562681
The release tarball is also available signed using GnuPG from
here or on
GitHub
The following GPG Key was used to sign this release: 12CC44541E1B8AD9B66AFAD55262E7353324914A
Already built API documentation can be found here
or on GitHub.
Stay tuned!
Subscribe to the
RSS feed
to always get the release notifications.
If you also want to participate, or for any questions and comments
please contact us via our issue tracker on GitHub.
Permalink to this NEWS entry
For more information, see https://libelektra.org.
Best regards,
Elektra Initiative