Friday, 10 April 2015
KDE today announces the release of KDE Frameworks 5.9.0.
KDE Frameworks are 60 addon libraries to Qt which provide a wide variety of commonly needed functionality in mature, peer reviewed and well tested libraries with friendly licensing terms. For an introduction see the KDE Frameworks release announcement.
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
New module: ModemManagerQt (Qt wrapper for ModemManager API) Alternatively, upgrade to Plasma-NM 5.3 Beta when upgrading to ModemManagerQt 5.9.0.
KActivities
- Implemented forgetting a resource
- Build fixes
- Added a plugin to register events for KRecentDocument notifications
KArchive
- Respect KZip::extraField setting also when writing central header entries
- Remove two erroneous asserts, happening when disk is full, bug 343214
KBookmarks
- Fix build with Qt 5.5
KCMUtils
- Use new json-based plugin system. KCMs are searched under kcms/. For now a desktop file still needs to be installed under kservices5/ for compatibility
- Load and wrap the QML-only version of kcms if possible
KConfig
- Fix assert when using KSharedConfig in a global object destructor.
- kconfig_compiler: add support for CategoryLoggingName in *.kcfgc files, to generate qCDebug(category) calls.
KI18n
- preload the global Qt catalog when using i18n()
KIconThemes
- KIconDialog can now be shown using the regular QDialog show() and exec() methods
- Fix KIconEngine::paint to handle different devicePixelRatios
KIO
- Enable KPropertiesDialog to show free space information of remote file systems as well (e.g. smb)
- Fix KUrlNavigator with high DPI pixmaps
- Make KFileItemDelegate handle non default devicePixelRatio in animations
KItemModels
- KRecursiveFilterProxyModel: reworked to emit the right signals at the right time
- KDescendantsProxyModel: Handle moves reported by the source model.
- KDescendantsProxyModel: Fix behavior when a selection is made while resetting.
- KDescendantsProxyModel: Allow constructing and using KSelectionProxyModel from QML.
KJobWidgets
- Propagate error code to JobView DBus interface
KNotifications
- Added an event() version that takes no icon and will use a default one
- Added an event() version that takes StandardEvent eventId and QString iconName
KPeople
- Allow extending action metadata by using predefined types
- Fix model not being properly updated after removing a contact from Person
KPty
- Expose to world whether KPty has been built with utempter library
KTextEditor
- Add kdesrc-buildrc highlighting file
- syntax: added support for binary integer literals in the PHP highlighting file
KWidgetsAddons
- Make KMessageWidget animation smooth with high Device Pixel Ratio
KWindowSystem
- Add a dummy Wayland implementation for KWindowSystemPrivate
- KWindowSystem::icon with NETWinInfo not bound to platform X11.
KXmlGui
- Preserve translation domain when merging .rc files
- Fix runtime warning QWidget::setWindowModified: The window title does not contain a '[*]' placeholder
KXmlRpcClient
- Install translations
Plasma framework
- Fixed stray tooltips when temporary owner of tooltip disappeared or became empty
- Fix TabBar not properly laid out initially, which could be observed in eg. Kickoff
- PageStack transitions now use Animators for smoother animations
- TabGroup transitions now use Animators for smoother animations
- Make Svg,FrameSvg work qith QT_DEVICE_PIXELRATIO
Solid
- Refresh the battery properties upon resume
Buildsystem changes
- Extra CMake Modules (ECM) is now versioned like KDE Frameworks, therefore it is now 5.9, while it was 1.8 previously.
- Many frameworks have been fixed to be useable without searching for their private dependencies. I.e. applications looking up a framework only need its public dependencies, not the private ones.
- Allow configuration of SHARE_INSTALL_DIR, to handle multi-arch layouts better
Frameworkintegration
- Fix possible crash when destroying a QSystemTrayIcon (triggered by e.g. Trojita), bug 343976
- Fix native modal file dialogs in QML, bug 334963
You can discuss and share ideas on this release in the comments section of the dot article.
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 5.9.0 may be freely downloaded. Instructions on compiling and installing are available from the KDE Frameworks 5.9.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 5.9.0 requires Qt
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.