July/August in KDE PIM

Since the last report, dated the third of July, Version 21.08 (aka 5.18) of all the PIM applications was released. 31 contributors made more than 1,500 updates in the GitLab repos. And work continued apace on preparations for the new release of the Qt backbone on which KDE software relies.

Here is the news about recent activity affecting various components of the Personal Information Management system.


Glen Ditchfield continues to improve this tool for developers.

  • The Database Browser now fetches tables as soon as the user selects them.
  • The Job Tracker display of job creation timestamps has been revamped.

Common Libraries

Friedrich W. H. Kossebau made the following notable improvement to common core logic in release 21.08.

  • CreateResource class: ensure that all created resources & agents store the new settings data before reconfiguring themselves, so those data are available/accessible everywhere.
  • A similar patch was applied to the KMail Account Wizard. Friedrich has also been working to bring the automated unit tests for PIM components up to date. That effort is still in its early stages. If you enjoy a challenge, you may wish to help him verify that the revised unit tests are working correctly.


David Jarvie has been busy this summer.

  • Added a date selector option so the alarm list view can be filtered for a particular date.
  • KAlarm now shows a hamburger menu when the menu bar is hidden. The hamburger menu provides access to all KAlarm functions.
  • Fixed various issues when using right-to-left languages like Hebrew.
  • Patched the ‘Choose sound file’ dialog to make it work right on the XFCE desktop. The bug was caused by QFileDialog filters acting differently on different desktops. (Bug 437217)
  • Fixed alarms not triggering when a reminder has been configured. Also fixed follow-up reminders coming after the main event, which were not being deleted.(Bug 440200)
  • Repaired crash on KAlarm start-up when using multiple screens on Wayland. (Bug 439853)


Claudio Cambra continues to improve the appearance and functionality of the Kalendar component of PIM. Thank you, Claudio! Please stick with us after the Google Summer of Code project has been completed. We know you’ll continue doing great things. Your new KDE pals will be watching your blog, that’s certain.

MS® Exchange Server

Krzysztof Nowicki made a number of improvements and bug fixes to the Exchange (EWS) resource.

  • Implemented “chunked requests” for most operations on multiple items. Internally, Exchange doesn’t allow a single request to operate on more than 100 items. This has caused failures when trying to delete hundreds of e-mails in one operation, for example. With this change the operation is split into multiple requests.
  • Reworked server-triggered updates. These now run in the background, and don’t block the resource’s state machine interface with the Akonadi server. This makes the Exchange mailbox much more responsive.
  • Reduced the number of forced collection synchronizations resulting from conflicts with locally modified items. This significantly reduces unnecessary communication with the server, especially for large collections.
  • Added basic handling of the “server busy” state, which is encountered when Exchange receives too many requests from the EWS resource and needs to throttle back. Instead of hammering the server with requests, the resource now gracefully goes offline for a little while, then retries the operation later.
  • Temporary failures during collection syncs no longer result in a fallback to a full sync. Normally a failure during an incremental sync escalates to a full sync, but unrelated errors, such as expired OAuth authentications or server is too busy, should not trigger a full sync.
  • Collection sync state was moved from the configuration file to a list of per-collection attributes.
  • Implemented progress reporting for many operations, including the long-lasting full collections sync job.
  • Fixed device key OAuth authentication, which was broken by Microsoft® server-side changes.


Ingo Klöcker says that the main focus of development work in Kleopatra was on usability and accessibility improvements. Noteworthy changes include:

  • Let the user easily mark a certification key as their own when using it to certify another key.

Usability and accessibility improvements for Pinentry-qt:


Laurent Montel has been busy. Besides the normal administrative tasks (creating new branches in the repo, etc.) he has

  • Continued to prepare for KF6 (migrating deprecated code).
  • Continued to implement “confirm delete email”. This new plugin helps to ensure that users do not inadvertently delete messages they really wish to keep.
  • Updated PIM Data Exporter to include the configuration file for the new plugin.
  • Continued to patch some bugs.
  • Fixed bug 439218 – Quoted strings containing commas or brackets are not parsed correctly, causing message sending to fail.
  • Fixed bug 440041 – Sieve editor does not show the line numbers correctly.

David Bryant has at long last finished rewriting the KMail Handbook. It was a big job, because the last time anybody revised the Handbook was back in 2013. If there are any PIM components that could use some new or revised documentation, please let David know.


Volker Krause informs me that there’s a proposal for reworking how event reminders are handled. The proposal aims to unify this process in all our calendaring applications, and also for both desktop and mobile platforms. If the proposed changes affect you, feedback on the kde-pim mailing list is very welcome! There is also a Reddit thread where you can weigh in.

Carl Schwan has been busy improving various and sundry user dialogs.

Glen Ditchfield also made several notable contributions to KOrganizer.

  • A to-do’s completion status can now be changed after the item has been marked “complete”. (bug 397721)
  • The month print-out can now color events using their tags’ colors.
  • Journal entries can be marked “private” or “confidential”.
  • The journal print-out can exclude private and confidential entries.
  • The journal print-out is now sorted by date.
  • The Agenda view shortens holiday names to fit in the column headers when the columns are narrow. (bug 225498)
  • The Search dialog accepts more keyboard shortcuts. (bug 315894)

Help us make Kontact even better!

Take a look at some of the junior jobs that we have! They are simple, mostly programming tasks that don’t require any deep knowledge or understanding of Kontact, so anyone can work on them. Feel free to pick any task from the list, then get in touch with us! We’ll be happy to guide you and answer all your questions. Read more here …