Vendredi, 13 Août 2021
KDE publie aujourd'hui la version 5.85.0 des environnements de développement de KDE.
Les environnements de développement de KDE regroupent 83 bibliothèques additionnelles à Qt, fournissant un large éventail de fonctionnalités nécessaires les plus communes, sous une forme matures, revues par des pairs et aussi largement testées, avec des conditions de licences acceptables. Pour une présentation, veuillez consulter les annonces de publications des environnements de développement de KDE.
Cette mise à jour fait partie d'une série de mise à jours mensuelles, permettant la mise à disposition des améliorations de manière rapide et prévisible pour les développeurs.
Nouveautés de cette version
Attica
- Implement a getter for Provider's icon data
Breeze Icons
- React to Telegram's new ID and show the Breeze icon
- React to Inkscape's new ID and show the Breeze icon (bug 440498)
- also add zoom-fit-page symlink for 32px
- align look of 22 px zoom-fit-{width,height} icons with others
- add zoom-fit-page symlink for 22px
- Symlink draw-cuboid to shape-cuboid
- Add temperature icons
Extra CMake Modules
- [ecmcheckoutboundlicense] Ensure that last source file is always processed
- Handle case where zero must be kept
- ecm_setup_version: deal with 0-prefixed version values in PROJECT mode
- modules/ECMGenerateHeaders.cmake - avoid uninitialized warning
- suppress tar errors
- FindGperf: support version check
- Define NOMINMAX on Windows
- KDECompilerSettings: properly use KDE_QT_MODERNCODE_DEFINITIONS_LEVEL
- Add Find7z & Findgzip
- Don't install logging categories files on Android
- Handle case where ECM_GLOBAL_FIND_VERSION is undefined
- Enable the usage of -Bsymbolic-functions
- KDECompilerSettings: add KDE_COMPILERSETTINGS_LEVEL & more settings
KDE Doxygen Tools
- do not download KDE accounts file automatically
- require Python 3 in CMake
- Preprocessing: use tree-walk speedup
- Preprocessing: document how to speed up tree-walk a little
- Utils: document what causes repopath-lookup failures
- Fancyname: look for CMake project() command preceded only by spaces
- Accept multi-line 'project(..)' in 'CMakeLists.txt'
- Add more dependencies to requirements.txt
KArchive
- Only pkg_check_modules() if PkgConfig is found
- Add support for static builds
- Use official gzip MIME/Media type application/gzip
- Report KArchive_HAVE_ZSTD in CMake Config file to consumers
- Deprecate remaining KFilterDev API in favour of KCompressionDevice
KCalendarCore
- Fixup include dir into pkgconfig file
- Hide fields, to enforce uniform use of setFieldDirty()
- Fix formating in apidoc for free busy
- Add ownerChanged signal
- Add metadata properties to calendar
- Add base class for calendar plugins
- More completion field consistency and dirtyness checks
- Mark mCompleted as dirty if it changes, and also reset status
KCMUtils
- Officially specify X-DocPath in the KCModule desktop file definition
- Deprecate KCModuleProxy::aboutData
- Add overload to pass in args in KCMultiDialog::addModule
- Deprecate X-KDE-FactoryName and KCModuleInfo::handle
- Deprecate KCMultiDialog::configCommitted(QByteArray) signal
- Deprecate KSettings and KCModuleInfo based methods
- help:/ urls are already handled by KUrlHandler from KGuiAddons
KCodecs
- Unbreak build with gperf < 3.1
KConfig
- KConfig: fix deletion of an entry that is also in kdeglobals
- Do not create a vector and a QByteArray just to discard it immediately
- Only query for existing config file when it's necessary
- Use specific API to compare QByteArrays
- Cache global config files
KConfigWidgets
- [KCModule] Deprecate ctor that takes KAboutData
- Make sure commandbar has unique actions
- add icons for all zoom standard actions
- KCommandBar update
- Show fuzzy matches in command bar
- enable auto-switching color scheme for Windows apps when Default color scheme is active
- Fix crash when calling KHamburgerMenu::setMenuBar(nullptr)
KCoreAddons
- New class KNetworkMounts: network mounts performance optimizations
- PluginMetaData::supportsMimeType(): check for exact matches first
- KPluginMetaData: warn if library metadata can't be loaded
- Introduce KFileUtils::findAllUniqueFiles method
- KTextToHTML: support also irc & ircs URLs
- Expose KAboutComponent::version as a property
- Deprecate JSON parameter in kcoreaddons_add_plugin
- Deprecate KPluginLoader::pluginVersion
KCrash
- Support static builds
- fix lifetime of MetadataINIWriter
KDBusAddons
- KDBusService: Pass the activation token upon activation
- Add compile time guards round QX11Info usage
- Fix DesktopStartup ID handling
KDeclarative
- Implement aspect ratio correction for Lanczos effect
- Introduce Lanczos filter element
KDELibs 4 Support
- Port metainfo KIO slave to JSON metadata
- Update translatable timezone list
KDocTools
- Add a max width to the content
KHolidays
- Update holiday_kz_kk
- Update holiday_kz_ru
- Update Mexican holidays
- Create mu_fr_catholic
- Update mu_en, mu_en_islamic
KIconThemes
- Introduce KIconLoader::hasCustomPalette
- [KIconDialog] Revamp UI (bug 401408)
KImageFormats
- exr: Repair compability with openexr2
- exr: Override the actual function signature
KInit
- Fixes crash in KLauncher::idleTimeout() caused by unblockable destruction of IdleSlave objects (bug 426387)
KIO
- Fix OOB read in LegacyCodec::decodeFileNameUTF8() if not zero-terminated
- KMountPoint: add missing resolving of symlinks when using libmount
- Message dialogs: wrap the text (bug 440545)
- Explicitly link against KF5::CoreAddons for KPluginFactory
- KProcessRunner: Use systemsettings desktop name if it's started
- Fix creating thumbnails for items under desktop:/ (bug 438691)
- Split KCMs into separate plugins
- Fixing allowing caching logic
- KPropertiesDialog: consider the "recursive" setting when applying permissions
- KPropertiesDialog: fix applying permissions recursively (bug 225658)
- kcoredirlister: refactor code to work better with std::set
- xdgactivation: Use the provided service instance
- [KFilePlacesItem] Don't show capacity bar for iso9660 mounts
- KMountPoint: fetch mount options from the mount-flags
- KProtocolInfo: don't call KProtocolInfo::archiveMimetypes() on an empty string
- Do not translate default names
- Fix selecting binaries from component chooser KCM
- KMountPoint: use libraries from util-linux in the Linux code path
- KUrlNavigator: do not hardcode supported archive formats
- Introduce KIO_NO_PUBLIC_QTCONCURRENT option
Kirigami
- [InlineMessage] Correct spacing between close button and action buttons (bug 440604)
- [ScrollView] Don't scroll with arrow keys if the view isn't scrollable (bug 439459)
- SearchField: Disable predictive text
- Introduce hasPlatformMenuBar
- Allow to add additional content to the about page
- Ensure that icon sizes are consistent for mobile before 5.23
- [OverlaySheet] Add title property
- Add "Get Involved" URL button to the About Page
- SwipeDelegate: Only set the parent as the flickable when the parent is a Flickable
- Add dialog-close to list of icons to bundle
- Show KAboutComponents in the AboutPage
- Add method to push page as a new window on the desktop
- Use iconSizes for floating action button
- Adjust sidebar item size to account for mobile
- Adjust floating action button sizes to account for mobile
- Remove x1.5 mobile icon sizing
- [apptemplate] Increase Qt and KF5 min versions
- Make MnemonicAttached active property writable
- Pagepool item and url accessors
- Show author/credits task (bug 438442)
- Show the app name in the about page title
- PageRow can take ownership of a drawer's contents
KNewStuff
- Rework UploadDialog, add QML version, and a new ProvidersModel
- Simplify lookup of knsrc files using KFileUtils::findAllUniqueFiles method
- Forward Attica provider icons to KNSCore::Provider
- Handle payload-only entries during update operations
KNotification
- Add placeholders for window title and application display name
KPackage Framework
- Deprecate kpackage_install_bundled_package cmake function
- Reduce severity of warnings about appstream generations
- Deprecate implicitly defining X-KDE-ParentApp by parent structure
- Introduce new KPackageStructure property to identify plugins & packages
- Include a warning when setting the path without a structure
KPeople
- Install private personmanager header
KRunner
- Deprecate RunnerManager::runnerMetaDataList(QString parentApp) method
- Deprecate TryExec property for runners
- Use KFileUtils::findAllUniqueFiles to locate DBus runners
KTextEditor
- Network mounts performance optimizations
- KateView: speed up large view jumps
- ensure close button on top for replace
- move close button to right for bottom widgets
KUnitConversion
- Make currency conversion table fetching explicit
KWallet Framework
- Don't use gpgme.h
KWayland
- Fix check for mmap failure (bug 421868)
KWidgetsAddons
- Update some widget pictures
- kmimetypeeditor: display an error message if keditfiletype couldn't be started (bug 437701)
- Wrapp unisged int getter for rating in KWIDGETSADDONS_BUILD_DEPRECATED_SINCE
- Deprecate KRatingWidget::ratingChanged(unsigned int) signal
KWindowSystem
- Support static builds
KXMLGUI
- commandbar: collect actions using the guiFactory (bug 439526)
- Fix KShortcutsDialog build
- KShortcutsDialog: add another, simpler, constructor
ModemManagerQt
- Add find_dependency for QtDBus
- Make dependency on QtXml private
NetworkManagerQt
- Feature: add assigned-mac-address
- Expose mDNS configuration used by NM plugins
Oxygen Icons
- new color version for notification icon
- improved icons from yesterday+ missing resolutions
- preferences-desktop-notification-bell icon
- kdf icon
Plasma Framework
- Don't pointlessly create new KPluginMetaData
- Fix Units::roundToIconSize() returning incorrect sizes with non-Qt scaling (bug 381794)
- Turn WindowThumbnail into a texture provider
- Handle huge icons in Units::roundToIconSize() (bug 356446)
- Deprecate plasma/version.h header & contained methods
- Add a bit more contrast to event indicator in calendar (bug 437203)
- Improve the code of the actions in the plasmoid heading
- Theme::currentThemeHasImage should not return true if parent themes match (bug 439847)
- Remove x1.5 mobile icon sizing
- PlasmoidHeader: re-add backgroundMetrics
- PlasmoidHeader: Make it based on T.ToolBar, deprecate location
Prison
- Support binary content in QR codes
- Constrain rendering by the minimum size, not the preferred size
Purpose
- [JobView] Show error when configuration fails to load
- Replace xdg-mime invokation with KApplicationTrader
- Make sure empty list placeholder has some space around it
QQC2StyleBridge
- Introduce MenuBar implementation
- Use flat instead of raised for flat buttons and toolbuttons (bug 438525)
- DialogButtonBox: remove unnecessary lines
- DialogButtonBox: Set standard icons for standard buttons
Solid
- Remove the HAL backend; HAL is long gone
- Udev client: replace a warning message with a debug one (bug 425178)
- Enable bsdisks_extensions from FreeBSD on OpenBSD
- Enable OpenBSD UDisk2 support
- Port framework away from LGPL-2.0-only
Sonnet
- Fix language not being correctly guessed when sentence ends in a dot
Syntax Highlighting
- toml.xml: forbid 0_digits in integers
- toml.xml: support single-quoted keys
- Python: Fix r"\" and derivatives (bug 440412)
- Python: Make unescaped single quote (' or ") strings non-multiline
- make update_kate_editor_org bsd compatible
- Python: Fix single quote bytes literals (b"") (bug 440089)
- cmake.xml: Drop version related
find_package()
vars - cmake.xml: Update variables for
find_package()
interface - cmake.xml: Add CMake 3.21 features
- XML: add Attribute Separator style (= in
) - XSLT: Enhance highlighter colors (like XML) + region for tag
- Ini: value as int, float or keyword only if it represents the full value
- Agda: update keyword list to Agda 2.6.2
- XML: fix <!DOCTYPE detection and reordered rules for faster reading (+20%)
- Python: }} in a f-string as an escape character and add !a flag
- systemd unit: update to systemd v249
- systemd unit: fix highlighting of unit name
- Mark katehighlightingindexer as a non-GUI executable
- Disable using QtXMLPatterns with sanitizer build
- Indexer: suggest LineContinue instead of RegExpr
- move coroutine keywords in controlflow and replace some keyword rule with WordDetect
Security information
The released code has been GPG-signed using the following key: pub rsa2048/58D0EE648A48B3BB 2016-09-05 David Faure faure@kde.org Primary key fingerprint: 53E6 B47B 45CE A3E0 D5B7 4577 58D0 EE64 8A48 B3BB
Installation de paquets binaires
Sous Linux, l'utilisation de paquets pour votre distribution préférée est le moyen recommandé pour accéder aux environnements de développement de KDE. Obtenez les logiciels de KDE sur votre page wiki de votre distribution Linux
Compilation à partir des sources
Le code source complet des environnements de développement 5.85.0 de KDE peut être librement téléchargé. Les instructions pour sa compilation et son installation sont disponibles à partir de la page d'informations sur les environnements de développement de KDE 5.85.0.
La compilation à partir des sources est possible en utilisant le classique enchaînement cmake . ; make ; make install. Pour un seul environnement tiers, il s'agit souvent de solution la plus facile. Les personnes intéressées à contribuer à des environnements de développement ou par le suivi des progrès dans le développement de l'ensemble sont encouragés à utiliser kdesrc-build. Les environnements de développement 5.85.0 nécessite Qt 5.15.
Une liste détaillée de tous les environnements de développement avec la documentation des API se trouve sur la page api.kde.org.
Impliquez vous
Les personnes souhaitant suivre et contribuer au développement des environnements de développement peuvent consulter les dépôts « git » et de suivre les discussions sur la liste de diffusions concernant le développement des environnements de développement de KDE. La stratégie et l'état actuel du projet et des plans sont disponibles à la page de wiki des environnements de développement. Les discussions en temps réel se font sur le canal « IRC » #kde-devel sur le forum de discussions « Libera ».
Soutien à KDE
KDE est une communauté de logiciels libres existant et grandissant grâce à l'aide de nombreux bénévoles, qui donnent de leur temps et de leurs efforts. KDE est toujours à la recherche de nouveaux bénévoles et de nouvelles contributions, qu'il s'agisse de codage, de correction de bogues ou de rapport d'avancement, de rédaction de documents, de traductions, de promotion, d'argent, etc. Toutes les contributions sont appréciées et acceptées avec enthousiasme. Veuillez lire la page « Soutenir KDE » pour plus de détails ou devenez un membre actif de KDE e.V. grâce à notre initiative Rejoindre le jeu.