Skip to content
K

Release Announcements

KDE Frameworks 6.18.0

Friday, 12 September 2025

KDE today announces the release of KDE Frameworks 6.18.0.

This release is part of a series of planned monthly releases making improvements available to developers in a quick and predictable manner.

New in this version

Baloo
  • Fix casing of ecm_generate_headers PREFIX arg value. Commit.
Breeze Icons
Extra CMake Modules
  • Ecm_generate_headers: add docs when target include dirs need no extra setup. Commit.
  • [KDEInstallDirsCommon] Add missing RUNSTATEDIR. Commit.
  • [ECMFeatureSummary] Add missing documentation. Commit.
  • Allow to use unity builds for qmlcachegen files. Commit.
  • ECMSetupQtPluginMacroNames: add MACRO_NAMES arg, phase out JSON_* ones. Commit.
  • KDECompilerSettings.cmake - enable warning 5249 when compiling with MSVC. Commit.
  • ECMAddAppIcon: Fix empty ELSEIF warnings w/ >=CMake-4.1.0. Commit.
  • Move away from removed docutils error handling helpers. Commit.
Framework Integration
  • Turn on popups for device notifications. Commit.
KArchive
  • Tests: Merge ossfuzz test functions into one. Commit.
  • 7z: Make sure seqInStream/coderIndex are initialized. Commit.
  • 7z: Fix crash on malformed files. Commit.
  • 7z: Fix crash on malformed files. Commit.
  • Kzip: Add another test for extra headers. Commit.
  • Kzip: Replace open coded 16bit uint reading with common method. Commit.
  • Kzip: Replace last occurences of open coded 32bit uint reading. Commit.
  • 7z: Fix crash on malformed files. Commit.
  • 7z: Fix index out of range in QList::at on malformed files. Commit.
  • 7z: Fix index out of range in QList::at on malformed files. Commit.
  • 7z: Fix index out of range in QList::at on malformed files. Commit.
  • KZipFileEntry::data: Don't try to extract data of files that are too big. Commit.
  • 7z: Fix crash on malformed files. Commit.
  • 7z: Fix crash on malformed files. Commit.
  • 7z: Fix crash on malformed files. Commit.
  • 7z: Return false instead of assert in malformed files. Commit.
  • Move fuzz target and build script into KArchive repository. Commit.
  • 7zip: Fix crash in malformed files. Commit.
KAuth
  • ExecuteJob: Don't warn if application has no windows at all. Commit.
  • Fix build when KAUTH_BUILD_CODEGENERATOR_ONLY=ON. Commit.
  • ExecuteJob: Use focusWindow or any window as parent window. Commit.
KBookmarks
  • Bump kf ecm_set_disabled_deprecation_versions. Make sure that it compiles fine without kf 6.17 deprecated methods. Commit.
KCalendarCore
  • It compiles fine without qt 6.10 deprecated methods. Commit.
  • Src/memorycalendar.cpp - fix an unsed-comparison warning. Commit.
  • Drop unneeded expl. addition of src/build dirs to lib's build includes if. Commit.
  • Ci: require passing tests on all platforms. Commit.
KCMUtils
  • KCModuleQml: Fix back button for kcms with pinned columns. Commit.
  • Enable qmllint in CI. Commit.
  • Bump kf ecm_set_disabled_deprecation_versions. Make sure that it compiles fine without kf 6.17 deprecated methods. Commit.
  • KCModuleData: Add auxiliaryAction and isRelevant. Commit.
KCodecs
  • Remove unused function. Commit.
  • Move fuzz target and build script into KCodecs repository. Commit.
  • KEmailAddress::splitAddress: fewer allocations. Commit.
  • Ci: require passing tests on all platforms. Commit.
  • Fix quoted-printable with msvc compiler. Commit.
  • Add cppcheck and json validation. Commit.
KColorScheme
  • KColorSchemeManager: Update internal state before applying palette. Commit.
  • Bump kf ecm_set_disabled_deprecation_versions. Make sure that it compiles fine without kf 6.17 deprecated methods. Commit.
