Субота, 9 квітня 2016
Сьогодні KDE оголошено про випуск KDE Frameworks 5.21.0.
KDE Frameworks складається з 70 додаткових бібліотек, які розширюють можливості Qt і реалізують багато широковживаних функціональних можливостей, є зрілими, належним чином рецензованими та добре перевіреними, а також надаються за дотримання розробниками достатньо дружніх щодо них умов. Вступні зауваження щодо цих бібліотек можна знайти у оголошенні щодо випуску KDE.
Цей випуск є частиною запланованої послідовності щомісячних випусків, яка надасть змогу розробникам використовувати поліпшення у бібліотеках швидко і без проблем.
Нове у поточній версії
Нова бібліотека: KActivitiesStats — бібліотека для доступу до статистичних даних щодо користування, зібраних засобом керування просторами дій KDE.
Усі бібліотеки
Для забезпечення роботи нової версії потрібні бібліотеки Qt >= 5.4. Підтримку попередніх версій, зокрема Qt 5.3, припинено.
Attica
- Додано варіант із const для методу отримання
Baloo
- Централізовано пакетний розмір у налаштуваннях
- Вилучено індексування текстових файлів без суфікса назви .txt, яке блокувало код (виправлено ваду 358098)
- Для визначення типу MIME реалізовано перевірки за обома критеріями: назвою файла та вмістом файла (виправлено ваду 353512)
BluezQt
- ObexManager: розділено повідомлення щодо помилки для об'єктів, яких не вистачає
Піктограми Breeze
- додано піктограми breeze для lokalize
- синхронізовано піктограми програм у breeze і breeze dark
- оновлено піктограми теми та вилучено піктограму application-system, виправлено групи у kicker
- додано підтримку xpi для додатків firefox (виправлено ваду 359913)
- оновлено піктограму okular
- додано підтримку піктограми для програми ktnef
- додано піктограми kmenueditor, kmouse та knotes
- виправлено використання піктограми вимкненого звуку: використовується зображення вимкненого динаміка замість лише червоного кольору (виправлено ваду 360953)
- додано підтримку типу MIME djvu (виправлено ваду 360136)
- реалізовано додавання посилання замість дубльованого запису
- додано піктограму ms-shortcut для gnucash (виправлено ваду 360776)
- змінено тло фонового зображення на типове
- оновлено піктограми для використання типового фонового зображення
- додано піктограму konqueror (вада 360304)
- додано піктограму process-working для анімації поступу у KDE (виправлено ваду 360304)
- додано піктограму встановлення програмного забезпечення та оновлено піктограму оновлення (встановлено правильний колір)
- додано піктограми емблем додавання і вилучення для панелі позначення dolphin, додано піктограму монтування
- Вилучено таблицю стилів з піктограм аплетів аналогового годинника і панелі приладів kicker
- синхронізовано breeze і breeze dark (виправлено ваду 360294)
Додаткові модулі CMake
- Виправлено _ecm_update_iconcache так, щоб оновлювалося лише місце встановлення
- Повернено код до внеску «ECMQtDeclareLoggingCategory: у створений файл включено <QDebug>»
Інтеграція бібліотек
- Реалізовано резервне повернення до реалізації QCommonStyle standardIcon
- Встановлено типовий час закриття меню
KActivities
- Вилучено перевірки щодо компілятора. Тепер усі бібліотеки потребують для збирання компілятор c++11.
- Вилучено QML ResourceModel, оскільки її замінено на KAStats::ResultModel
- Виправлено ваду, пов'язану із тим, що порожній QFlatSet повертав некоректний ітератор
KCodecs
- Спрощено код (qCount -> std::count, власний isprint -> QChar::isPrint)
- виявлення кодування: усунено аварійне завершення роботи через помилкове використання isprint (виправлено ваду 357341)
- Усунено аварійне завершення через неініціалізовану змінну (вада 357341)
KCompletion
- KCompletionBox: реалізовано примусове використання вікна без рамки та невстановлення фокуса
- Виправлено помилку: KCompletionBox не повинна бути підказкою
KConfig
- Додано підтримку отримання місць QStandardPaths у файлах desktop
KCoreAddons
- Виправлено kcoreaddons_desktop_to_json() у windows
- src/lib/CMakeLists.txt — виправлено компонування із бібліотекою Threads
- Додано фіктивний код для уможливлення компіляції на Android
KDBusAddons
- Усунено зайву інтроспекцію інтерфейсу DBus, коли вона не потрібна
KDeclarative
- реалізовано однорідне використання std::numeric_limits
- [DeclarativeDragArea] Усунено перевизначення «text» даних MIME
Підтримка KDELibs 4
- Виправлено застаріле посилання у підручнику до kdebugdialog5
- Усунено додавання Qt5::Network як обов'язкової бібліотеки для решти ConfigureChecks
KDESU
- Встановлено макрос можливостей для уможливлення збирання на libc musl
KEmoticons
- KEmoticons: усунено аварійне завершення у разі помилки loadProvider з якоїсь причини
KGlobalAccel
- Реалізовано належне завершення роботи kglobalaccel5, виправлено надто довге завершення роботи
KI18n
- Реалізовано використання мов системної локалі qt як резервних у системах, відмінних від UNIX
KInit
- Очищено і реорганізовано порт на xcb klauncher
KIO
- FavIconsCache: реалізовано синхронізацію після запису так, щоб інші програми бачили її, а також усунено аварійне завершення після знищення об'єкта
- Виправлено багато вад, пов'язаних із використанням потоків виконання у KUrlCompletion
- Усунено аварійне завершення роботи у діалоговому вікні перейменовування (виправлено ваду 360488)
- KOpenWithDialog: поліпшено заголовок вікна та текст опису (виправлено ваду 359233)
- Забезпечено краще розгортання на різних платформах допоміжних засобів введення-виведення шляхом прив'язування даних щодо протоколу до метаданих додатка
KItemModels
- KSelectionProxyModel: спрощено обробку вилучення рядків, спрощено логіку скасовування позначення
- KSelectionProxyModel: тепер прив'язки повторно створюються після вилучення, лише якщо це потрібно (виправлено ваду 352369)
- KSelectionProxyModel: реалізовано спорожнення прив'язок firstChild лише на верхньому рівні
- KSelectionProxyModel: забезпечено належне надсилання сигналів під час вилучення останнього позначеного
- Реалізовано можливість пошуку у DynamicTreeModel за роллю показу
KNewStuff
- Усунено аварійне завершення, пов'язане із неможливістю знайти файли .desktop або із пошкодженням цих файлів
KNotification
- Реалізовано обробку клацання лівою кнопкою миші на застарілих піктограмах у системному лотку (виправлено ваду 358589)
- Прапорець X11BypassWindowManagerHint використовується тепер лише на платформі X11
Бібліотека Package
- Реалізовано завантаження пакунка після його встановлення
- усунено помилку, яка ставалася, якщо пакунок існує і не потребує оновлення
- Додано Package::cryptographicHash(QCryptographicHash::Algorithm)
KPeople
- Встановлено адресу контакту як адресу профілю у PersonData, якщо профілів не існує
- Встановлено назву для з'єднання із базою даних
KRunner
- Реалізовано імпортування шаблону засобу запуску з KAppTemplate
KService
- Виправлено нове попередження kbuildsycoca, яке показується, якщо тип MIME успадковується із псевдоніма
- Виправлено обробку x-scheme-handler/* під час роботи з mimeapps.list
- Виправлено обробку x-scheme-handler/* під час роботи з mimeapps.list (виправлено ваду 358159)
KTextEditor
- Повернено стан до внеску «Сторінка налаштовування відкриття-збереження: використовуємо термін «тека», а не «каталог»»
- Реалізовано примусове використання UTF-8
- Сторінка налаштовування відкриття-збереження: використовуємо термін «тека», а не «каталог»
- kateschemaconfig.cpp: реалізовано використання правильних фільтрів у діалогових вікнах відкриття-збереження (виправлено ваду 343327)
- c.xml: використано типовий стиль для ключових слів керування потоком обробки
- isocpp.xml: використано типовий стиль «dsControlFlow» для ключових слів керування потоком обробки
- c/isocpp: додано більше стандартних типів C
- KateRenderer::lineHeight() тепер повертає int
- друк: реалізовано використання розміру шрифту із вибраної схеми друку (виправлено ваду 356110)
- пришвидшення cmake.xml: використано WordDetect замість RegExpr
- Змінено ширину табуляцію на 4, замість 8
- Виправлено зміну кольору номера поточного рядка
- Виправлено позначення пункту автодоповнення за допомогою вказівника миші (виправлено ваду 307052)
- Додано підсвічування синтаксичних конструкцій для gcode
- Виправлено малювання тла для позначення на MiniMap
- Виправлено кодування символів у gap.xml (використано UTF-8)
- Виправлено блоки вкладених коментарів (виправлено ваду 358692)
KWidgetsAddons
- Реалізовано врахування полів вмісту під час обчислення прив'язок розміру
KXMLGUI
- Виправлено втрату прив'язаних дій на панелях інструментів редагування
NetworkManagerQt
- ConnectionSettings: реалізовано ініціалізацію часу очікування на луна-імпульс шлюзу
- Реалізовано новий TunSetting та тип з'єднання Tun
- Реалізовано пристрої для усіх відомих типів
Піктограми Oxygen
- Тепер index.theme встановлюється до того самого каталогу, що і у попередніх версіях KDE
- Реалізовано встановлення до oxygen/base/, щоб піктограми, пересунуті з програм, не конфліктували з версіями, встановленими самими програмами
- Реалізовано реплікацію символічних посилань з breeze-icons
- Додано нові піктограми emblem-added та emblem-remove з метою синхронізації із breeze
Бібліотеки Plasma
- [календар] Виправлено помилку, пов'язану із тим, що аплет календаря не знімав позначення при приховування (виправлено ваду 360683)
- оновлено піктограму звуку, нова версія використовує таблицю стилів
- оновлено піктограму вимикання звуку (виправлено ваду 360953)
- Виправлено примусове створення аплетів, якщо Плазма є незмінною
- Усунено відокремлене змішування непрозорості для вузлів, які затінюються (виправлено ваду 355894)
- [Svg] Усунено повторну обробку налаштувань у відповідь на Theme::applicationPaletteChanged
- Діалогове вікно: реалізовано встановлення станів SkipTaskbar/Pager до показу вікна (виправлено ваду 332024)
- Повторно впроваджено властивість busy для Applet
- Забезпечено належний пошук файла експортування PlasmaQuick
- Заборонено імпортування компонування, якого не існує
- Уможливлено надання аплетом тестового об'єкта
- QMenu::exec замінено на QMenu::popup
- FrameSvg: усунено завислі вказівник у sharedFrames при зміні теми
- IconItem: реалізовано планування оновлення растрових зображень при змінах у вікні
- IconItem: реалізовано анімацію зміни стану активності і увімкненості, навіть якщо анімації вимкнено
- DaysModel: реалізовано оновлення слота
- [Запис піктограми] заборонено анімацію з попереднього растрового зображення, якщо його не видно
- [Запис піктограми] заборонено виклик loadPixmap у setColorGroup
- [Аплет] заборонено перезаписування прапорця «Persistent» сповіщення щодо скасовування
- Реалізовано можливість перевизначення параметра змінності Плазми під час створення контейнера
- Додано icon/titleChanged
- Вилучено залежність від QtScript
- Тепер файл заголовків plasmaquick_export.h перебуває у теці plasmaquick
- Реалізовано встановлення деяких файлів заголовків plasmaquick
Обговорити цей випуск та поділитися ідеями можна у розділі коментарів до статті з новиною.
Встановлення бінарних пакунків
У Linux рекомендованим шляхом встановлення KDE Frameworks є пакунки вашого улюбленого дистрибутива. Настанови щодо встановлення програмного забезпечення KDE у вашому дистрибутиві Linux.
Збирання з початкових кодів
Увесь початковий код програм KDE Frameworks 5.21.0 можна отримати безкоштовно. Настанови щодо збирання та встановлення доступні на інформаційній сторінці програми KDE Frameworks 5.21.0.
Бібліотеки також можна зібрати з початкових кодів за допомогою базової системи команд cmake .; make; make install. Цей спосіб є найпростішим, якщо вам потрібні лише окремі бібліотеки шару 1. Зацікавленим в удосконаленні бібліотек та стеженні за розробкою загального набору варто скористатися скриптом kdesrc-build. Для роботи Frameworks 5.21.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.