Релиз фреймворка Qt 6.5
Компания Qt Company опубликовала релиз фреймворка Qt 6.5, в котором продолжена работа по стабилизации и наращиванию функциональности ветки Qt 6. В Qt 6.5 обеспечена поддержка платформ Windows 10+, macOS 11+, Linux (Ubuntu 20.04, openSUSE 15.4, SUSE 15 SP4, RHEL 8.4/9.0), iOS 14+, Android 8+ (API 23+), webOS, WebAssembly, INTEGRITY и QNX. Исходные тексты компонентов Qt поставляются под лицензиями LGPLv3 и GPLv2.
Qt 6.5 получил статус LTS-выпуска, в рамках которого для пользователей коммерческой лицензии обновления будут формироваться в течение трёх лет (для остальных обновления будут публиковаться полгода до формирования очередного значительного выпуска). Поддержка прошлой LTS-ветки Qt 6.2 продлится до 30 сентября 2024 года. Ветка Qt 5.15 будет сопровождаться до мая 2025 года.
Основные изменения в Qt 6.5:
Стабилизирован и переведён в разряд полностью поддерживаемых модуль Qt Quick 3D Physics, предоставляющий API для симуляции физических процессов, который можно использовать вместе с Qt Quick 3D для реалистичного взаимодействия и перемещения объектов в 3D-сценах. Реализация основана на движке PhysX.
Добавлена поддержка тёмного режима оформления платформы Windows. Автоматическое применение активированного в системе тёмного оформления и настройка рамок и заголовка, если в приложении используется стиль, не меняющий палитру. В приложении настроить собственную реакцию на изменения в системной теме можно через обработку изменения свойства QStyleHints: colorScheme.
В Qt Quick Controls стиль Material для Android приведён в соответствие с рекомендациями Material 3. Реализован полноценный стиль для iOS. Добавлены API для изменения внешнего вида (например, containerStyle для TextField или TextArea, или roundedScale для кнопок и всплывающих блоков).
На платформе macOS в приложениях, использующих QMessageBox или QErrorMessage, обеспечен показ родных для платформы диалогов.
Для Wayland добавлен программный интерфейс QNativeInterface: QWaylandApplication для прямого обращения к родным для Wayland объектам, которые используются во внутренних структурах Qt, а также для получения доступа к информации о последних действия пользователя, которая может быть востребована для передачи расширениям протокола Wayland. Новый программный интерфейс реализован в пространстве имён QNativeInterface, в котором также предоставляются вызовы для доступа к родным API платформ X11 и Android.
- Добавлена поддержка платформы Android 12 и несмотря на значительные изменения в данной ветке сохранена возможность создания универсальных сборок для Android, которые могут работать на устройствах с разными версиями Android, начиная с Android 8.
Обновлён стек Boot2Qt, который может использоваться для создания загружаемых мобильных систем с окружением на базе Qt и QML. Системное окружение в Boot2Qt обновлено до платформы Yocto 4.1 (Langdale).
Началось формирование пакетов для Debian 11, на которые распространяется коммерческая поддержка.
Расширены возможности платформы WebAssembly, позволяющей создавать Qt-приложения, работающие в web-браузере и переносимые между разными аппаратными платформами. Приложения, собираемые для платформы WebAssembly, благодаря JIT-компиляции выполняются с близкой к нативному коду производительностью, могут использовать Qt Quick, Qt Quick 3D и доступные в Qt средства визуализации. В новой версии добавлена поддержка отрисовки видео и использования в виджетах средств для людей с ограниченными возможностями.
Web-движок Qt WebEngine обновлён до кодовой базы Chromium 110. На платформе Linux реализована поддержка аппаратного ускорения отрисовки видео при использовании графического API Vulkan в окружениях на базе X11 и Wayland.
Добавлен модуль Qt Quick Effects, предоставляющий готовые графические эффекты для интерфейса на базе Qt Quick. Собственные эффекты можно создавать с нуля или получать путём комбинирования уже существующих эффектов при помощи инструментария Qt Quick Effect Maker.
В модуле Qt Quick 3D предоставлена возможность настройки уровня детализации моделей (например, для объектов, расположенных далеко от камеры, можно генерировать более простые мэши). В API SceneEnvironment реализована поддержка тумана и постепенного исчезания далёких объектов. В ExtendedSceneEnvironment предоставлены возможности для создания сложных эффектов постобработки и комбинирования таких эффектов, как глубина резкости, свечение и блики.
Добавлен экспериментальный модуль Qt GRPC с поддержкой протоколов gRPC и Protocol Buffer, позволяющий обращаться к сервисам gRPC и выполнять сериализацию Qt-классов, используя Protobuf.
В модуле Qt Network добавлена поддержка настройки соединений HTTP 1.
В модуль Qt Serial Bus добавлены экспериментальные классы для работы с шиной CAN, которые могут применяться для кодирования и декодирования сообщений CAN, обработки кадров и разбора файлов DBC.
Возрождён модуль Qt Location, предоставляющий приложениям средства для интеграции карт, навигации, пометки интересных мест (POI). Модуль поддерживает интерфейс плагинов, через который можно подключать бэкенды для работы с различными сервис-провайдерами и создавать расширения API. Модуль пока имеет статус экспериментального и поддерживает только бэкенд для карт на базе Open Street Maps.
Расширены возможности модулей Qt Core, Qt GUI, Qt Multimedia, Qt QML, Qt Quick Compiler, Qt Widgets.
Проведена большая работа по повышению стабильности, закрыто около 3500 отчётов об ошибках.
Источник: http://www.opennet.ru/opennews/art.shtml? num=58911
© OpenNet