KConfig
  • Fix unit test input data. Commit.
  • Fix clazy misc small issues in autotests. Commit.
  • Fix/silence clazy suggestions about using static regex. Commit.
  • KWindowCondig: Avoid detaching of temporary container. Commit.
  • Avoid using size check and implicit 0 to false conversion to check for empty container. Commit.
  • Silence clazy warning about non-pod-static where it makes no sense. Commit.
  • KStandardActions: Disable formatting for one statement to have normalized connect signature. Commit.
  • Use -> operator directly instead of calling data on QPointer member. Commit.
  • Register KConfigSkeleton to QML. Commit.
  • Convert QLatin1String to QLatin1Char. Commit.
  • Use QStandardPaths::GenericStateLocation on all platforms. Commit.
  • Prevent KSharedConfig::openStateConfig() from opening configs in ~/.local/state in tests. Commit.
  • It compiles fine without qt 6.10 deprecated methods. Commit.
KConfigWidgets
  • KLanguageButton: Propagate tooltip to child button. Commit.
  • Bump kf ecm_set_disabled_deprecation_versions. Make sure that it compiles fine without kf 6.17 deprecated methods. Commit.
KCoreAddons
  • KUrlMimeData: More const. Commit.
  • Add context parameter to QTimer::singleShot. Commit.
  • Silence clazy warning about non-pod-static in qml plugin. Commit.
  • Avoid using size check and implicit 0 to false conversion to check for empty container. Commit.
  • Use newer simpler ecm_setup_qtplugin_macro_names API. Commit.
  • Add AFS as remote file system. Commit. Fixes bug #375623
  • Add KSharedDataCache::remove(). Commit.
  • Expose KTextToHTML to QML. Commit.
KDav
  • Bump kf ecm_set_disabled_deprecation_versions. Make sure that it compiles fine without kf 6.17 deprecated methods. Commit.
KDeclarative
  • Kquickcontrols: Fix mistakes in KeySequenceItem.pattern migration. Commit.
  • Enable qmllint in CI. Commit.
KFileMetaData
  • [PlaintextExtractor] Use explicitly sized type for 32bit compatibility. Commit.
  • Fix casing of ecm_generate_headers PREFIX arg value. Commit.
  • Dump test: remove unused include directory. Commit.
  • [Exiv2Extractor] Fix compatibility with Exiv2 0.27.x. Commit.
  • [Exiv2Extractor] Add support for subsecond timestamps and timezones. Commit.
  • [Exiv2Extractor] Add dedicated parser for Exif compound dates. Commit.
  • Add tests for internal DateTime parser helper. Commit.
  • [Exiv2ExtractorTest] Fix incorrect QTime initialization. Commit.
KGlobalAccel
  • Properly qualify enum usage. Commit.
KGuiAddons
  • Allow shift modifier for TouchpadOff to support Copilot key. Commit.
KHolidays
  • Changed Child's Health Day to the first Monday in October. Commit.
  • Indian Independence Day isn't recognized before 1947. Commit. Fixes bug #460343
  • Drop unneeded expl. addition of src/build dirs to lib's build includes if. Commit.
KI18n
  • Define string as local variable and do not call .data() to put it in string view. Commit.
  • Fix clazy warnigns about detaching containers. Commit.
KIconThemes
  • Bump kf ecm_set_disabled_deprecation_versions. Make sure that it compiles fine without kf 6.17 deprecated methods. Commit.
KImageformats
  • Dds: Fix assert when reading broken data. Commit.
  • Unified maximum pixel value for large image plugins. Commit.
  • Removed the conversion of the entire image to a compatible format when saving from the PCX, PIC, and RGB plugins. Commit.
  • TGA: Support for TGA specification 2.0. Commit.
  • Fix possible buffer overflow on corrupted images. Commit.
  • TGA: memory optimizations and native grayscale support. Commit.
  • Move fuzz target and build script into KImageFormats repository. Commit.
  • IFF: add support for a different palette per line. Commit.
  • IFF: Fix possible undefined-shift. Commit.
  • RAW: Error out on malformed files. Commit.
  • IFF: add support for RGBN/RGB8 image data and CAT chunk. Commit.
  • ILBM 64-bit extension support. Commit.
  • Fix oss-fuzz compilation error. Commit.
  • IFF: Fix halfbride detection, 1-bitplane colors and PBM line size calculation. It also ignore ZBuffer flag on Maya images (like Photoshop does) amd adds CMYK palette support. Commit.
