Субота, 10 серпня 2019
Сьогодні KDE оголошено про випуск KDE Frameworks 5.61.0.
KDE Frameworks складається з 70 додаткових бібліотек, які розширюють можливості Qt і реалізують багато широковживаних функціональних можливостей, є зрілими, належним чином рецензованими та добре перевіреними, а також надаються за дотримання розробниками достатньо дружніх щодо них умов. Вступні зауваження щодо цих бібліотек можна знайти у оголошенні щодо випуску KDE.
Цей випуск є частиною запланованої послідовності щомісячних випусків, яка надасть змогу розробникам використовувати поліпшення у бібліотеках швидко і без проблем.
Нове у поточній версії
Baloo
- Реалізовано компонування з KIOCore, замість KIOWidgets, у kioslaves
- [IndexCleaner] Реалізовано ігнорування записів, яких не існує, у налаштуваннях
BluezQt
- Усунено аварійне завершення роботи через те, що q-вказівник не було ініціалізовано
- Усунено включення bluezqt_dbustypes.h зі встановлених файлів заголовків
Піктограми Breeze
- Додано піктограму «user-others» (виправлено ваду 407782)
- Піктограму «edit-none» зроблено символічним посиланням на «dialog-cancel»
- Вилучено зайві і монохромні версії піктограми applications-internet
- Додано піктограми view-pages-*, які потрібні в Okular для вибору компонування сторінок (виправлено ваду 409082)
- Використано стрілки за годинниковою стрілкою для піктограм refresh та update-* (виправлено ваду 409914)
Додаткові модулі CMake
- android: уможливлено перевизначення ANDROID_ARCH і ANDROID_ARCH_ABI як змінних середовища
- Реалізовано сповіщення користувачів щодо prefix.sh при використанні KDE_INSTALL_USE_QT_SYS_PATHS
- Реалізовано краще типове значення CMAKE_INSTALL_PREFIX
- Стандартним типом збирання, якщо збирання виконується із копії git, зроблено «Debug»
KActivitiesStats
- Додано термін Date до статистичних даних KActivities у фільтрі за датою події ресурсу
KActivities
- Спрощено код previous-/nextActivity у kactivities-cli
Інструменти Doxygen KDE
- Виправлено каталоги перевірки для metainfo.yaml із символами поза ASCII у Python 2.7
- Реалізовано запис до журналу назв шляхів (за допомогою repr()) замість повного аварійного завершення роботи
- Реалізовано створення списку файлів даних на льоту
KArchive
- KTar::openArchive: усунено непроходження перевірки, якщо у файла два кореневих каталоги
- KZip::openArchive: усунено непроходження перевірки при відкритті пошкоджених файлів
KCMUtils
- Адаптовано до змін інтерфейсу користувача у KPageView
KConfig
- Безпека: вилучено підтримку $(...) у ключах налаштувань із позначкою [$e]
- Включено визначення для класу, який використано у заголовку
KCoreAddons
- Додано функцію KFileUtils::suggestName для створення пропозицій унікальних назв файлів
KDeclarative
- Scrollview — усунено заповнення батьківського елемента на снові панелі перегляду (виправлено ваду 407643)
- Впроваджено FallbackTapHandler
- Проксі QML KRun: виправлено помилки зі шляхом і адресою
- Події календаря: уможливлено показ подробиць подій у додатках
KDED
- Файл desktop kded5: використано коректний тип (Service) для придушення попередження від kservice
Підтримка KDELibs 4
- Додаток Designer: реалізовано однорідне використання «KF5» у назвах груп і тексті
- Усунено оголошення за допомогою KPassivePopup
KDesignerPlugin
- Розкрито для використання новий KBusyIndicatorWidget
- Вилучено створення додатка designer для KF5WebKit
KDE WebKit
- Реалізовано використання ECMAddQtDesignerPlugin замість KF5DesignerPlugin
- Додано параметр для збирання додатка Qt Designer (BUILD_DESIGNERPLUGIN, типове значення — ON)
KFileMetaData
- Оновлено засіб видобування даних з файлів mobipocket, але не увімкнено його
KHolidays
- Додано дні-замінники громадських свят у Росії за 2019-2020 роки
- Оновлено записи свят у Росії
KIconThemes
- Відновлено «Реалізовано перевірку того, чи group < LastGroup, оскільки KIconEffect все одно не обробляє UserGroup»
KIO
- Визнано застарілим suggestName на користь того самого у KCoreAddons
- Усунено помилку щодо неможливості увійти до каталогу на деяких серверах FTP із турецькою локаллю (виправлено ваду 409740)
Kirigami
- Переписано Kirigami.AboutPage
- Реалізовано однорідне використання Units.toolTipDelay замість жорстко вписаних значень
- Реалізовано належне визначення розміру вмісту картки, коли розмір картки обмежено
- Реалізовано приховування брижів, якщо ми не хочемо, щоб пункти можна було натискати
- Синхронізовано елемент керування із довільною висотою шафки
- [SwipeListItem] Враховано значення видимості смужки гортання та формфактора для елемента керування та вбудованих дій
- Вилучено масштабування одиниці виміру розміру піктограм для isMobile
- Реалізовано безумовний показ кнопок повернення, якщо шарів > 1
- Реалізовано приховування пунктів дій із підменю з меню «Інше»
- Реалізовано типове розташування ActionToolBar щодо заголовка
- Усунено помилку, пов'язану із тим, що велике Z не можна було бачити у діалогових вікнах
- Реалізовано використання непрозорості для приховування кнопок, які не вміщаються
- Реалізовано додавання інтервалу, лише якщо він вписується у ширину
- Реалізовано повну зворотну сумісність із showNavigationButtons як булевим значенням
- Реалізовано більшу роздільність для globalToolBar.showNavigationButtons
KItemModels
- Супровідником KItemModels тепер є Давид Фауре (David Faure)
- KConcatenateRowsProxyModel: додано нотатку щодо того, що у Qt 5.13 є QConcatenateTablesProxyModel
Набір бібліотек KPackage
- Реалізовано пропозицію щодо metadata.json при запитах щодо метаданих пакунка
- PackageLoader: реалізовано використання належної області для KCompressionDevice
KPeople
- declarative: реалізовано оновлення списку дій при зміні персони
- declarative: усунено аварійне завершення роботи при помилковому використанні програмного інтерфейсу
- personsmodel: додано phoneNumber
KService
- Розкрито доступ до інтерфейсів X-KDE-Wayland
- Виправлено збирання KService на Android
- KService: вилучено непрацездатну концепцію загальної бази даних sycoca
- Вилучено дуже небезпечний код вилучення у kbuildsycoca5 --global
- Усунено нескінченну рекурсію та непроходження оцінок, якщо база даних sycoca є недоступною для читання користувачем (наприклад, належить користувачу root)
- Визнано застарілим KDBusServiceStarter. Використання kdepim повністю вилучено, активація DBus є кращим рішенням.
- Уможливлено побудову KAutostart на основі абсолютного шляху
KTextEditor
- Реалізовано збереження і завантаження полів сторінки
- Усунено потребу у розпізнаванні користувача
- Змінено типове клавіатурне скорочення для дії «Перемкнути режим введення» так, щоб не було конфліктів із konsolepart (виправлено ваду 409978)
- Реалізовано типове повернення HideListIfAutomaticInvocation для моделі автоматичного доповнення
- Мінікарта: усунено перехоплення left-mouse-button-click для кнопок «вгору-вниз»
- Уможливлено до діапазонів підсвічування 1024 замість вимикання підсвічування взагалі, якщо досягнуто обмеження
- Виправлено перенесення рядків із кінцевою позицією у позиції 0 рядка (виправлено ваду 405197)
- Додано параметр для обробки деяких символів, подібний до «автодужок», але при позначенні певного фрагмента тексту
- Додано пункт дії для вставлення нового рядка без відступу (виправлено ваду 314395)
- Додано параметр для вмикання та вимикання перетягування тексту зі вставлянням (типово увімкнено)
KUnitConversion
- Додано одиниці виміру розміру двійкових даних (біти, кілобайти, кібібайти тощо)
Бібліотека KWallet
- Пересунуто ініціалізатор kwalletd на позицію вище у коді (виправлено ваду 410020)
- Повністю вилучено агент перенесення даних kde4 (виправлено ваду 400462)
KWayland
- Реалізовано використання протоколів wayland
KWidgetsAddons
- Для kpageview впроваджено концепції верхнього і нижнього колонтитулів
- [Індикатор зайнятості] Встановлено відповідність тривалості версії у QQC2
- Додано діалогове вікно попередження із придатним до згортання розділом подробиць
- Реалізовано новий клас KBusyIndicatorWidget, подібний до BusyIndicator у QtQuick
KWindowSystem
- [platforms/xcb] Використано розширення XRES для отримання справжнього PID вікна (виправлено ваду 384837)
- Портовано KXMessages з QWidget
KXMLGUI
- Додано розпірки як параметр налаштовування панелей інструментів
- Реалізовано використання монохромних піктограм дій для кнопок KAboutData
- Вилучено з'єднання із visibilityChanged, краще користуватися наявним eventFilter
ModemManagerQt
- Уможливлено оновлення типового часу очікування DBus для кожного з інтерфейсів
NetworkManagerQt
- Пристрій: включено reapplyConnection() до інтерфейсу
Бібліотеки Plasma
- [ToolButtonStyle] Реалізовано використання тієї самої групи для стану наведення вказівника
- Реалізовано обробку файла кольорів у засобі встановлення фіктивної теми Плазми
- Реалізовано встановлення теми Плазми до локального XDG_DATA_DIR для перевірки піктограм
- Застосовано зміну тривалості для індикатора зайнятості з D22646 до стилю QQC2
- Реалізовано збирання додатків структури пакунка до очікуваного підкаталогу
- Highlight замінено на ButtonFocus
- Виправлено запуск dialognativetest без встановлення
- Реалізовано пошук додатка іншим плазмоїдом
- [Індикатор зайнятості] Встановлено відповідність тривалості версії у QQC2
- Додано пропущені компоненти у org.kde.plasma.components 3.0
- Оновлено піктограми освіження та перезапуску так, щоб вони відповідали новим версіям з піктограм Breeze (виправлено ваду 409914)
- Виправлено ваду, пов'язану із тим, що itemMouse не було визначено у plasma.components 3.0
- Реалізовано використання clearItems, якщо аплет вилучають
- Усунено аварійне завершення роботи, якщо switchSize було змінено під час початкового налаштовування
- Поліпшено кешування додатків
Purpose
- Phabricator: реалізовано автоматичне відкриття нової різниці у браузері
- Виправлено видобування повідомлень. Латка від Віктора Рижих.
QQC2StyleBridge
- Усунено помилкову захисну умову, яка запобігала застосуванню стилів до повзунків із від'ємними значеннями
- Уповільнено обертання індикатора зайнятості
- Виправлено «помилку типів» при створенні TextField зі значенням focus true
- [ComboBox] Встановлено правила закриття на закриття при клацання за межами, а не клацанні за межами батьківського віджета (виправлено ваду 408950)
- [SpinBox] Встановлено renderType (виправлено ваду 409888)
Solid
- Забезпечено можливість повторного входу для модулів solid
Підсвічування синтаксису
- TypeScript: виправлено ключові слова в умовних виразах
- Виправлено шляхи до генератора та тесті у CMake
- Додано підтримку для додаткових ключових слів QML, які не є частиною JavaScript
- Оновлено підсвічування для CMake
Відомості щодо безпеки
Випущений код підписано за допомогою 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.61.0 можна отримати безкоштовно. Настанови щодо збирання та встановлення доступні на інформаційній сторінці програми KDE Frameworks 5.61.0.
Бібліотеки також можна зібрати з початкових кодів за допомогою базової системи команд cmake .; make; make install. Цей спосіб є найпростішим, якщо вам потрібні лише окремі бібліотеки шару 1. Зацікавленим в удосконаленні бібліотек та стеженні за розробкою загального набору варто скористатися скриптом kdesrc-build. Для роботи Frameworks 5.61.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.