2021년 12월 11일 토요일
오늘 KDE에서는 KDE 프레임워크 버전 5.89.0을(를) 출시했습니다.
KDE 프레임워크는 Qt에서 사용할 수 있는 추가 기능 라이브러리 83개로, 자주 사용하는 기능을 다양한 환경에서 테스트하고, 동료 평가되는 라이브러리 형태로 제공하며 적절한 라이선스 조건으로 배포됩니다. 소개를 보려면 KDE 프레임워크 릴리스 공지를 참조하십시오.
이 릴리스는 계획된 월간 릴리스의 일부이며, 개발자들이 변경 사항을 빠르고 예측 가능한 형태로 사용 및 평가할 수 있습니다.
이 버전의 새로운 변경 사항
BluezQt
- Add functions that allow setting the discovery filter based on Bluez Adapter APIs
Breeze Icons
- Install dark icons via execute_process to use copy command (bug 445489)
- Link application-menu -> open-menu-symbolic
- Add icon for Virtual Box disk images
- fix keyboard-caps-locked icon use now correct color
- BUG 110673 media-write icon fix
- BUG 412029 add preferences-desktop-feedback icon
- BUG 423937 add edit-copy-path icon for dolphin and konsole
- Add RTL half rating star
- BUG: 414215 add tabs colorful icon (bug 414215 add tabs colorful icon)
- BUG: 414213 add preferences-scroll icon (bug 414213 add preferences-scroll icon)
- BUG: 437999 add veracrypt app icon (bug 437999 add veracrypt app icon)
- Add preferences-git and preferences-document icons for kate
- BUG: 407048 add online account icon for the KCM (bug 407048 add online account icon for the KCM)
- Fix view-history icons
- Use application-certificate icons for Kleopatra's certificate groups
- Add "Invalid = -1" element to the KIconLoaderDummy::Context enum
- BUG: 409022 update disk-quota icons (bug 409022 update disk-quota icons)
- BUG: 372461 update rar mimetype icon (bug 372461 update rar mimetype icon)
- BUG: 405654 Update input-keyboard-virtual-off (bug 405654 Update input-keyboard-virtual-off)
- BUG 110673 add media-write-dvd icon
- BUG 396124 add Crow Translate app icons
- BUG 392534 add missing kmail breeze icons
- Bug 348446 update document-open icons
- Dolphin preferences dialog use colorfull icons only
- Okular sidebar use now colorful icons
- Bug: 444548 Add Gnome todo symbolic icons
- BUG 429737 update view-media-playlist icon and other playlist icons
- BUG 418864 add gajim app icon. status icons can't be used from breeze
- BUG 394023 add gpodder application icon
Extra CMake Modules
- Include QtVersionOption before all Qt5 find_package calls
- ECMGeneratePkgConfigFile: Add an URL parameter
- KDEInstallDirs5: set up KSERVICESDIR alias for KSERVICES5DIR
- KDEInstallDirs6: comment out call to query_qmake, not defined
- KDEInstallDirs6: don't set deprecated variable names anymore
- PLUGINDIR is based upon QTPLUGINDIR, so only define it after QTPLUGINDIR
- Split KDEInstallDirs into a 5 and a 6 variant
- AddAppIcon: clarify ksvg2icns role for @2x icons
- Add support for specifying private dependencies for pkg-config files
- FindEGL add 'lib' prefix for windows
KActivitiesStats
- Fixed the singleton access mutex locking
KArchive
- K7Zip: use functions instead of macros
KBookmarks
- Add source file back
KCalendarCore
- Compare the objects managed by a QSharedPointer
- Avoid update calls if nothing changed
- Consistency and range checking for GEO data
- Check validity of priority value
KCMUtils
- Set initial page using initialPage property, rather than pushing (bug 417636)
- Do not reset KPluginModel if there are no plugins
- Implement KPluginSelector replacement not based around KPluginInfo
- Do not try to unload static plugins
- Support static plugins for X-KDE-ConfigModule property
KConfig
- KDesktopFile: deprecate resource()
- Use innerVarStr instead of varStr for choices
- Add a proper test for the enumms within groups
- Unbreak kconfig with enums, mutators and properties
- Demonstrate build failure with kconfig generated code
- Copy ConfigPropertyMap from KDeclarative to new KConfig QML module
KConfigWidgets
- Add color scheme saving and loading
- Fix hamburger menu opening as a window on Wayland (bug 442375)
- [KCommandBar] Add placeholder text for empty view
- [KCommandBar] Fix rendering of chord shortcuts
- [KCommandBar] Dynamic column widths + shortcuts alignment
KContacts
- Fix address formatting for country-only addresses
- Deprecate countryToISO/ISOToCountry in favor of KCountry
- Use local country names when formatting addresses
KCoreAddons
- KF5CoreAddonsMacros: Replace "-" with "_" for KPLUGINFACTORY_PLUGIN_CLASS_INTERNAL_NAME compile definition
- Compile against Qt6
- Allow reading enabled state from KPluginMetaData using templated method
- KF5CoreAddonsMacros: Build static plugins as static libs
- Store KDE specific static plugin in seperate map
- Make KPluginMetaData::isStaticPlugin public
- kcoreaddons_add_plugin: Set property for file name
- Add assertion to make sure we have a d-ptr in KPluginMetaData::getStaticPlugin
- Create kcoreaddons_target_static_plugins cmake function
- Allow KPluginMetaData::findPlugins to return static plugins
- kcoreaddons_add_plugin: Allow creation of static plugins
- Allow KPluginMetaData to represent static plugins
- Create KPluginFactory::create method for loading KPart without keyword
- Deprecate KPluginFactory::create overload taking plugin keyword
- Deprecate KPluginFactory::registerPlugin(QString, CreateInstance*) methods
- Deprecate KPluginFactory::registerPlugin overloads taking keyword
- KPluginFactory: Use overload instead of default arg for registerPlugin keyword parameter
- Deprecate KPluginMetaData::serviceTypes
KDBusAddons
- Link against X11Extras when building statically
KDeclarative
- KeySequenceItem: Make sure we record on the correct window (bug 445277)
- Deprecate KRun KIO plugin
- Allow KCM kpackages to use metadata of C++ plugin
- Add takeLast() slot to ConfigModule
- Fix overflowing text properly
KDELibs 4 Support
- Move Esperanto flag icon to kdelibs (bug 445077)
KFileMetaData
- KFileMetaData::Property: Deprecate toVariantMap and toPropertyMap methods
- Port deprecated QMap methods to QMultiMap
- Put code of public header depending on deprecated Qt API in deprecation wrapper
- [PopplerExtractor] extract pageCount
KGlobalAccel
- Make XCB XTEST optional requirement
KDE GUI Addons
- Add KSystemClipboard to use wlr-data-control transparently in Wayland
KI18n
- Document how KLazyLocalizedString is tied to a translation domain
- Consider TRANSLATION_DOMAIN when converting to a KLocalizedString
- KLazyLocalizedString: add KLocalizedString forward API for convenience
- KLazyLocalizedString: allow implicit default constructor
- Add KLazyLocalizedString::isEmpty() const
- Fix MSVC warning about inconsistent export macro in forward declaration
- Port Kuit keymap away from I18N_NOOP macro usage
- Deprecate the I18N_NOOP macros in favor of KLazyLocalizedString
- Add KLazyLocalizedString as a replacement for the I18N_NOOP macros
- Fix loading a KCatalog with a different language on Windows
KIconThemes
- KIconLoader: prefer icons from current theme before falling back to other themes (bug 445804)
- [KIconDialog] Add Ctrl+F shortcut for focussing search line
- [KIconButton] Pre-select current icon when opening dialog
- [KIconDialog] Add API for pre-selecting an icon
KImageFormats
- avif: limit scope of variables
- Add JXL to the list of supported formats
- Add plugin for JPEG XL (JXL)
KIO
- Add new signals and logic to handle open directories in new windows or tabs
- Fix KRun::runApplication when xdg activation is involved (bug 446272)
- Explicitly remove the event filters in classes managed by a unique_ptr
- [KACLEditWidget] Load list of users/groups on demand
- [KPropertiesDialog] Reuse existing KUser instance
- Do not create thumbnails when it requires to copy the file to /tmp (bug 368104)
- Fix directory thumbnailer loading
- [CopyJob] Emit moving while renaming
- [KPropertiesDialog] Improve presentation of file type configuration
- [KPropertiesDialog] Add extra fields value in correct column
- Allow loading of Thumbnailers using embedded json metadata
- KDirOperator: get the icon sizes from user settings
- [KACLEditWidget] Remove redundancy and add icons to buttons
- [KPropertiesDialog] Use Filelight icon and name from desktop file
- [KPropertiesDialog] Hide time labels in multiple mode
- [KPropertiesDialog] Also hide label_left for timestamps
- Fix copying between different filesystems on Linux < 5.3
- [KDynamicJobTracker] Support KUiServerV2JobTracker
Kirigami
- PageRowGlobalToolBarUI: use open-menu-symbolic
- Heading: Deprecate headerPointSize(int level) method
- Let escape key close pushed dialog layers
- AboutItem: fix the view for narrow dialogs
- AboutItem: Report its implicit size so it can scroll
- Increase passive notification opacity (bug 440390)
- Bold labels for narrow FormLayout
- Add Dialog Components
- add columns on empty width
- DefaultCardBackground improvements
- Expose internal icon source in the Avatar component
- Preconfigure kconfig and kaboutdata on template
KJS
- Don't call functions on pointers that may not point to objects
KNewStuff
- Improve presentation of multi-file download sheet
- Use RTL half-star rating icon when in RTL mode (bug 440650)
KNotification
- [Tester] Support urgency for inline reply notification
KPackage Framework
- Utilize type-safe KPluginMetaData API methods
- Utilize KPluginMetaData::value overloads
KParts
- Remove calls to KIO::Scheduler::publishSlaveOnHold
KRunner
- Port to KPluginMetaData::isEnabled instead of custom string magic
KService
- KPluginInfo: Fix mimetypes that are wildcards not appearing in MimeTypes json value
- Deprecate KToolInvokation::kdeinitExecWait
- Deprecate E-Mail and terminal related methods in KToolInvocation
KTextEditor
- Bring back git via QProcess
- When reloading, don't override auto-detected hl mode if not set by user
- If user didn't set them, don't override file type and highlighting modes detection
- Pass KTextEditor::Cursor by value everywhere
- Remove selected text if preedit is not empty
- Disable "tail-available-on-undo" in ViInputMode
- Improve built-in search performance
- Remove duplicated lua.js indent file
- Create a separate path for fetching lineLength
- Use iterators for iterating over blocks
- Completion in two edits feature describing comment
- Re-add "undo removed tail" on completion
KUnitConversion
- [Currency] Don't complain about missing connection if we didn't download
KWallet Framework
- MAC_USE_OSXKEYCHAIN: Link against CoreFoundation
KWidgetsAddons
- KAcceleratorManager: Take into account actions with Alt+X shortcuts
KWindowSystem
- Make KWindowSystem a bit easier to integrate in QML
Plasma Framework
- wallpaperinterface: Don't double delete action (bug 446195)
- Use
open-menu-symbolic
instead ofapplication-menu
- Make Breeze plasma scrollbar/slider/progressbar color match application theme
- Heading: Deprecate headerPointSize(int level) method
- Don't reload renderers for empty paths
- PageStack: Replace == equality with === strict equality
- Reload shared renderers when a file changed on disk (bug 445516)
- PlasmoidHeading: Turn location into an alias for position property
- Replace variant property type with var and other appropriate types
- org.kde.plasma.extras: Follow Qt style of implicitWidth/implicitHeight declaration
- Title: Replace implementation with Heading {}
- Title: Lower size (again)
- QQuickWindow::event after setupwaylandintegration
- Do updateTheme after QQuickWindow::event (bug 305247)
- Breeze slider.svg: Fix bad SVG code making shadow invisible
- set all roles that can be mapped from dialog types to plasma protocol role
- smaller mask to hide glitches (bug 438644)
- KF5PlasmaMacros: Actually install desktop files if they exist
- make the OSD an actual wayland OSD (bug 428859)
QQC2StyleBridge
- Fix syntax highlighting
Solid
- Allow udisks2 and upower backends to be disabled with environment variables
- Add device description for storage medium without size
- Config.cmake: Lookup LibMount when building statically
- Add support for graphics tablet batteries
- [upower] Consider audio devices and generic bluetooth devices to be batteries (bug 445141)
- [upower] Add new device types
Sonnet
- don't load plugins from current working directory, that is even a security issue
- export all known languages
- massive speedup, avoid loading the same huge dictionaries several times
- only load one instance of a plugin
- core: attempt to load local plugins first, makes development easier
Syntax Highlighting
- markdown.xml: Fix highlighting of headers (include last char) (bug 445918)
- Update orgmode.xml
- use the same way as emacs to highlight priority cookie
- support verbatim since it seems used more often than inline code
- support single line comment, babel call, priority cookie
- Update context.xml version
- Update ConTeXt test references
- Corrected syntax for ConTeXt TABLE commands (bug 445820)
- ConTeXt: Verbatim highlighting allows for nesting (bug 445818)
- Added ConTeXt test references
- Update context.xml version number
- Added highlighting for ConTeXt "\m" command
- Fixed current math command highlighting
- misc: Add
Pipfile
to create Python venv for generators - cmake.xml: Updates for CMake 3.22
- fix: Add
Loader
parameter in call toyaml.load()
- update test for inline code
- support inline code and another type of number list
- support block and number list
- add orgmode.xml
- add racket.xml
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
바이너리 패키지 설치
리눅스 환경에서는 KDE 프레임워크를 사용하고 있는 배포판의 패키지 관리자로 설치하는 것을 추천합니다. 리눅스 배포판별 KDE 소프트웨어 설치 위키 페이지.
소스 코드에서 컴파일
KDE 프레임워크 5.89.0 소스 코드는 자유롭게 다운로드할 수 있습니다. 컴파일 및 설치 방법은 KDE 프레임워크 5.89.0 정보 페이지에서 확인할 수 있습니다.
소스 코드에서 빌드하는 작업은 기본적인 cmake .; make; make install 명령으로 가능합니다. 단일 티어 1 프레임워크를 컴파일 때에는 가장 간단한 방법입니다. 프레임워크 개발에 기여하거나 전체 프레임워크 개발 작업을 추적하고 싶다면 kdesrc-build 사용을 추천합니다. 프레임워크 5.89.0에는 Qt 5.15.2 이상이 필요합니다.
API 문서를 포함한 전체 프레임워크 목록은 api.kde.org 사이트에서 볼 수 있습니다.
참여하기
프레임워크 개발에 관심이 있고 기여할 생각이 있다면 git 저장소를 확인하고 KDE 프레임워크 개발 메일링 리스트의 토론을 확인해 보십시오. 프로젝트 정책, 현재 상태 및 향후 계획은 프레임워크 위키에서 확인할 수 있습니다. 실시간 대화는 Libera Chat의 #kde-devel IRC 채널에서 진행됩니다.
KDE 지원
KDE는 개인의 시간과 노력을 기부하는 것으로 존재하고 성장하는 자유 소프트웨어 커뮤니티입니다. KDE는 코딩, 버그 수정 및 보고, 문서 작성, 번역, 프로모션, 금전적 기여 등 다양한 자원 봉사자와 기여자를 찾고 있습니다. 모든 기여를 환영합니다. 더 많은 정보를 보려면 KDE 지원하기 페이지를 확인하십시오. Join the Game을 통해서 KDE e.V.의 후원 회원이 될 수도 있습니다.