Divendres, 13 d'agost de 2021
Avui KDE anuncia el llançament dels Frameworks 5.85.0 de KDE.
Els Frameworks de KDE són 83 biblioteques addicionals a les Qt, que proporcionen una àmplia varietat de les funcionalitats necessàries més habituals amb unes biblioteques madures, revisades amb atenció i ben provades, d'acord amb unes clàusules amistoses de llicència. Per a una introducció, vegeu l'anunci del llançament dels Frameworks de KDE.
Aquest llançament forma part d'una sèrie de publicacions mensuals planificades que faran disponibles les millores als desenvolupadors d'una manera ràpida i predictible.
Nou en aquesta versió
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
Instal·lació dels paquets executables
Al Linux, la manera recomanada d'accedir als Frameworks de KDE és la utilització de paquets de la vostra distribució preferida. Pàgina wiki d'obtenció del programari KDE per a la vostra distribució Linux
Compilació a partir del codi font
El codi font complet de les aplicacions KDE es pot descarregar lliurement. Les instruccions sobre la compilació i instal·lació estan disponibles a la pàgina d'informació de les aplicacions 5.85.0 KDE.
La compilació des del codi font es pot fer utilitzant les ordres bàsiques cmake .; make; make install. Per a un «framework» simple de nivell 1, normalment aquesta és la solució més senzilla. Les persones interessades a col·laborar amb els «frameworks» o en seguir el progrés del desenvolupament de tot el conjunt es recomana usar el kdesrc-build. Els Frameworks 5.85.0 requereixen les Qt 5.15.
Hi ha una llista detallada de tots els Frameworks amb la documentació de l'API a api.kde.org.
Col·laboreu-hi
Aquells interessats en seguir i col·laborar en el desenvolupament dels Frameworks poden revisar els repositoris Git i seguir els debats a la llista de correu de desenvolupament dels Frameworks de KDE La política, l'estat actual del projecte i els plans estan disponibles al wiki dels Frameworks. Els debats en temps real tenen lloc al canal #kde-devel d'IRC a Libera Chat.
Patrocini de KDE
KDE és una comunitat de programari lliure que existeix i creix només amb l'ajuda de molts voluntaris que donen el seu temps i esforç. KDE sempre està cercant nous voluntaris i col·laboradors, sigui amb l'ajuda de codificació, esmenes o informes d'error, escrivint documentació, traduccions, promoció, diners, etc. Totes les col·laboracions s'aprecien amb agraïment i s'accepten amb il·lusió. Si us plau, llegiu la pàgina de patrocini de KDE per a més informació o esdevingueu un membre patrocinador de KDE e.V. mitjançant la nostra nova iniciativa Join the Game.