May/June in KDE PIM
Following Dan here’s the summary of what happened around KDE PIM in the last two months. While the focus was mainly on the 20.04.x maintenance releases and KDE’s source code hosting and review systems migrated to a Gitlab instance during that time, development continued at full steam with more than 1,800 changes by 34 contributors.
KMail
- Fix parsing email headers with a name that is a prefix of a well-known header.
- Fix an extra space character being added to UTF-8 encoded attachment file names (bug 362650).
- Add support for displaying generic Apple Wallet passes, rather than crashing when encountering one as an attachment (bug 422325).
- Fix configuration changes in maildir accounts not being propagated (bug 415922).
- Fix HTML replies being broken in some cases (bug 421908).
- Allow to show the folder an email is in message list and message tool tips (bug 420644).
- Fix empty envelope
From
in some outgoing emails (bug 420766).
KOrganizer
- Display recurring to-dos on their due date/time in the agenda view.
- Display all-day to-dos on their due date in the agenda view (bug 417982).
- Show correct icon names for recurring to-dos.
- Fix serialization of recurring to-do’s start date (bug 345565).
- Fix crash when deleting an event template (bug 421873).
- Show all available holiday regions in KOrganizer configuration dialog.

- Improve tool tips for to-dos (bug 360730).
- Remove time-of-day from Event Viewer display of all-day to-dos.
- Ask to set a default events folder if none is set yet.
- On first run, show alarms from the last 10 days.
Kleopatra
- Do not accept rich text in notepad (bug 421216).
- Fix help access in configuration dialog on Windows.
Common Infrastructure
- The CalDav/CardDav access framework KDAV is now finally part of KDE Frameworks with the 5.72.0 release.
- Compatibility issues with QtWebEngine from Qt 5.15 have been fixed in KMail and Akregator.
- Data and settings import/export has been significantly extended, also covering identities, mail transports and filters now for example.
- Fixed Akonadi searching for file mysql-global.conf at wrong path (bug 422079).
General Work
There’s also a number of global (and ongoing) tasks aimed at the long-term maintenance and maintainability. Considering some of the code still in active use today can be traced back to the late 90s this needs continuous attention as well.
- One of the obstacles in making the KDE PIM codebase more accessible to new developers are some of the historically grown mixed-purpose libraries and modules that can make it somewhat unpredictable where to find a certain bit of code. In order to address this and ideally reduce the amount of such modules a number of components have been moved around to clean this up and to untangle dependencies.
- Preparation for the Qt6/KF6 transition in the near future continued by porting away from various bits of deprecated API in Qt5 and KF5.
- There is an ongoing effort to make our source code REUSE compliant, which uncovers the occasional license issue that is being cleaned up in the process.
Additionally, numerous memory management issues found by ASan have been fixed all over the place.
Help to 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 and reach out to us! We’ll be happy to guide you and answer all your questions. Read more here…