KIO
  • KDirModel: use moveAs instead of Rename when editing file name. Commit. Fixes bug #407509
  • Kfileitem: mimeComment for .desktop should not be their 'Comment'. Commit. Fixes bug #382325
  • Guard mount point lookup. Commit. Fixes bug #508185
  • KUrlRequester: Announce preceding label when focused. Commit.
  • Fix KI18n find_dependency call in KF6KIOConfig. Commit.
  • [previewjob] Fix another QStringBuilder being passed across threads. Commit.
  • Don't pass a QStringBuilder to another thread. Commit.
  • Filepreviewjob: Move saving of thumbnails to a new thread. Commit.
  • Filepreviewjob: Load cached thumbnail in a worker thread. Commit.
  • Filepreviewjob: Move generic preamble out of cache lookup method. Commit.
  • Filepreviewjob: move thumbnail validity check to a new method. Commit.
  • KUrlComboBox::setUrls(): remove check for file existence. Commit. Fixes bug #507598
  • [kfilewidget] Always show bookmarks action. Commit.
  • Allow building KIOCore and KIOGui without KIOWidgets. Commit.
  • KCoreDirLister: Avoid uneeded mimetype lookup from name. Commit.
  • Add QTBUG reference. Commit.
  • Correct SPDX formatting. Commit.
  • Add autotest and separate request type check. Commit.
  • Avoid "Content-Length: 0" header for empty GET and HEAD requests. Commit. Fixes bug #507523
  • PreviewJob: Move plugin check to FilePreviewJob. Commit.
  • [kfilefiltercombo] Remove unneeded variable. Commit.
  • [kfilewidget] Rename slotMimeFilterChanged. Commit.
  • [kfilefiltercombo] Rename variable for clarity. Commit.
  • [kfilefiltercombo] Remove duplicate validity check. Commit.
  • Knewfilemenu: Enable word wrap for instruction label. Commit.
  • KDynamicJobTracker: Register with KInhibitionJobTracker. Commit.
  • Revert "core: Add infrastructure for inhibiting suspend in jobs". Commit.
  • Revert "CopyJob: Inhibit suspend during copy operation". Commit.
  • KFileFilterCombo: Fix initial delay in applying filter in KFileWidget. Commit. See bug #508026
  • PreviewJob: Allow parallel preview creation. Commit.
Kirigami
  • PageRow: Fix Breadcrumb mode. Commit.
  • Fixes various typos. Commit.
  • [ListItemDragHandle] Bugfix: Auto-scroll upwards not working due to rounding real values to integers. Commit.
  • PageRow: Fix sidebar visibility in certain cases. Commit.
  • [NavigationTabBar] Avoid divide by zero. Commit.
  • ToolbarLayout: immediately perform layout at startup. Commit.
  • ColumnViwe: typo: connect -> disconnect. Commit.
  • ToolBarPageHeader: Quiet some warnings. Commit.
  • Replace Qt.application with more modern alternative. Commit.
  • Don't relayout during item destruction. Commit. Fixes bug #507483
  • NavigationTabBar Documentation Update. Commit.
  • PageRow: Better back button behavior. Commit.
  • ColumnView: fix setCurrentIndex when leadingVisiblePage is pinned. Commit.
  • [SearchField] Allow multiple find shortcuts. Commit.
  • [ActionTextField] Allow multiple focus shortcuts. Commit.
  • Remove debug log. Commit.
  • Ensure that formlayout content order is always correct. Commit. Fixes bug #507738
  • Reapply "Immediately relayout after creating FormLayout / adding elements to it". Commit.
  • Enable qmllint in CI. Commit.
  • PromptDialog: Fix warning on enum usage. Commit.
  • PageRow: Fix typo on the documentation. Commit.
  • Fixes for pinned pages usage. Commit.
  • Drop unneeded expl. addition of build dir to libs' build includes interface. Commit.
  • PlatformTheme: Do not emit when the object is still constructing. Commit.
  • Parent LanguageChangeEventFilter to qApp. Commit.
  • [shadernode] Fix leaking attributeSet. Commit.
  • ActionTextField: documentation: add note about action tooltip. Commit.
  • ColumnView: focus the column is being clicked. Commit.
