Неділя, 10 листопада 2019
Сьогодні KDE оголошено про випуск KDE Frameworks 5.64.0.
KDE Frameworks складається з 70 додаткових бібліотек, які розширюють можливості Qt і реалізують багато широковживаних функціональних можливостей, є зрілими, належним чином рецензованими та добре перевіреними, а також надаються за дотримання розробниками достатньо дружніх щодо них умов. Вступні зауваження щодо цих бібліотек можна знайти у оголошенні щодо випуску KDE.
Цей випуск є частиною запланованої послідовності щомісячних випусків, яка надасть змогу розробникам використовувати поліпшення у бібліотеках швидко і без проблем.
Нове у поточній версії
Attica
- Додано std::move до функцій встановлення значень
Baloo
- Реалізовано компіляцію з Qt 5.15
- Реалізовано використання propertymap для зберігання властивостей у Baloo::Result
- Додано окремі функції перетворення для PropertyMap до Json і навпаки
- [База даних] Перероблено обробку прапорців середовища
- Рекурсію у FilteredDirIterator замінено циклічною ітерацією
Піктограми Breeze
- Реалізовано вирівнювання за центром неквадратних піктограм типів MIME розміром у 64 пікселі (виправлено ваду 393550)
- Вилучено залишки піктограми nepomuk
- Кольорові піктограми help-about розміром 32 пікселі пересунуто до каталогу actions (виправлено ваду 396626)
- Поліпшено піктограми малювання (виправлено ваду 399665)
- Вилучено піктограму nepomuk
- Заповнено область середньої кнопки миші
- Додано піктограму folder-recent, подовжено стрілку годинника у folder-temp
- Використано правильнішу і відповіднішу візуальну метафору для піктограми «отримати нові дані» (виправлено ваду 400500)
- Оновлено піктограму elisa
- Використано формат виведення CSS замість SCSS
- Виправлено неправильну обробку піктограми edit-opacity розміром у 22 пікселі
- Додано піктограми edit-opacity (виправлено ваду 408283)
- Додано піктограми для вітряної погоди (виправлено ваду 412718)
- Виправлено поля у піктограмах носіїв мультимедійних даних розміром 16 і 22 пікселів
- Використано колір тексту замість кольору підсвічування для емблеми оцінки або зірки
- Додано піктограми draw-arrow (виправлено ваду 408283)
- Додано піктограми дій draw-highlight (виправлено ваду 408283)
- Додано PATH/LD_LIBRARY_PATH до виклику qrcAlias
- Додано піктограму applications-network для перейменування категорії Internet на Network
- Додано піктограми edit-line-width (виправлено ваду 408283)
Додаткові модулі CMake
- Усунено встановлення стандартів C/C++, якщо їх вже встановлено
- Використано сучасний спосіб встановлення стандарту C/CXX
- Підвищено вимогу щодо версії CMake до 3.5
- ECMAddQch: реалізовано підтримку PREDEFINED_MACROS/BLANK_MACROS із пробілами та лапками
Інтеграція бібліотек
- Додано стандартні піктограми для підтримки усіх записів у QDialogButtonBox (виправлено ваду 398973)
- Усунено виклики winId() для сторонніх віджетів (виправлено ваду 412675)
KActivitiesStats
- Тести: виправлено неможливість збирання у macOS
- Виправлено компіляцію у MSVC у Windows
- Додано зручну функцію доступу для отримання QUrl з ResultSet::Result
KArchive
- Усунено витік пам'яті у KXzFilter::init
- Виправлено посилання на порожній вказівник при помилці під час видобування
- decodeBCJ2: усунено непроходження перевірки, якщо файли пошкоджено
- KXzFilter::Private: вилучено невикористані групи
- K7Zip: виправлено використання пам'яті у readAndDecodePackedStreams
KCalendarCore
- Додано версію libical
- Явним чином визначено конструктор копіювання Journal
KCMUtils
- Реалізовано умовний показ кнопок навігації на панелях заголовків модулів керування із декількома сторінками
- Усунено використання нетипової висоти заголовка (виправлено ваду 404396)
- Додано додатковий include
- Усунено витік пам'яті для об'єктів KQuickAddons::ConfigModule (виправлено ваду 412998)
- [KCModuleLoader] Реалізовано показ повідомлення про помилку, якщо не вдається завантажити QML
KConfig
- kconfig_compiler: реалізовано пересування KSharedConfig::Ptr при використанні
- Реалізовано компіляцію з Qt 5.15 без застарілого методу
- isImmutable відкрито для зовнішнього використання (наприклад, у QML)
- Додано зручний доступ до станів defaults/dirty у KCoreConfigSkeleton
- Реалізовано створення kconfig_compiler конструкторів із необов'язковим аргументом батьківського віджета
- preferences() зроблено загальнодоступною функцією (public)
KConfigWidgets
- Реалізовано уникнення перевантаження KCModule::changed
KContacts
- Встановлення перекладів
KCoreAddons
- KProcessInfoList — додано модуль обробки proclist для FreeBSD
KDeclarative
- Реалізовано використання перевірки з'єднання під час компіляції
- Слот settingChanged() зроблено захищеним (protected)
- KQuickAddons::ConfigModule зроблено відкритим, якщо програма перебуває у стані defaults
- Реалізовано захоплення клавіатури, якщо записується KeySequenceItem
- Додано ManagedConfigModule
- Вилучено застарілий коментар щодо розгортання [$e]
- [ConfigModule] Реалізовано зовнішній доступу до стану і рядка помилки компонента mainUi
Підтримка KDELibs 4
- Документація із програмного інтерфейсу KLocale: спрощено доступ до даних щодо портування коду з цього методу
KDocTools
- man: реалізовано використання <arg> замість <group>
KFileMetaData
- Усунено аварійне завершення роботи у збірці запису та почищено код
KHTML
- Розширено KHtmlView::print() з метою використання попередньо визначеного екземпляра QPrinter (виправлено ваду 405011)
KI18n
- Додано KLocalizedString::untranslatedText
- Замінено усі qWarning і пов'язані виклики викликами категоризованого ведення журналу
KIconThemes
- Виправлено використання нових макросів застарівання для assignIconsToContextMenu
- Визнано застарілим KIconTheme::assignIconsToContextMenu
KIO
- Додано const і підпис для нового впровадженого SlaveBase::configValue
- Портовано на варіант із QSslError KSslInfoDialog
- Портовано внутрішню частину KSSLD з KSslError на QSslError
- Помилки SSL, які не можна ігнорувати, зроблено явними (explicit)
- Реалізовано автоматичне вмикання KIO_ASSERT_SLAVE_STATES і для збирання з git
- Портовано (більшу частину) KSslInfoDialog з KSslError на QSslError
- kio_http: усунено подвійне визначення Content-Type і Depth при використанні у KDAV
- Портовано інтерфейс D-Bus KSSLD з KSslError на QSslError
- Замінено використання SlaveBase::config()->readEntry на SlaveBase::configValue
- Вилучено дві невикористанні змінні, у яких використовувався KSslError
- Усунено надсилання KDirNotify::emitFilesAdded при завершенні emptytrashjob
- Визнано застарілим варіант на основі KTcpSocket для SslUi::askIgnoreSslErrors
- Реалізовано обробку «application/x-ms-dos-executable» як виконуваного файла на усіх платформах (виправлено ваду 412694)
- SlaveBase::config() замінено на SlaveBase::mapConfig()
- ftptest: logger-colors замінено на logger
- [SlaveBase] Реалізовано використання QMap замість KConfig для зберігання налаштувань ioslave
- KSslErrorUiData портовано на QSslError
- Каталог ioslaves виключено зі списку каталогів документування програмного інтерфейсу
- ftptest: усунено помилку під час позначення overwrite без встановлення прапорця перезапису
- ftptest: функцію запуску фонової служби переписано у власну допоміжну функцію
- [SslUi] Додано документацію із програмного інтерфейсу для askIgnoreSslErrors()
- Усунено потребу у ftpd для поточної версії
- Допоміжний засіб для роботи із ftp переведено на нову систему звітування щодо помилок
- Виправлено завантаження параметрів проксі
- Реалізовано KSslCertificateRule із використанням QSslError замість KSslError
- Портовано (більшу частину) інтерфейсу KSslCertificateRule на QSslError
- KSslCertificateManager портовано на QSslError
- Оновлено перевірку kfileplacesviewtest відповідно до D7446
Kirigami
- Забезпечено перебування GlobalDrawer topContent на верхівці списку (виправлено ваду 389533)
- Реалізовано підсвічування у відповідь на наведення вказівника миші, лише якщо працюємо у режимі із декількома сторінками (виправлено ваду 410673)
- Okular Active перейменовано на Okular Mobile
- Усунено ваду, яка призводила до того, що пункти отримували фокус, не перебуваючи у області перегляду (виправлено ваду 407524)
- Уможливлено перетікання contextualActions до панелі інструментів заголовка
- Виправлено помилкову модель Credits для Kirigami.AboutPage
- Усунено показ контекстної панелі, якщо усі її кнопки дій є невидимими
- Виправлено зображення шаблона Kirigami
- Реалізовано усування вилучених пунктів із контейнерів
- Обмежено розмір полів для перетягування
- Виправлено показ кнопки інструментів меню, якщо панель є недоступною
- Вимкнено перетягування загальної панелі, якщо працюємо у режимі меню
- Реалізовано показ тексту підказок для пунктів меню
- Усунено показ попередження щодо LayoutDirection у SearchField
- Реалізовано належну перевірку стану увімкнення Action для кнопок ActionToolBar
- Реалізовано безпосереднє використання властивості дії MenuItem у ActionMenuItem
- Уможливлено перетворення загальної панелі на меню, якщо потрібно
- Реалізовано зрозуміліше визначення типів властивостей дії
KItemViews
- [RFC] Уніфіковано стиль нового Kirigami.ListSectionHeader і CategoryDrawer
KJS
- Поліпшено повідомлення щодо помилок виходу із припустимого діапазону для String.prototype.repeat(count)
- Спрощено обробку числових літералів
- Реалізовано обробку двійкових літералів JS
- Реалізовано виявлення обрізаних літералів шістнадцяткових та вісімкових чисел
- Реалізовано підтримку нового стандартного способу задання вісімкових літералів
- Додано збірку перевірок на регресії зі сховища khtmltests
KNewStuff
- Забезпечено належне передавання властивості changedEntries
- Виправлено отримання KNSCore::Cache під час ініціалізації рушія (виправлено ваду 408716)
KNotification
- [KStatusNotifierItem] Уможливлено клацання лівою кнопкою миші, якщо меню є порожнім (виправлено ваду 365105)
- Вилучено підтримку Growl
- Додано і увімкнено підтримку центру сповіщено у macOS
KPeople
- Виправлено збирання: обмежено DISABLE_DEPRECATED для KService до < 5.0
KService
- Реалізовано компіляцію з Qt 5.15 без застарілого методу
KTextEditor
- KateModeMenuList: поліпшено перенесення слів
- Усунено аварійне завершення роботи (виправлено ваду 413474)
- Поліпшення для v2+
- Поліпшення для v2+
- Додано підказку заголовка щодо авторських прав
- Залишено рядки для тих авторів нетривіального коду, хто згоден із тим, що v2+ => v2+
- Залишено для тих авторів нетривіального коду, хто не відповідає на запити, v2+
- Більше файлів із v2+, погоджено із авторами, див. kwrite-devel@kde.org
- Більше файлів із v2+, погоджено із авторами, див. kwrite-devel@kde.org
- Більше файлів із v2+, погоджено із авторами, див. kwrite-devel@kde.org
- Більше файлів із v2+, погоджено із авторами, див. kwrite-devel@kde.org
- Більше файлів із v2+, погоджено із авторами, див. kwrite-devel@kde.org
- Більше файлів із v2+, погоджено із авторами, див. kwrite-devel@kde.org
- katedocument.h вже ліцензовано за v2+
- Підтвердження від loh.tar, sars, lgplv2+
- Змінено умови ліцензування на lgplv2+, отримано підтвердження від sven + michal
- Змінено умови ліцензування на lgplv2+, отримано підтвердження від sven + michal
- Усі файли із SPDX-License-Identifier тепер ліцензовано за lgplv2+
- Прояснено умови ліцензування, додано SPDX-License-Identifier
- Прояснено умови ліцензування, додано SPDX-License-Identifier
- Прояснено умови ліцензування, додано SPDX-License-Identifier
- Прояснено умови ліцензування, додано SPDX-License-Identifier
- Прояснено умови ліцензування, додано SPDX-License-Identifier
- Прояснено умови ліцензування, додано SPDX-License-Identifier
- Оновлено умови ліцензування, dh перебуває у розділі lgplv2+ relicensecheck.pl
- Оновлено умови ліцензування, dh перебуває у розділі lgplv2+ relicensecheck.pl
- Прояснено умови ліцензування, додано SPDX-License-Identifier
- Прояснено умови ліцензування, додано SPDX-License-Identifier
- Прояснено умови ліцензування, додано SPDX-License-Identifier
- Прояснено умови ліцензування, додано SPDX-License-Identifier
- Прояснено умови ліцензування, додано SPDX-License-Identifier
- Прояснено умови ліцензування, додано SPDX-License-Identifier
- Прояснено умови ліцензування, додано SPDX-License-Identifier
- lgplv2.1+ => lgplv2+
- Прояснено умови ліцензування, додано SPDX-License-Identifier
- Прояснено умови ліцензування, додано SPDX-License-Identifier
- Прояснено умови ліцензування, додано SPDX-License-Identifier
- Прояснено умови ліцензування, додано SPDX-License-Identifier
- Прояснено умови ліцензування, додано SPDX-License-Identifier
- Прояснено умови ліцензування, додано SPDX-License-Identifier
- Прояснено умови ліцензування, додано SPDX-License-Identifier
- Прояснено умови ліцензування, додано SPDX-License-Identifier
- Прояснено умови ліцензування, додано SPDX-License-Identifier
- Прояснено умови ліцензування, додано SPDX-License-Identifier
- Підтверджено, що файл заголовків вже давно не містить логіки щодо використання лише gpl v2
- Прояснено умови ліцензування, додано SPDX-License-Identifier
- Прояснено умови ліцензування, додано SPDX-License-Identifier
- Прояснено умови ліцензування, додано SPDX-License-Identifier
- Прояснено умови ліцензування, додано SPDX-License-Identifier
- Прояснено умови ліцензування, додано SPDX-License-Identifier
- Прояснено умови ліцензування, 'michalhumpula' => ['gplv23', 'lgplv23', 'gplv2+', 'lgplv2+', '+eV' ]
- Додано пропущену літеру s (виправлено ваду 413158)
- KateModeMenuList: примусово встановлено вертикальне позиціювання над кнопкою
- Поліпшення: ізольовані заголовки
- Згруповано включення для семантики
- Упорядковано включення
KTextWidgets
- Вилучено виклик непотрібного KIconTheme::assignIconsToContextMenu
KWayland
- FakeInput: додано підтримку натискання і відпускання клавіші
- Виправлено нецілочисельне масштабоване копіювання при створенні OutputChangeSet
KXMLGUI
- Виправлено виявлення типових клавіатурних скорочень
NetworkManagerQt
- Додано підтримку розпізнавання SAE, яке використовується у WPA3
Бібліотеки Plasma
- disabledTextColor пов'язано із ColorScope
- Додано DisabledTextColor до Theme
- [PC3/кнопка] Реалізовано безумовне ігнорування тексту
- Поліпшено пункти меню для параметрів панелі
- [icons/media.svg] Додано піктограми розміром 16 і 32 пікселів, оновлено стиль
- [PlasmaComponents3] Виправлено тло кнопки інструмента, яку можна позначати
Prison
- Виправлено роботу із пам'яттю у datamatrix
Purpose
- i18n: додано трикрапку для пункті дій (X-Purpose-ActionDisplay)
QQC2StyleBridge
- Усунено призначення currentIndex для комбінованих списків, оскільки це шкодить прив'язці
- Реалізовано інтерактивну обробку змін у стилі програми
Solid
- Вимкнено збирання статичної бібліотеки, якщо BUILD_TESTING=OFF
Підсвічування синтаксису
- VHDL: реалізовано ігнорування регістру символів усіх ключових слів (виправлено ваду 413409)
- Додано символи екранування рядків до синтаксису PowerShell
- Modelines: виправлено виявлення завершення коментаря
- Meson: розширено перелік вбудованих функцій та додано вбудовані функції-члени
- debchangelog: додано Focal Fossa
- Оновлення з CMake 3.16
- Meson: додано розділ коментарів до коментування або скасування коментування у Kate
- TypeScript: оновлено і виправлено граматику
ThreadWeaver
- Реалізовано компіляцію з Qt 5.15
Відомості щодо безпеки
Випущений код підписано за допомогою 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.64.0 можна отримати безкоштовно. Настанови щодо збирання та встановлення доступні на інформаційній сторінці програми KDE Frameworks 5.64.0.
Бібліотеки також можна зібрати з початкових кодів за допомогою базової системи команд cmake .; make; make install. Цей спосіб є найпростішим, якщо вам потрібні лише окремі бібліотеки шару 1. Зацікавленим в удосконаленні бібліотек та стеженні за розробкою загального набору варто скористатися скриптом kdesrc-build. Для роботи Frameworks 5.64.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.