Субота, 11 січня 2020
Сьогодні KDE оголошено про випуск KDE Frameworks 5.66.0.
KDE Frameworks складається з 70 додаткових бібліотек, які розширюють можливості Qt і реалізують багато широковживаних функціональних можливостей, є зрілими, належним чином рецензованими та добре перевіреними, а також надаються за дотримання розробниками достатньо дружніх щодо них умов. Вступні зауваження щодо цих бібліотек можна знайти у оголошенні щодо випуску KDE.
Цей випуск є частиною запланованої послідовності щомісячних випусків, яка надасть змогу розробникам використовувати поліпшення у бібліотеках швидко і без проблем.
Нове у поточній версії
Усі бібліотеки
- Портування з QRegExp на QRegularExpression
- Портування з qrand на QRandomGenerator
- Виправлено збирання з Qt 5.15 (наприклад, endl тепер Qt::endl, QHash insertMulti тепер потребує використання QMultiHash...)
Attica
- Вилучено використання перевіреного nullptr як джерела даних
- Реалізовано підтримку декількох дочірніх елементів у елементах коментарів
- Реалізовано встановлення належного рядка агента для запитів Attica
Baloo
- Реалізовано належне звітування, якщо baloo_file є недоступним
- Реалізовано перевірку поверненого cursor_open значення
- Реалізовано ініціалізацію значень монітора QML
- Методи обробки адреси пересунуто із kioslave до об'єкта запиту
BluezQt
- Додано інтерфейс Battery1
Піктограми Breeze
- Піктограму XHTML змінено на пурпурову піктограму HTML
- Об'єднано піктограми навушників та блискавки у центрі
- Додано піктограму application/x-audacity-project (виправлено ваду 415722)
- Додано піктограму preferences-system для розміру 32 пікселі
- Додано піктограму application/vnd.apple.pkpass (виправлено ваду 397987)
- Піктограма для ktimetracker зберігалася у форматі PNG у сховищі коду програми, її було замінено справжнім SVG з теми Breeze
- Додано піктограму kipi, яка потребує перероблення до формату теми breeze і svg [або просто вилучити піктограми kipi]
Додаткові модулі CMake
- [android] Виправлено призначення для встановлення apk
- Реалізовано підтримку PyQt5, зібраного із SIP 5
Інтеграція бібліотек
- Вилучено ColorSchemeFilter з KStyle
Інструменти Doxygen KDE
- Реалізовано повноцінну назву класу або простору назв у заголовку сторінки (виправлено ваду 406588)
KCalendarCore
- Удосконалено README.md додаванням розділу «Вступ»
- Сферу охоплення географічних координат зроблено також доступною як властивість
- Виправлено створення RRULE для часових поясів
KCMUtils
- Визнано застарілим KCModuleContainer
KCodecs
- Виправлено некоректне звернення до переліку зміною типу на int, замість enum
KCompletion
- Визнано застарілим KPixmapProvider
- [KHistoryComboBox] Додано метод для встановлення засобу надання піктограми
KConfig
- Чищення протоколів передавання даних kconfig за даними EBN
- Розкрито засіб отримання налаштувань KConfigWatcher
- Виправлено writeFlags за KConfigCompilerSignallingItem
- Додано коментар, який вказує на історію спільного використання клавіатурного скорочення для дій «Вирізати» і «Вилучити»
KConfigWidgets
- «Налаштувати скорочення» перейменовано на «Налаштувати клавіатурні скорочення» (виправлено ваду 39488)
KContacts
- Вирівняно налаштування ECM і Qt за угодами Frameworks
- Реалізовано визначення залежності від версії ECM, як в усіх інших бібліотеках
KCoreAddons
- Додано KPluginMetaData::supportsMimeType
- [KAutoSaveFile] Реалізовано використання QUrl::path() замість toLocalFile()
- Відновлено нормальне збирання з PROCSTAT: додано пропущену реалізацію KProcessList::processInfo
- [KProcessList] Оптимізовано KProcessList::processInfo (виправлено ваду 410945)
- [KAutoSaveFile] Удосконалено коментар у tempFileName()
- Виправлено неправильну роботу KAutoSaveFile для довгих шляхів (виправлено ваду 412519)
KDeclarative
- [KeySequenceHelper] Реалізовано захоплення справжнього вікна при вбудовуванні
- Додано оптимальні субтитри до делегування ґратки
- [QImageItem/QPixmapItem] Усунено втрату точності під час обчислень
KFileMetaData
- Частково виправлено використання акцентованих символів у назвах файлів у Windows
- Вилучено непотрібні закриті (private) оголошення для taglibextractor
- Частково виправлено використання акцентованих символів у Windows
- xattr: усунено причину аварійного завершення роботи під час обробки некоректних символічних посилань (виправлено ваду 414227)
KIconThemes
- Встановлено типову тему breeze при читанні з файла налаштувань
- Визнано застарілою функцію IconSize() верхнього рівня
- Виправлено центровані масштабовані піктограми для растрових зображень із високою роздільною здатністю
KImageFormats
- pic: усунено невизначену поведінку Invalid-enum-value
KIO
- [KFilePlacesModel] Виправлено перевірку підтримуваних схем для пристроїв
- Дані протоколу вбудовано і до версії для Windows у підлеглому засобі введення-виведення trash
- Додано підтримку монтування адрес KIOFuse для програм, у яких не використано KIO (виправлено ваду 398446)
- До FileJob додано підтримку обрізання
- Визнано застарілим KUrlPixmapProvider
- Визнано застарілим KFileWidget::toolBar
- [KUrlNavigator] Додано підтримку RPM до krarc: (виправлено ваду 408082)
- KFilePlaceEditDialog: виправлено аварійне завершення при редагуванні місця Trash (виправлено ваду 415676)
- Додано кнопку для відкриття теки у filelight для перегляду додаткових подробиць
- Реалізовано показ додаткових подробиць у діалоговому вікні попередження до виконання привілейованої дії
- KDirOperator: реалізовано використання фіксованої висоти рядка для швидкості гортання
- У діалоговому вікні властивостей файла реалізовано показ додаткових полів, зокрема часу вилучення та початкового шляху
- KFilePlacesModel: реалізовано належне визначення батьківського об'єкта для tagsLister з метою запобігання витокам пам'яті.
- HTTP ioslave: реалізовано виклик належного базового класу у virtual_hook(). Базовим для підлеглого засобу введення-виведення HTTP є TCPSlaveBase, а не SlaveBase
- Підлеглий засіб введення-виведення FTP: виправлено обробку 4-символьного запису часу як року
- Повторно додано KDirOperator::keyPressEvent для збереження двійкової сумісності
- Реалізовано використання QStyle для визначення розмірів піктограми
Kirigami
- ActionToolBar: реалізовано показ кнопки переповнення, лише якщо у меню є видимі пункти (виправлено ваду 415412)
- Вимкнено збирання і встановлення шаблонів програм у android
- Усунено жорстке визначення полів у CardsListView
- До Action додано підтримку нетипових компонентів показу
- Реалізовано зростання розмірів інших компонентів, якщо у заголовку є додаткові елементи
- Вилучено динамічне створення елементів у DefaultListItemBackground
- Повторно запроваджено кнопку згортання (виправлено ваду 415074)
- Реалізовано показу піктограми вікна програми на AboutPage
KItemModels
- Додано KColumnHeadersModel
KJS
- Додано тести для Math.exp()
- Додано тести для різноманітних операторів присвоєння значень
- Реалізовано перевірку особливих випадків операторів множення (*, / і %)
KNewStuff
- Забезпечено правильність заголовка діалогового вікна, якщо рушій не ініціалізовано
- Усунено показ піктограми відомостей на великій делегованій панелі перегляду (виправлено ваду 413436)
- Реалізовано підтримку встановлення архівів за допомогою команд адаптації (виправлено ваду 407687)
- Реалізовано надсилання назви налаштувань за допомогою запитів
KPeople
- Реалізовано надання переліку компілятору метаоб'єктів
KQuickCharts
- Виправлено файли заголовків шейдерів
- Виправлено заголовки ліцензування для шейдерів
KService
- Визнано застарілим KServiceTypeProfile
KTextEditor
- Додано властивість «line-count» до ConfigInterface
- Усунено небажане горизонтальне гортання (виправлено ваду 415096)
KWayland
- [plasmashell] Додано документацію до panelTakesFocus з метою узагальнення
- [plasmashell] Додано сигнал для зміни panelTakesFocus
KXMLGUI
- KActionCollection: створено сигнал changed() як замінник removed()
- Додано клавіатурне скорочення для налаштовування заголовка вікна
NetworkManagerQt
- Керування: додано підтримку AddAndActivateConnection2
- cmake: реалізовано розгляд заголовків NM як загальносистемних включень
- Utils::securityIsValid синхронізовано із NetworkManager (виправлено ваду 415670)
Бібліотеки Plasma
- [ToolTip] Реалізовано округлення позиції
- Увімкнено події миші для повзунків
- Прапорець QWindow WindowDoesNotAcceptFocus синхронізовано із інтерфейсом plasmashell у wayland (виправлено ваду 401172)
- [календар] Реалізовано перевірку виходу за межі масиву доступу у пошуку QLocale
- [Діалогове вікно Плазми] Реалізовано використання QXcbWindowFunctions для встановлення типів вікон, про які невідомо Qt WindowFlags
- [PC3] Реалізовано повну анімацію смужки поступу у Плазмі
- [PC3] Реалізовано показ індикатора смужки поступу, лише якщо кінці не перекривають інших елементів інтерфейсу
- [RFC] Виправлено поля піктограм у налаштуваннях дисплея (виправлено ваду 400087)
- [ColorScope] Відновлено можливість роботи зі звичайними QObject-ми
- [Тема стільниці Breeze] Додано монохромну піктограму user-desktop
- Вилучено визначення типової ширини з PlasmaComponents3.Button
- [PC3 ToolButton] Реалізовано врахування для кольору мітки доповнень у схемах кольорів (виправлено ваду 414929)
- Додано кольори тла для панелей перегляду із активними та неактивними піктограмами (виправлено ваду 370465)
Purpose
- Реалізовано використання стандартного ECMQMLModules
QQC2StyleBridge
- [ToolTip] Реалізовано округлення позиції
- Оновлено алгоритм автоматичного вибору розмірів при зміні шрифту
Solid
- Реалізовано показ / першим у описі змонтованого сховища даних
- Забезпечено синхронізацію параметрів монтування файлових систем nfs із записами fstab (виправлено ваду 390691)
Sonnet
- Сигнал done визнано застарілим. Замість нього рекомендовано використовувати spellCheckDone, який з цієї версії видається належним чином
Підсвічування синтаксису
- LaTeX: виправлено розставляння дужок у деяких командах (виправлено ваду 415384)
- TypeScript: додано тип примітивів «bigint»
- Python: удосконалено обробку чисел, додано вісімкові, двійкові числа та ключове слово «breakpoint» (виправлено ваду 414996)
- SELinux: додано ключове слово «glblub» та оновлено список прав доступу
- Декілька удосконалень у визначенні синтаксичних конструкцій gitolite
Відомості щодо безпеки
Випущений код підписано за допомогою 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.66.0 можна отримати безкоштовно. Настанови щодо збирання та встановлення доступні на інформаційній сторінці програми KDE Frameworks 5.66.0.
Бібліотеки також можна зібрати з початкових кодів за допомогою базової системи команд cmake .; make; make install. Цей спосіб є найпростішим, якщо вам потрібні лише окремі бібліотеки шару 1. Зацікавленим в удосконаленні бібліотек та стеженні за розробкою загального набору варто скористатися скриптом kdesrc-build. Для роботи Frameworks 5.66.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.