Вівторок, 15 листопада 2016
Сьогодні KDE оголошено про випуск KDE Frameworks 5.28.0.
KDE Frameworks складається з 70 додаткових бібліотек, які розширюють можливості Qt і реалізують багато широковживаних функціональних можливостей, є зрілими, належним чином рецензованими та добре перевіреними, а також надаються за дотримання розробниками достатньо дружніх щодо них умов. Вступні зауваження щодо цих бібліотек можна знайти у оголошенні щодо випуску KDE.
Цей випуск є частиною запланованої послідовності щомісячних випусків, яка надасть змогу розробникам використовувати поліпшення у бібліотеках швидко і без проблем.
Нове у поточній версії
Нова бібліотека: syntax-highlighting
Рушій підсвічування синтаксичних конструкцій для визначень синтаксису Kate
Це самодостатня реалізація рушія підсвічування синтаксичних конструкцій Kate. Вона може стати будівельним блоком текстових редакторів або простим засобом підсвічування фрагментів коду (наприклад HTML). Передбачено підтримку як інтеграції з нетиповим редактором, так і готовий до використання підклас QSyntaxHighlighter.
Піктограми Breeze
- Оновлено піктограми дій kstars (виправлено ваду 364981)
- Усунено ваду, пов'язану із тим, що Breeze Dark у списку Системних параметрів було показано як Breeze — помилковий файл .themes (виправлено ваду 370213)
Додаткові модулі CMake
- Реалізовано роботу KDECMakeSettings з KDE_INSTALL_DIRS_NO_DEPRECATED
- Усунено потребу у прив'язках до мови python у ECM
- Додано модуль PythonModuleGeneration
KActivitiesStats
- Реалізовано ігнорування стану посилання при упорядковуванні моделей UsedResources та LinkedResources
Інструменти Doxygen KDE
- [CSS] Скасовано зміни, внесені doxygen 1.8.12
- Додано файл doxygenlayout
- Оновлено спосіб визначення назв груп
KAuth
- Забезпечено можливість надсилання декількох запитів
- Забезпечено отримання даних щодо поступу шляхом читання виведених програмою даних
KConfig
- Забезпечено надійність збирання, якщо раніше було пропущено модулі з помилками
- Усунено критичну помилку, якщо не вдалося обробити поле File
KCoreAddons
- Реалізовано показ помилкових адрес
- Реалізовано завантаження аватарів користувача з AccountsServicePath, якщо такий існує (виправлено ваду 370362)
KDeclarative
- [QtQuickRendererSettings] Виправлення: типовим є порожнє значення, а не «false»
Підтримка KDELibs 4
- Доповнено зображення прапору Франції
KDocTools
- Виправлено ваду «checkXML5 створює файли html у робочому каталозі для коректних docbook» (вада 371987)
KIconThemes
- Реалізовано підтримку нецілих коефіцієнтів масштабування у kiconengine (вада 366451)
KIdleTime
- Усунено зайве використання повідомлень «waiting for» у виведенні до консолі
KImageFormats
- imageformats/kra.h — перевизначає для KraPlugin capabilities() і create()
KIO
- Виправлено формат дати HTTP, що надсилається kio_http — завжди слід використовувати локаль C (виправлено ваду 372005)
- KACL: усунено витоки пам'яті, які було виявлено ASAN
- Усунено витоки пам'яті у KIO::Scheduler, які було виявлено ASAN
- Вилучено зайву кнопку спорожнення (виправлено ваду 369377)
- Виправлено редагування записів автоматичного запуску, якщо /usr/local/share/applications не існує (виправлено ваду 371194)
- [KOpenWithDialog] Реалізовано приховування заголовка TreeView
- Врегульовано розмір буфера назви символічних посилань (виправлено ваду 369275)
- Реалізовано належне завершення DropJobs якщо не надіслано сигнал triggered (виправлено ваду 363936)
- ClipboardUpdater: усунено ще одне аварійне завершення у Wayland (виправлено ваду 359883)
- ClipboardUpdater: усунено аварійне завершення у Wayland (виправлено ваду 370520)
- Реалізовано підтримку нецілих коефіцієнтів масштабування у KFileDelegate (вада 366451)
- kntlm: Реалізовано розрізнення між доменами NULL і порожнім
- Усунено показ діалогового вікна перезапису, якщо назва файла є порожньою
- kioexec: реалізовано використання дружніх до користувача назв файлів
- Виправлено права власності на фокус, якщо адресу було змінено до показу віджета
- Значне поліпшення швидкодії, якщо у діалоговому вікні роботи з файлами вимкнено попередній перегляд (виправлено ваду 346403)
KItemModels
- Додано прив'язки до мови python
KJS
- Експортовано FunctionObjectImp, використовується засобом діагностики khtml
KNewStuff
- Відокремлено упорядковування і фільтрування
- Уможливлено надсилання запитів щодо встановлених записів
KNotification
- Усунено скасовування посилання на об'єкт, на який не створювалося посилання, коли для сповіщення не було дії
- Усунено аварійне завершення у KNotification, якщо використовується у QGuiApplication, службу сповіщення не запущено (виправлено ваду 370667)
- Усунено аварійні завершення роботи у NotifyByAudio
Набір бібліотек KPackage
- Забезпечено пошук метаданих як у json, так і у desktop
- Реалізовано захист від знищення Q_GLOBAL_STATIC під час завершення роботи програми
- Усунено повислий вказівник у KPackageJob (виправлено ваду 369935)
- Реалізовано вилучення пошуку, пов'язаного із ключем під час вилучення визначення
- Реалізовано створення піктограми до файла appstream
KPty
- Реалізовано використання ulog-helper у FreeBSD замість utempter
- Поліпшено пошук utempter: тепер використовується і базовий префікс cmake
- Реалізовано обхід помилок find_program ( utempter ...)
- Використано шлях ECM для пошуку виконуваного файла utempter, цей спосіб є надійнішим за простий префікс cmake
KRunner
- i18n: реалізовано обробку рядків у файлах kdevtemplate
KTextEditor
- Breeze Dark: Колір тла поточного рядка зроблено темнішим для покращення зручності читання (виправлено ваду 371042)
- Упорядковано інструкції Dockerfile
- Breeze (Dark): Коментарі зроблено світлішими для поліпшення зручності читання (виправлено ваду 371042)
- Виправлено відступи CStyle і C++/boost, якщо увімкнено автоматичне розставляння дужок (виправлено ваду 370715)
- Додано перемикач «auto-brackets»
- Виправлено вставлення тексту після кінця файла (рідкісний випадок)
- Виправлено некоректні файли підсвічування xml
- Maxima: вилучено жорстке кодування кольорів, виправлено мітку itemData
- Додано визначення синтаксичних конструкцій OBJ, PLY та STL
- Додано підсвічування синтаксичних конструкцій для Praat
KUnitConversion
- Нові теплові та електричні одиниці виміру та функція перетворення одиниць
Бібліотека KWallet
- Реалізовано використання KF5Gpgmepp, якщо не знайдено Gpgmepp
- Реалізовано використання Gpgmepp з GpgME-1.7.0
KWayland
- Поліпшено придатність до пересування розділу експортування CMake
- [інструменти] Виправлено створення wayland_pointer_p.h
- [інструменти] Реалізовано створення методів eventQueue лише для загальних класів
- [сервер] Усунено аварійне завершення під час оновлення фокусованої поверхні клавіатури
- [сервер] Усунено можливе аварійне завершення під час створення DataDevice
- [сервер] Забезпечено наявність DataSource на DataDevice у setSelection
- [інструменти/генератор] Поліпшено працездатність засобу знищення ресурсів на боці сервера
- Додано запит на отримання фокусу у PlasmaShellSurface панелі ролей
- Додано підтримку автоматичного приховування до інтерфейсу PlasmaShellSurface
- Реалізовано підтримку передавання загальної QIcon крізь інтерфейс PlasmaWindow
- [сервер] Реалізовано загальну властивість вікна у QtSurfaceExtension
- [клієнт] Додано методи для отримання ShellSurface з QWindow
- [сервер] Реалізовано надсилання подій вказівника усім ресурсам wl_pointer клієнта
- [сервер] Усунено виклик wl_data_source_send_send, якщо DataSource не обмежено
- [сервер] Реалізовано deleteLater, якщо ClientConnection отримує destroyed (виправлено ваду 370232)
- Реалізовано підтримку протоколу відносного вказівника
- [сервер] Скасовано попередній вибір з SeatInterface::setSelection
- [сервер] Реалізовано надсилання подій клавіатури усім ресурсам wl_keyboard клієнта
KWidgetsAddons
- kcharselect-generate-datafile.py пересунуто до підкаталогу src
- Імпортовано скрипт kcharselect-generate-datafile.py з журналу версій
- Вилучено застарілий розділ
- Додано запис авторських прав і зауваження щодо прав доступу до Unicode
- Усунено попередження: було пропущено override
- Додано символічні блоки SMP
- Виправлено посилання «Див. також»
- Додано пропущені блоки Unicode; поліпшено упорядковування (виправлено ваду 298010)
- Додано категорії символів до файла даних
- Оновлено категорії Unicode у скрипті створення файла даних
- Скориговано скрипт створення файла даних: тепер він здатен обробляти файли даних unicode 5.2.0
- Виконано портування виправлення для створення перекладів
- Уможливлено запис фіктивного файла перекладів скриптом створення файла даних kcharselect
- Додано скрипт для створення файла даних KCharSelect
- Нова програма KCharSelect (використання віджета kcharselect з kdelibs)
KWindowSystem
- Поліпшено придатність до пересування розділу експортування CMake
- У NETWinInfo додано підтримку desktopFileName
KXMLGUI
- Уможливлено використання з'єднання у новому стилі у KActionCollection::addAction
ModemManagerQt
- Виправлено включення каталогу до файла pri
NetworkManagerQt
- Виправлено включення каталогу до файла pri
- Виправлено помилку moc через використання Q_ENUMS у просторі назв, гілка Qt 5.8
Бібліотеки Plasma
- Забезпечено відсутність у екранної панелі прапорця діалогового вікна (виправлено ваду 370433)
- Реалізовано встановлення властивостей контексту до перезавантаження qml (виправлено ваду 371763)
- Усунено повторну обробку файла метаданих, якщо його вже завантажено
- Усунено аварійне завершення у qmlplugindump, якщо недоступне QApplication
- Усунено типовий показ меню «Альтернативи»
- Реалізовано нове булеве значення для використання сигналу активації як перемикача для розгортання (виправлено ваду 367685)
- Виправлено збирання plasma-frameworks з Qt 5.5
- [PluginLoader] Реалізовано використання оператора<< для finalArgs замість списку ініціалізації
- Реалізовано використання kwayland для тіней і розташовування діалогового вікна
- Додано залишок піктограм та поліпшено роботу у мережі
- availableScreenRect/Region пересунуто вище до AppletInterface
- Усунено дії із завантаження контейнерів для вбудованих контейнерів (системні лотки)
- Реалізовано оновлення видимості пункту меню альтернатив аплетів на вимогу
Solid
- Знову виправлено нестабільне упорядковування результатів запитів
- Додано параметр CMake для перемикання між HAL та UDisks у FreeBSD
- Реалізовано збирання модуля UDisks2 на FreeBSD (і, можливо, на інших системах UNIX)
- Windows: усунено показ діалогових вікон повідомлень про помилки (вада 371012)
Відомості щодо безпеки
Випущений код підписано за допомогою 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.28.0 можна отримати безкоштовно. Настанови щодо збирання та встановлення доступні на інформаційній сторінці програми KDE Frameworks 5.28.0.
Бібліотеки також можна зібрати з початкових кодів за допомогою базової системи команд cmake .; make; make install. Цей спосіб є найпростішим, якщо вам потрібні лише окремі бібліотеки шару 1. Зацікавленим в удосконаленні бібліотек та стеженні за розробкою загального набору варто скористатися скриптом kdesrc-build. Для роботи Frameworks 5.28.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.