KJobWidgets
  • Bump kf ecm_set_disabled_deprecation_versions. Make sure that it compiles fine without kf 6.17 deprecated methods. Commit.
  • Add KInhibitionJobTracker. Commit.
  • Move DBus interface XML to dbus subdirectory. Commit.
KNewStuff
  • Enable qmllint in CI. Commit.
  • Drop unneeded expl. addition of build dir to libs' build includes interface. Commit.
  • Bump kf ecm_set_disabled_deprecation_versions. Make sure that it compiles fine without kf 6.17 deprecated methods. Commit.
KNotifications
  • Dont update id if server returns an error. Commit.
  • KNotification: Use std::as_const in some more cases. Commit.
  • NotifyByPopup: Remove trivial variable that is never used. Commit.
  • Bump kf ecm_set_disabled_deprecation_versions. Make sure that it compiles fine without kf 6.17 deprecated methods. Commit.
KPackage
  • Drop unneeded expl. addition of build dir to libs' build includes interface. Commit.
  • Don't generate appstream data for packages by default. Commit.
KPeople
  • Drop unneeded expl. addition of build dir to libs' build includes interface. Commit.
KPTY
  • Bump kf ecm_set_disabled_deprecation_versions. Make sure that it compiles fine without kf 6.17 deprecated methods. Commit.
KQuickCharts
  • Enable qmllint in CI. Commit.
  • Fix legends height changing when the value changes. Commit.
KRunner
  • Use -> operator directly instead of calling data on QPointer member. Commit.
  • Make test more stable. Commit.
  • Drop unneeded addition of build dirs to lib's build includes interface. Commit.
  • Bump kf ecm_set_disabled_deprecation_versions. Make sure that it compiles fine without kf 6.17 deprecated methods. Commit.
  • Remove min letter count example. Commit. See bug #490972
KService
  • Bump kf ecm_set_disabled_deprecation_versions. Make sure that it compiles fine without kf 6.17 deprecated methods. Commit.
KSVG
  • Drop unneeded expl. addition of build dir to libs' build includes interface. Commit.
  • Workaround plasmashell crashing due to new Svg::colorOverridesChanged() signal. Commit.
  • Fix FrameSvg not refreshing when color scheme changes. Commit. Fixes bug #503671
KTextEditor
  • Add kate modeline autocompletion. Commit.
  • Ensure we only handle decorations that set foreground color. Commit. Fixes bug #507542
  • Remove unused includes. Commit.
  • Remove unused method. Commit.
  • Dont store KateRenderer in KateLineLayout. Commit.
  • Dont store Kate::TextLine in KateLineLayout. Commit.
  • Multicursor: Fix performance issues when deleting lot of lines. Commit.
  • Fix selection drawing for block selection. Commit. Fixes bug #508522
  • Dont use SmallestReadableFont, it makes the text hard to read. Commit.
  • Fix QFormLayoutPrivate::setItem: Cell (1, 1) already occupied. Commit.
  • Readded toggle bookmark action in context menu. Commit.
  • Removed stateful bookmark toggle action. Commit.
  • Added stateless toggle bookmark action. Commit.
KUnitConversion
  • Drop unneeded addition of build dirs to lib's build includes interface. Commit.
KUserFeedback
  • Drop unneeded expl. addition of src/build dirs to libs' build includes if. Commit.
  • Drop KDE_INSTALL_INCLUDEDIR from the public libraries' interfaces. Commit.
KWallet
  • Add service file for portal DBus service. Commit. Fixes bug #508870
  • Bump kf ecm_set_disabled_deprecation_versions. Make sure that it compiles fine without kf 6.17 deprecated methods. Commit.
  • Fix compile kwallet using kde-builder. Commit. Fixes bug #485564
