
Субота, 11 серпня 2018
Сьогодні KDE оголошено про випуск KDE Frameworks 5.49.0.
KDE Frameworks складається з 70 додаткових бібліотек, які розширюють можливості Qt і реалізують багато широковживаних функціональних можливостей, є зрілими, належним чином рецензованими та добре перевіреними, а також надаються за дотримання розробниками достатньо дружніх щодо них умов. Вступні зауваження щодо цих бібліотек можна знайти у оголошенні щодо випуску KDE.
Цей випуск є частиною запланованої послідовності щомісячних випусків, яка надасть змогу розробникам використовувати поліпшення у бібліотеках швидко і без проблем.
Нове у поточній версії
Attica
- Усунено опрацювання QStringRef до лише QString для пошуку в QStringList
- Реалізовано визначення елементів, коли їх оголошено
Baloo
- [tags_kio] Усунено кратне копіювання назви файла
- Скасовано внесок «[tags_kio] Використовуємо UDS_URL замість UDS_TARGET_URL.»
- [tags_kio] Використовуємо UDS_URL замість UDS_TARGET_URL
- [tags_kio] Реалізовано опитування шляхів до файлів призначення замість дописування шляхів до запису UDS файла
- Реалізовано підтримку спеціальних адрес для пошуку файлів певного типу
- Усунено обробку списків із квадратичним рівним складності
- У Baloo використано незастарілу версію fastInsert
Піктограми Breeze
- Додано піктограму
drive-optical
(виправлено ваду 396432)
Додаткові модулі CMake
- Android: усунено жорстке записування випадкового номера версії у Android SDK
- ECMOptionalAddSubdirectory: наведено докладніший опис
- Виправлено перевірку визначеності змінних
- Змінено версію «since»
- Поліпшено ECMAddAppIconMacro
Інтеграція бібліотек
- Враховано BUILD_TESTING
KActivities
- Враховано BUILD_TESTING
KArchive
- Враховано BUILD_TESTING
KAuth
- Усунено причини попереджень у заголовках PolkitQt5-1
- Враховано BUILD_TESTING
KBookmarks
- Враховано BUILD_TESTING
KCodecs
- Враховано BUILD_TESTING
KCompletion
- Враховано BUILD_TESTING
KConfig
- Враховано BUILD_TESTING
KConfigWidgets
- Враховано BUILD_TESTING
KCoreAddons
- Виправлено переповнення у коді для округлення (виправлено ваду 397008)
- Документація щодо програмного інтерфейсу: вилучено зайві «:» після «@note»
- Документація до програмного інтерфейсу: має бути nullptr, а не 0
- KFormat: літерал unicode замінено кодом unicode для вправлення збирання за допомогою MSVC
- KFormat: виправлено мітку @since для нової KFormat::formatValue
- KFormat: дозволено використання величин, які не вимірюються у байтах або секундах
- Виправлено приклади KFormat::formatBytes
- Враховано BUILD_TESTING
KCrash
- Враховано BUILD_TESTING
KDBusAddons
- Усунено «вічне» блокування у ensureKdeinitRunning
- Враховано BUILD_TESTING
KDeclarative
- Забезпечено надійний запис до кореневого контексту рушія
- Поліпшено структуру для читання
- Дещо поліпшено документацію до програмного інтерфейсу
- Враховано BUILD_TESTING
Підтримка KDELibs 4
- Виправлено qtplugins у KStandardDirs
KDocTools
- Враховано BUILD_TESTING
KEmoticons
- Враховано BUILD_TESTING
KFileMetaData
- Документація з програмного інтерфейсу: додано @file до призначеного лише для функцій заголовка для забезпечення покриття doxygen
KGlobalAccel
- Враховано BUILD_TESTING
Додатки графічного інтерфейсу KDE
- Враховано BUILD_TESTING
KHolidays
- Реалізовано встановлення файлів заголовків для обчислення сходу та заходу сонця
- Додано високосний рік як (культурне) свято у Норвегії
- Додано запис «name» до файлів свят у Норвегії
- Додано опис для файлів свят у Норвегії
- Додано японські свята з phanect
- holiday_jp_ja, holiday_jp-en_us — оновлено (виправлено ваду 365241)
KI18n
- Повторно використано функцію, яка виконує ті самі завдання
- Виправлено обробку каталогу і визначення локалі в Android
- Поліпшено зручність читання, викинуто декілька непотрібних інструкцій
- Виправлено KCatalog::translate, якщо переклад збігається із оригіналом
- Перейменовано один з файлів
- Забезпечено такий самий стиль назв файлів макросів ki18n, що і у інших пов'язаних із find_package файлах
- Виправлено перевірку під час налаштовування щодо _nl_msg_cat_cntr
- Усунено створення файлів у каталозі початкового коду
- libintl: реалізовано визначення того, чи існує _nl_msg_cat_cntr, до використання (виправлено ваду 365917)
- Виправлено збирання binary-factory
KIconThemes
- Враховано BUILD_TESTING
KIO
- Реалізовано встановлення пов'язаного із kio файла категорій kdebugsettings
- Закритий (private) заголовок перейменовано відповідно до схеми _p.h
- Вилучено вибір нетипової піктограми для смітника (виправлено ваду 391200)
- Мітки у діалоговому вікні властивостей вирівняно вгору
- Реалізовано показу вікна помилки, коли користувач намагається створити каталог із назвою «.» або «..» (виправлено ваду 387449)
- Документація до програмного інтерфейсу: має бути nullptr, а не 0
- Реалізовано тест швидкодії kcoredirlister lstItems
- [KSambaShare] Реалізовано перевірку того, чи було внесено до файла зміни, перед його перезавантаженням
- [KDirOperator] Реалізовано смугасті кольори тла для переглядів даних у багато рядків
- Усунено витік пам'яті у підлеглих завданнях (виправлено ваду 396651)
- SlaveInterface: визнано застарілим setConnection/connection, оскільки його ніде не використовували
- Дещо пришвидшено конструктор UDS
- [KFilePlacesModel] Реалізовано підтримку форматованих адрес baloosearch
- Вилучено вебскорочення для projects.kde.org
- KIO::convertSize() перемкнуто на KFormat::formatByteSize()
- У Baloo використано незастарілу версію fastInsert у file.cpp (перша із багатьох майбутніх змін)
- Вебскорочення Gitorious замінено на GitLab
- Усунено типовий показ вікна підтвердження для дії зі Смітником (виправлено ваду 385492)
- Усунено вимогу щодо пароля у kfilewidgettest
Kirigami
- Реалізовано підтримку динамічного додавання на вилучення заголовка (виправлено ваду 396417)
- Впроваджено actionsVisible (виправлено ваду 396413)
- Реалізовано адаптацію полів при появі або зникненні смужки гортання
- Поліпшено керування розмірами (виправлено ваду 396983)
- Оптимізовано налаштовування палітри
- Усунено визначення власного розміру AbstractApplciationItem. Розмір тепер задається неявно.
- Реалізовано нові сигнали, pagePushed/pageRemoved
- Виправлено логіку
- Додано елемент ScenePosition (виправлено ваду 396877)
- Усунено потребу у створенні проміжної палітри для кожного стану
- Замінено hide->show
- Реалізовано режим бічної панелі із можливістю згортання
- kirigami_package_breeze_icons: усунено обробку списків як елементів (виправлено ваду 396626)
- Виправлено формальний вираз для пошуку і заміни (виправлено ваду 396294)
- Усунено ваду, пов'язану із тим, що анімування кольору мало не дуже візуально привабливі наслідки (виправлено ваду 389534)
- Реалізовано розфарбовування фокусованого пункту для навігації за допомогою клавіатури
- Вилучено клавіатурне скорочення для виходу
- Вилучено застарілий запис Encoding=UTF-8 із файла формату .desktop
- Виправлено розмір панелі інструментів (виправлено ваду 396521)
- Виправлено розміри елементів керування
- Враховано BUILD_TESTING
- Реалізовано показу піктограм для дій, для яких вказано джерело піктограми, а не назва піктограми
KItemViews
- Враховано BUILD_TESTING
KJobWidgets
- Враховано BUILD_TESTING
KJS
- Враховано BUILD_TESTING
KMediaPlayer
- Враховано BUILD_TESTING
KNewStuff
- Вилучено застарілий запис Encoding=UTF-8 із файлів формату .desktop
- Змінено типовий порядок сортування у діалоговому вікні для отримання даних. Тепер критерієм упорядковування є оцінка.
- Виправлено поля вікна DownloadDialog так, щоб вони відповідали параметрам полів загальної теми оформлення
- Відновлено випадково вилучений qCDebug
- Реалізовано використання належного програмного інтерфейсу QSharedPointer
- Реалізовано обробку порожніх списків попереднього перегляду
KNotification
- Враховано BUILD_TESTING
Набір бібліотек KPackage
- Враховано BUILD_TESTING
KParts
- Документація до програмного інтерфейсу: має бути nullptr, а не 0
KPeople
- Враховано BUILD_TESTING
KPlotting
- Враховано BUILD_TESTING
KPty
- Враховано BUILD_TESTING
KRunner
- Враховано BUILD_TESTING
KService
- Документація до програмного інтерфейсу: має бути nullptr, а не 0
- Реалізовано вимогу щодо збирання поза основним деревом коду
- Реалізовано оператор subseq для визначення підпослідовностей
KTextEditor
- Належне виправлення для відступів у простих рядках автоцитування
- Виправлено обробку засобом встановлення відступів файлів нових синтаксисів у бібліотеці підсвічування синтаксичних конструкцій
- Виправлено перевірку відповідно до нового стану у сховищі підсвічування синтаксичних конструкцій
- Реалізовано показ повідомлення «Циклічний перехід при пошуку» у центрі для кращої видимості
- Виправлено попередження. Просто використано isNull().
- Розширено програмний інтерфейс для роботи зі скриптами
- Виправлено помилку сегментації у рідкісних випадках, коли для кількості слів отримується порожній вектор
- Реалізовано примусове спорожнення смужки гортання при очищенні документа (виправлено ваду 374630)
KTextWidgets
- Документація щодо програмного інтерфейсу: частково скасовано попередній внесок, насправді, він не працює
- KFindDialog: реалізовано передавання фокуса на рядок редагування, якщо відкривається повторно використане вікно
- KFind: реалізовано скидання лічильника після зміни взірця для пошуку (наприклад, за допомогою діалогового вікна пошуку)
- Враховано BUILD_TESTING
KUnitConversion
- Враховано BUILD_TESTING
Бібліотека KWallet
- Враховано BUILD_TESTING
KWayland
- Реалізовано очищення буферів RemoteAccess при aboutToBeUnbound, а не при знищенні об'єкта
- Реалізовано підтримку підказок щодо розташовування курсора при заблокованому вказівнику
- Зменшено непотрібне очікування при помилках у визначенні сигналів
- Виправлено автоматичні перевірки для selection і seat
- Замінено усі загальні включення для сумісності у V5
- Додано підтримку XDG WM Base до нашого програмного інтерфейсу XDGShell
- Уможливлено спільне збирання XDGShellV5 із XDGWMBase
KWidgetsAddons
- Виправлено маску вхідних даних KTimeComboBox для записів часу у форматі AM/PM (виправлено ваду 361764)
- Враховано BUILD_TESTING
KWindowSystem
- Враховано BUILD_TESTING
KXMLGUI
- Виправлено збереження некоректних параметрів віджетів у KMainWindow (виправлено ваду 395988)
- Враховано BUILD_TESTING
KXmlRpcClient
- Враховано BUILD_TESTING
Бібліотеки Plasma
- Якщо аплет є некоректним, реалізовано негайне UiReadyConstraint
- [Завантажувач додатків Плазми] Реалізовано кешування додатків під час запуску
- Виправлено вузол переходу кольорів у випадку використання атласних текстур
- [Контейнер] Усунено завантаження дій із контейнером, якщо існує обмеження Плазми/containment_actions у режимі KIOSK
- Враховано BUILD_TESTING
Prison
- Виправлено перехід від режиму Mixed до Upper у створенні коду Aztec
Purpose
- Забезпечено вимикання діагностики у kf5.kio.core.copyjob для тестування
- Скасовано внесок «Перевірка: більш «атомістичний» спосіб перевірки надсилання сигналу"
- Перевірка: більш «атомістичний» спосіб перевірки надсилання сигналу
- Додано додаток Bluetooth
- [Telegram] Усунено потребу у очікуванні на закриття Telegram
- Код приготовано для використання кольорів станів Arc у спадному списку модифікацій
- Враховано BUILD_TESTING
QQC2StyleBridge
- Поліпшено обробку розмірів у меню (виправлено ваду 396841)
- Вилучено подвійне порівняння
- Виконано портування із застарілих з'єднань на основі рядків
- Реалізовано перевірку на коректність піктограми
Solid
- Враховано BUILD_TESTING
Sonnet
- Sonnet: реалізовано планування повторного підсвічування setLanguage, якщо увімкнено підсвічування
- Використано поточний програмний інтерфейс hunspell
Підсвічування синтаксису
- CoffeeScript: виправлено шаблони у вбудованому коді JavaScript і додано екранування
- Виключено непотрібну частину у Definition::includedDefinitions()
- Реалізовано використання ініціалізації членів у класі, де можливо
- Додано функції для доступу до ключових слів
- Додано Definition::::formats()
- Додано QVector<Definition> Definition::includedDefinitions() const
- Додано Theme::TextStyle Format::textStyle() const;
- C++: виправлено стандартні літерали із рухомою крапкою (виправлено ваду 389693)
- CSS: оновлено синтаксичні правила і виправлено деякі помилки
- C++: оновлено до c++20 і виправлено деякі синтаксичні помилки
- CoffeeScript і JavaScript: виправлено об'єкти-члени. Додано суфікс назви .ts у JS (виправлено ваду 366797)
- Lua: виправлено обробку багаторядкових конструкцій (виправлено ваду 395515)
- RPM Spec: додано тип MIME
- Python: виправлено екранування у взятих у лапки коментарях (виправлено ваду 386685)
- haskell.xml: реалізовано непідсвічування даних конструкторів Prelude, відмінно від інших
- haskell.xml: вилучено типи з розділу «prelude function»
- haskell.xml: реалізовано підсвічування підвищених конструкторів даних
- haskell.xml: додано ключові слова family, forall, pattern
- Враховано BUILD_TESTING
ThreadWeaver
- Враховано BUILD_TESTING
Відомості щодо безпеки
Випущений код підписано за допомогою 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.49.0 можна отримати безкоштовно. Настанови щодо збирання та встановлення доступні на інформаційній сторінці програми KDE Frameworks 5.49.0.
Бібліотеки також можна зібрати з початкових кодів за допомогою базової системи команд cmake .; make; make install. Цей спосіб є найпростішим, якщо вам потрібні лише окремі бібліотеки шару 1. Зацікавленим в удосконаленні бібліотек та стеженні за розробкою загального набору варто скористатися скриптом kdesrc-build. Для роботи Frameworks 5.49.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.