Субота, 13 квітня 2019
Сьогодні KDE оголошено про випуск KDE Frameworks 5.57.0.
KDE Frameworks складається з 70 додаткових бібліотек, які розширюють можливості Qt і реалізують багато широковживаних функціональних можливостей, є зрілими, належним чином рецензованими та добре перевіреними, а також надаються за дотримання розробниками достатньо дружніх щодо них умов. Вступні зауваження щодо цих бібліотек можна знайти у оголошенні щодо випуску KDE.
Цей випуск є частиною запланованої послідовності щомісячних випусків, яка надасть змогу розробникам використовувати поліпшення у бібліотеках швидко і без проблем.
Нове у поточній версії
Attica
- Реалізовано прийняття будь-якого стану HTTP між 100 і 199 як benign
Baloo
- [DocumentIdDB] Придушено показ діагностичного повідомлення, реалізовано попередження у відповідь на виявлення помилок
- [baloosearch] Уможливлено визначення часу, якщо використано, наприклад, mtime.
- [indexcleaner] Усунено зайве вилучення включених тек, якщо їхню батьківську теку виключено.
- [MTimeDB] Виправлено пошук для діапазону LessEqual
- [MTimeDB] Виправлено пошук, якщо діапазон часу має повернути порожню множину
- Виправлено обробку оцінок і помилок у MTimeDB
- Реалізовано захист від некоректних батьківських елементів в IdTreeDB
- Реалізовано вилучення документа з MTimeDB/DocumentTimeDB, навіть якщо часова позначка є нульовою
- Уточнено виявлення mimetype (виправлено ваду 403902)
- [timeline] Реалізовано переведення адреси у канонічну форму
- [timeline] Виправлено пропущені або розташовані неправильно виклики SlaveBase::finished()
- [balooshow] Реалізовано виведення відомостей щодо базового файла із декількома суфіксами назв
- [timeline] Усунено причину попередження, додано пропущений запис UDS для «.»
- [balooctl] Зменшено рівень вкладеності для аргументів addOption, почищено код
- Реалізовано реагування на оновлення налаштувань у засобі індексування (виправлено ваду 373430)
- Виправлено регресію при відкритті бази даних у режимі читання-запису (виправлено ваду 405317)
- [balooctl] Вилучено кінцевий пробіл у рядку
- [рушій] Виправлено код, скасовано перейменування Transaction::abort()
- Гармонізовано обробку символу підкреслювання у засобі обробки запитів
- Рушій Baloo: реалізовано обробку будь-яких невдач у коді як помилок (виправлено ваду 403720)
BluezQt
- Інтерфейс Media пересунуто до Adapter
- Засіб керування: усунено вимогу щодо інтерфейсу Media1 при ініціалізації (виправлено ваду 405478)
- Пристрій: реалізовано перевірку шляху до об'єкта у слоті вилучення інтерфейсів (виправлено ваду 403289)
Піктограми Breeze
- Додано піктограми «notifications» та «notifications-disabled» (виправлено ваду 406121)
- start-here-kde зроблено доступним як start-here-kde-plasma
- Додано піктограму об'єднання Sublime
- Додано контрастності для піктограм applications-games і input-gaming у темній темі Breeze
- Масштабовано піктограму go-up до 24 пікселів
- Додано піктограми preferences-desktop-theme-applications і preferences-desktop-theme-windowdecorations
- Додано символічні посилання з «preferences-desktop-theme» на «preferences-desktop-theme-applications»
- Вилучено preferences-desktop-theme у приготуванні до перетворення цієї піктограми на символічне посилання
- Додано піктограми collapse/expand-all, window-shade/unshade (виправлено ваду 404344)
- Поліпшено однорідність піктограм window-*
- Піктограми go-bottom/first/last/top тепер є подібними до media-skip*
- Змінено цілі символічних посилань go-up/down-search на go-up/down
- Поліпшено вирівнювання за пікселями для go-up/down/next/previous/jump
- Змінено стиль media-skip* і media-seek*
- Примусово застосовано новий стиль піктограми вимикання звуку у всіх піктограмах дій
Додаткові модулі CMake
- Знову увімкнено встановлення значення для QT_PLUGIN_PATH
- ecm_add_wayland_client_protocol: поліпшено повідомлення щодо помилок
- ECMGeneratePkgConfigFile: усі змінні зроблено залежними від ${prefix}
- Додано модуль пошуку UDev
- ECMGeneratePkgConfigFile: додано змінні, які використовуються pkg_check_modules
- Відновлено зворотну сумісність FindFontconfig для plasma-desktop
- Додано модуль пошуку Fontconfig
Інтеграція бібліотек
- Реалізовано використання відповіднішої піктограми plasma-specific для категорії Плазми
- Реалізовано використання піктограми plasma як піктограми для категорії сповіщень Плазми
Інструменти Doxygen KDE
- Оновлено адреси з метою використання https
KArchive
- Усунено аварійне завершення роботи у KArchive::findOrCreate, якщо файл пошкоджено
- Усунено читання з неініціалізованої пам'яті у KZip
- Додано Q_OBJECT до KFilterDev
KCMUtils
- [KCModuleLoader] Реалізовано передавання аргументів до створеного KQuickAddons::ConfigModule
- Реалізовано передавання фокуса до дочірньої панелі пошуку, якщо фокусовано KPluginSelector (виправлено ваду 399516)
- Поліпшено повідомлення щодо помилки у KCM
- Додано динамічний захист для сторінок KCM у KCMultiDialog (виправлено ваду 405440)
KCompletion
- Усунено встановлення порожнього засобу доповнення для непридатного до редагування спадного списку
KConfig
- Додано можливість сповіщення до revertToDefault
- У файлі readme додано посилання на сторінку вікі
- kconfig_compiler: реалізовано нові аргументи kcfgc у HeaderExtension та SourceExtension
- [kconf_update] Реалізовано перехід з нетипового журналювання на qCDebug
- Усунено посилання з const KConfigIniBackend::BufferFragment &
- Макрос KCONFIG_ADD_KCFG_FILES: забезпечено враховування зміни File= у kcfg
KCoreAddons
- Виправлено «* foo *», нам не потрібно робити напівжирним відповідний рядок
- Виправлено неповне позначення адреси у відповідь на клацання на адресі контакту (виправлено ваду 401996)
- Реалізовано виведення strerror, якщо сталася помилка inotify (типова причина: «надто багато відкритих файлів»)
KDBusAddons
- Замінено connect у старому стилі на connect у новому
KDeclarative
- [GridViewKCM] Виправлено неявне обчислення ширини
- Код таблиці пересунуто до окремого файла
- Реалізовано усування дробових значень у розмірах і вирівнюванні GridDelegate
Підтримка KDELibs 4
- Вилучено модулі пошуку, які надаються ECM
KDocTools
- Оновлено переклад українською
- Оновлення каталанського перекладу
- Замінники у італійській локалі: оновлено адреси, використано https
- Оновлено адреси з метою використання https
- Реалізовано використання перекладу індонезійською
- Оновлено дизайн так, щоб виглядав подібніше до kde.org
- Додано файли для індонезійської мови для усієї документації індонезійською
KFileMetaData
- Реалізовано підтримку запису даних щодо оцінок до засобу запису taglib
- Реалізовано більше міток для засобу запису taglib
- Переписано засіб запису taglib з метою використання інтерфейсу властивостей
- Реалізовано перевірку засобу видобування даних ffmpeg з використанням допоміжного засобу визначення типів MIME (виправлено ваду 399650)
- Запропоновано Stefan Bruns як супровідника KFileMetaData
- Реалізовано оголошення PropertyInfo як QMetaType
- Реалізовано запобіжник від некоректних файлів
- [TagLibExtractor] Реалізовано використання належних типів MIME у випадку успадковування
- Додано допоміжний засіб для визначення справжнього підтримуваного батьківського типу MIME
- [taglibextractor] Реалізовано перевірку видобування властивостей із декількома значеннями
- Реалізовано створення заголовка для нових MimeUtils
- Реалізовано використання функції Qt для форматування списку рядків
- Виправлено локалізацію чисел для властивостей
- Реалізовано перевірку типів MIME для усіх наявних зразків файлів, додано перевірки
- Додано допоміжну функцію для визначення типу MIME на основі вмісту та суфіксу назви файла (виправлено ваду 403902)
- Додано підтримку видобування даних з файлів ogg та ts (виправлено ваду 399650)
- [ffmpegextractor] Додано перевірку відео Matroska (виправлено ваду 403902)
- Переписано засіб видобування taglib з метою використання загального інтерфейсу PropertyMap (виправлено ваду 403902)
- [ExtractorCollection] Реалізовано «ліниве» завантаження додатків видобування
- Виправлено видобування властивості співвідношення розмірів
- Збільшено точність для властивості частоти кадрів
KHolidays
- Упорядковано польські категорії свят
KI18n
- Реалізовано зручні для читання повідомлення щодо помилок, якщо Qt5Widgets потрібні для роботи, але їх не знайдено
KIconThemes
- Виправлено піктограму фаски, яка не вкладалася точно у потрібний розмір (виправлено ваду 396990)
KImageFormats
- ora:kra: qstrcmp -> memcmp
- Виправлено RGBHandler::canRead
- xcf: усунено аварійне завершення роботи, якщо у файлах використано непідтримувані режими шарів
KIO
- Замінено currentDateTimeUtc().toTime_t() на currentSecsSinceEpoch()
- Замінено QDateTime::to_Time_t/from_Time_t на to/fromSecsSinceEpoch
- Поліпшено піктограми вікна виконуваного файла (виправлено ваду 406090)
- [KDirOperator] Реалізовано типовий показ докладного ієрархічного перегляду
- KFileItem: реалізовано виклик stat(), додано параметр SkipMimeTypeDetermination
- KIOExec: виправлено помилку, яка могла статися, якщо у віддаленій адресі не було назви файла
- Реалізовано перемикання slotOk у KFileWidget у режимі збереження одного файла при натисканні Enter/Return на KDirOperator (виправлено ваду 385189)
- [KDynamicJobTracker] Використано створений інтерфейс DBus
- [KFileWidget] При збереженні реалізовано підсвічування назви файла після клацання, а також подвійного клацання на пункті наявного файла
- Усунено створення мініатюр для шифрованих сховищ (виправлено ваду 404750)
- Виправлено перейменування каталогів WebDAV, якщо вимкнено KeepAlive
- Реалізовано показ списку міток на PlacesView (виправлено ваду 182367)
- Діалогове вікно підтвердження вилучення: виправлено помилковий заголовок
- Реалізовано показ належного файла/шляху у повідомлення «надто великий для fat32» (виправлено ваду 405360)
- Реалізовано використання у повідомленні щодо помилки ГіБ, замість ГБ (виправлено ваду 405445)
- openwithdialog: реалізовано використання прапорця рекурсії у фільтрі проксі
- Реалізовано вилучення отримання адрес, якщо завдання з побудови списку завершено (виправлено ваду 383534)
- [CopyJob] Реалізовано обробку адреси як незавершеної, якщо вибрано перейменування файла як вирішення конфлікту
- Реалізовано передавання шляху до локального файла до KFileSystemType::fileSystemType()
- Виправлено перейменування з використанням літер верхнього/нижнього регістру у випадку файлових систем, де регістр літер не береться до уваги
- Усунено причину попереджень «Некоректна адреса: QUrl("якийсь_файл.txt")» у діалоговому вікні збереження файлів (виправлено ваду 373119)
- Усунено аварійне завершення роботи під час пересування файлів
- Виправлено приховану перевірку NTFS на символічні посилання на точки монтування NTFS (виправлено ваду 402738)
- Перезапис файлів зроблено дещо безпечнішим (виправлено ваду 125102)
Kirigami
- Виправлено implicitWidth у listItems
- Використано ентропію Шеннона для визначення монохромної піктограми
- Реалізовано запобігання зникненню засобу малювання контексту
- Вилучено actionmenuitembase
- Усунено спроби отримання версій для статичних збірок
- [Обробка мнемоніки] Реалізовано заміну лише першого значеного випадку
- Реалізовано синхронізацію при будь-яких оновлення властивості моделі
- Використано назву піктограми у back/forward
- Виправлено панелі інструментів для шарів
- Виправлено помилки у файлах прикладів kirigami
- Додано компоненти SearchField і PasswordField
- Виправлено піктограми елементів керування (виправлено ваду 404714)
- [InlineMessage] Усунено малювання тіней навколо повідомлення
- Реалізовано негайну зміну компонування після зміни порядку
- Виправлено компонування у режимі послідовної навігації
- Усунено показ панелі інструментів, якщо поточний елемент її не вимагає.
- Реалізовано керування переходами вперед-назад у фільтрі
- Реалізовано підтримку кнопок миші вперед-назад
- Додано «ліниве» створення екземплярів підменю
- Виправлено панелі інструментів для шарів
- kirigami_package_breeze_icons: реалізовано пошук 16-піксельних піктограм
- Виправлено збирання за допомогою Qmake
- Реалізовано отримання долученої властивості належного запису
- Виправлено логіку показу панелі інструментів
- Реалізовано можливість вимикання панелі інструментів для сторінок шару
- Реалізовано неодмінний показу загальної панелі інструментів у загальних режимах
- Реалізовано сигнал Page.contextualActionsAboutToShow
- Додано трохи місця праворуч від заголовка
- Реалізовано зміну компонування при зміні видимості
- ActionTextField: реалізовано належне розташування кнопок дій
- topPadding і BottomPadding
- Зафіксовано білий колір тексту на зображеннях (виправлено ваду 394960)
- Реалізовано обрізання overlaysheet (виправлено ваду 402280)
- Усунено можливість призначення батьківським елементом ColumnView OverlaySheet
- Реалізовано використання qpointer для екземпляра теми (виправлено ваду 404505)
- Реалізовано приховування послідовної навігації на сторінках, де не буде показано панелі інструментів (виправлено ваду 404481)
- Усунено спроби перевизначити властивість enabled (виправлено ваду 404114)
- Реалізовано можливість визначення нетипового верхнього і нижнього колонтитулів у ContextDrawer (виправлено ваду 404978)
KJobWidgets
- [KUiServerJobTracker] Реалізовано оновлення destUrl до завершення завдання
KNewStuff
- Здійснено перехід адрес на https
- Оновлено посилання на проєкт fsearch
- Реалізовано обробку непідтримуваних команд OCS і скасовано перевизначення (виправлено ваду 391111)
- Реалізовано нове місце для файлів KNSRC
- [knewstuff] Вилучено застарілий у qt5.13 метод
KNotification
- [KStatusNotifierItem] Реалізовано надсилання підказки щодо запису desktop
- Уможливлено встановлення нетипових підказок для сповіщень
KNotifyConfig
- Уможливлено вибір лише підтримуваних файлів звукових даних (виправлено ваду 405470)
Набір бібліотек KPackage
- Виправлено пошук файла призначення для інструментів основної системи у середовищі Docker для Android
- Додано підтримку перехресної компіляції для kpackagetool5
KService
- До списку відомих ключів додано X-GNOME-UsesNotifications
- Додано мінімальну версію bison 2.4.1 через використання %code
KTextEditor
- Виправлено застосування кольорів тексту за вибраною схемою (виправлено ваду 398758)
- DocumentPrivate: до меню «Перегляд» додано пункт «Автоперезавантаження документа» (виправлено ваду 384384)
- DocumentPrivate: реалізовано підтримку визначення словника для позначеного блоком фрагмента тексту
- Виправлено рядок слів і символів на katestatusbar
- Виправлено мінікарту зі стилем QtCurve
- KateStatusBar: реалізовано показ піктограми замочка на модифіковані мітці у режимі лише читання
- DocumentPrivate: реалізовано пропускання автоматичного додавання лапок, якщо лапки вже врівноважено (виправлено ваду 382960)
- Додано інтерфейс Variable у KTextEditor::Editor
- Код оптимізовано для оцінки лише у діагностичній збірці, має працювати у збірці для випущених пакунків
- Забезпечено сумісність із застарілими файлами налаштувань
- Розширено використання загального інтерфейсу налаштувань
- Спрощено QString KateDocumentConfig::eolString()
- Реалізовано передавання параметра sonnet до KTextEditor
- Забезпечено обробку прогалин у списку ключів налаштування
- Додатково розширено використання загального інтерфейсу налаштувань
- Розширено використання загального інтерфейсу налаштувань
- Ще розширено використання загального інтерфейсу налаштувань
- Усунено аварійне завершення роботи при обробці помилково форматованих файлів підсвічування синтаксичних конструкцій
- IconBorder: реалізовано підтримку подій з перетягування зі скиданням (виправлено ваду 405280)
- ViewPrivate: скасовування позначення за допомогою клавіш зі стрілочками зроблено зручнішим (виправлено ваду 296500)
- Виправлено показ підказки щодо аргументів на неосновних екранах
- Портовано застарілий метод
- Реалізовано відновлення перенесеного при пошуку повідомлення до початкового типу і розташування (виправлено ваду 398731)
- ViewPrivate: «Застосувати перенесення слів» зроблено комфортнішим (виправлено ваду 381985)
- ModeBase::goToPos: забезпечено коректність переходу до цілі (виправлено ваду 377200)
- ViInputMode: зі смужки стану вилучено непідтримувані атрибути тексту
- KateStatusBar: додано кнопку словника
- Додано приклад для вади, яку пов'язано із висотою рядків
KWidgetsAddons
- KFontRequester зроблено послідовнішим
- Оновлено дані kcharselect до Unicode 12.0
KWindowSystem
- Реалізовано надсилання контрастності розмивання і тла у пікселях пристрою (виправлено ваду 404923)
NetworkManagerQt
- WireGuard: забезпечено працездатність маршалювання і демаршалювання реєстраційних даних
- Додано підтримку WireGuard до базового класу параметрів
- Wireguard: реалізовано обробку закритого ключа як реєстраційних даних
- Wireguard: реалізовано визначення для властивості вузлів NMVariantMapList
- Додано підтримку типу з'єднань Wireguard
- ActiveConnecton: додано сигнал stateChangedReason, за допомогою якого можна бачити причину зміни стану
Бібліотеки Plasma
- [AppletInterface] Реалізовано перевірку наявності corona до спроби отримання доступу
- [Діалогове вікно] Усунено переспрямовування події наведення вказівника миші, якщо немає до чого переспрямовувати
- [Меню] Виправлено сигнал triggered
- Зменшено важливість частини діагностичних даних так, щоб можна було бачити суттєві попередження
- [Спадний список PlasmaComponents3] Виправлено textColor
- FrameSvgItem: реалізовано перехоплення змін полів FrameSvg поза власними методами
- Додано Theme::blurBehindEnabled()
- FrameSvgItem: виправлено textureRect для мозаїчних піделементів — стискання до 0 тепер неможливе
- Виправлено тло діалогового вікна breeze у Qt 5.12.2 (виправлено ваду 405548)
- Усунено аварійне завершення роботи у plasmashell
- [Пункт із піктограмою] Реалізовано спорожнення піктограми зображення, якщо використано Svg з Плазми (виправлено ваду 405298)
- Реалізовано визначення висоти textfield лише на основі даних про сам текст (виправлено ваду 399155)
- Реалізовано прив'язку alternateBackgroundColor
Purpose
- Додано додаток SMS до KDE Connect
QQC2StyleBridge
- Реалізовано підтримку розфарбовування піктограм у стилі стільниці Плазми
- [SpinBox] Поліпшено обробку поведінки коліщатка миші
- На панелі інструментів додано невелику фаску
- Виправлено піктограми RoundButton
- Реалізовано додавання фаски до усіх делегатів на основі даних щодо смужки гортання
- Реалізовано визначення розмірів для полів за смужкою гортання scrollview
Solid
- Уможливлено збирання без UDev у Linux
- Реалізовано отримання clearTextPath, лише якщо це потрібно
Підсвічування синтаксису
- Додано визначення синтаксичних конструкцій мови Elm
- AppArmor і SELinux: вилучено один відступ у файлах XML
- Doxygen: заборонено використання чорного кольору у мітках
- Уможливлено перемикання контексту завершення рядків у порожніх рядках (виправлено ваду 405903)
- Виправлено згортання endRegion у правилах з beginRegion+endRegion (використано length=0) (виправлено ваду 405585)
- До засобів підсвічування синтаксису groovy додано розширення (виправлено ваду 403072)
- Додано файл підсвічування синтаксичних конструкцій Smali
- Додано «.» як weakDeliminator у файлі синтаксичних конструкцій Octave
- Logcat: виправлено колір dsError з underline="0"
- Усунено аварійне завершення роботи засобу підсвічування синтаксису для пошкоджених файлів hl
- Реалізовано захист при компонуванні бібліотек призначення у застарілих версіях CMake (виправлено ваду 404835)
Відомості щодо безпеки
Випущений код підписано за допомогою GPG з використанням такого ключа: pub rsa2048/58D0EE648A48B3BB 2016-09-05 David Faure <faure@kde.org> Відбиток основного ключа: 53E6 B47B 45CE A3E0 D5B7 4577 58D0 EE64 8A48 B3BB
Встановлення бінарних пакунків
У Linux рекомендованим шляхом встановлення KDE Frameworks є пакунки вашого улюбленого дистрибутива. Настанови щодо встановлення програмного забезпечення KDE у вашому дистрибутиві Linux.
Збирання з початкових кодів
Увесь початковий код програм KDE Frameworks 5.57.0 можна отримати безкоштовно. Настанови щодо збирання та встановлення доступні на інформаційній сторінці програми KDE Frameworks 5.57.0.
Бібліотеки також можна зібрати з початкових кодів за допомогою базової системи команд cmake .; make; make install. Цей спосіб є найпростішим, якщо вам потрібні лише окремі бібліотеки шару 1. Зацікавленим в удосконаленні бібліотек та стеженні за розробкою загального набору варто скористатися скриптом kdesrc-build. Для роботи Frameworks 5.57.0 потрібна версія Qt
Із докладним списком усіх бібліотек Frameworks можна ознайомитися на api.kde.org.
Приєднатися до команди
Ті, кому цікаво стежити за розробкою Frameworks і взяти участь у його розробці, можуть ознайомитися із вмістом сховищ git і стежити за обговореннями у списку листування розробників KDE Frameworks. Правила і поточний стан проєкту і плани наведено у вікі Frameworks. Інтерактивні обговорення проводять на каналі IRC #kde-devel у Libera Chat.
Підтримка KDE
KDE — спільнота з розробки вільного програмного забезпечення, яка розвивається лише завдяки допомозі багатьох добровольців, які працюють у вільний від інших занять час. KDE завжди шукає нових учасників, які можуть допомогти розробці, виправленні і сповіщенні про вади, створенні документації, перекладі, просуванні, фінансуванні тощо. Будь-який внесок буде з вдячністю сприйнято спільнотою. Будь ласка, ознайомтеся зі сторінкою підтримки KDE, щоб дізнатися більше, або станьте спонсором KDE e.V. за допомогою нашої ініціативи Join the Game.