KWindowSystem
  • Simplify NETWinInfo::desktop when in WindowManager role. Commit.
KXMLGUI
  • Mention distribution method in AboutDialog. Commit.
  • Bump kf ecm_set_disabled_deprecation_versions. Make sure that it compiles fine without kf 6.17 deprecated methods. Commit.
Network Manager Qt
  • Fix: Add setManaged interface. Commit.
  • Drop unneeded expl. addition of build dir to libs' build includes interface. Commit.
Purpose
  • Fix i18n issues. Commit.
  • Add missing CI dependency. Commit.
  • Enable qmllint in CI. Commit.
  • Drop unneeded expl. addition of build dir to libs' build includes interface. Commit.
  • AlternativesView: Sort items when displaying them. Commit.
  • Menu: Sort actions by the display text before creating the actions. Commit.
QQC2 Desktop Style
  • Switch: Wrap long text. Commit.
  • Enable qmllint in CI. Commit.
  • Dialog: hide in-window title component when dialog is Window type. Commit.
  • Dialog: remove corners and border when popup is Window type. Commit.
  • Remove baselineOffset binding from TabButton. Commit.
  • PlasmaDesktopTheme: Do not emit changes whilst constructing. Commit.
  • Fix small binding loop. Commit.
  • Combobox: make comment accurate. Commit.
Solid
  • Drop unneeded expl. addition of build dir to libs' build includes interface. Commit.
Syndication
  • Drop unused expl. addition of root build dir to lib's build includes if. Commit.
  • Drop unneeded expl. addition of src/build dirs to lib's build includes if. Commit.
Syntax Highlighting
  • Yaml.xml: Bump version. Commit.
  • Yaml.xml: Associate metadata with YAML. Commit.
  • Change the Breeze Light MarkWarning color to orange. Commit.
  • Nix: Fix highlighting for assert expression. Commit.
  • Nix: Update name. Commit.
  • Typst: Update name. Commit.
  • Theme_contrast_checker.py: show italic, underline, strike through and background color specified in a styles. Commit.
  • Fix themes with two adjacent color in CSV syntaxes. Commit. Fixes bug #477042
  • Increase version in markdown.xml. Commit.
  • Change context identifier for toml and ini code blocks in markdown files. Commit.
  • Add toml/desktop/ini code block support to markdown.xml. Commit.
  • Cmake.xml: updates for CMake 4.1. Commit.
  • Remove not used reference. Commit.
  • Adjust references to added keywords. Commit.
  • Edit crystal.xml: added missing keywords (enum and some C-related ones). Commit.
Threadweaver
  • QVERIFY -> QCOMPARE. Commit.
  • Drop unneeded expl. addition of build dir to lib's build includes interface. Commit.

Installing binary packages

On Linux, using packages for your favorite distribution is the recommended way to get access to KDE Frameworks. Get KDE Software on Your Linux Distro wiki page

Compiling from sources

The complete source code for KDE Frameworks 6.18.0 may be freely downloaded. Instructions on compiling and installing are available from the KDE Frameworks 6.18.0 Info Page.

Building from source is possible using the basic cmake .; make; make install commands. For a single Tier 1 framework, this is often the easiest solution. People interested in contributing to frameworks or tracking progress in development of the entire set are encouraged to use kdesrc-build. Frameworks 6.18.0 requires Qt 6.5.0.

A detailed listing of all Frameworks with API documentation is on api.kde.org.

Get Involved

Those interested in following and contributing to the development of Frameworks can check out the git repositories and follow the discussions on the KDE Frameworks Development mailing list. Policies and the current state of the project and plans are available at the Frameworks wiki. Real-time discussions take place on the #kde-devel IRC channel on Libera Chat.

Supporting KDE

KDE is a Free Software community that exists and grows only because of the help of many volunteers that donate their time and effort. KDE is always looking for new volunteers and contributions, whether it is help with coding, bug fixing or reporting, writing documentation, translations, promotion, money, etc. All contributions are gratefully appreciated and eagerly accepted. Please read through the Supporting KDE page for further information or become a KDE e.V. supporting member through our Join the Game initiative.