Релиз фреймворка Qt 6.3

Компания Qt Company опубликовала релиз фреймворка Qt 6.3, в котором продолжена работа по стабилизации и наращиванию функциональности ветки Qt 6. В Qt 6.3 обеспечена поддержка платформ Windows 10, macOS 10.14+, Linux (Ubuntu 20.04, CentOS 8.2, openSUSE 15.3, SUSE 15 SP2), iOS 13+, Android 6+ (API 23+), webOS, INTEGRITY и QNX. Исходные тексты компонентов Qt поставляются под лицензиями LGPLv3 и GPLv2.

Основные изменения в Qt 6.3:

  • В модуле Qt QML предложена экспериментальная реализация компилятора qmltc (QML type compiler), позволяющего скомпилировать структуры объектов QML в классы на языке C++. Для коммерческих пользователей Qt 6.3 подготовлен продукт Qt Quick Compiler, который помимо вышеотмеченного QML Type Compiler включает QML Script Compiler, позволяющий компилировать функции и выражения QML в код на C++. Отмечается, что применение Qt Quick Compiler позволяет приблизить производительность программ на базе QML к нативным программам, в частности при компиляции расширений отмечается сокращение времени запуска и выполнения приблизительно на 20-35% по сравнению с использованием интерпретируемого варианта.

  • Реализован модуль “Qt Language Server” с поддержкой протоколов Language Server и JsonRpc 2.0.
  • В модуль Qt Wayland Compositor добавлен композитный сервер Qt Shell и API для создания собственных расширений пользовательской оболочки.
  • В Qt Quick Controls интегрированы QML-типы CalendarModel и TreeView с реализацией интерфейсов для отображения календаря и данных в древовидном представлении.




  • В модуль Qt Quick Dialogs добавлены QML-типы MessageDialog и FolderDialog для использования предоставляемых платформой системных диалоговых окон для вывода сообщения и навигации по файлам.

  • В Qt QuickПроведена работа по увеличению производительности и эффективности работы с текстом. Например, решены проблемы с замедлением отрисовки и потреблением большого объёма памяти при передаче очень больших документов в компоненты Text, TextEdit, TextArea и TextInput.
  • В модуль Qt Quick 3D добавлен QML элемент ReflectionProbe для рендеринга отражений объектов. Расширен API 3D Particles для добавления в 3D-сцены эффектов, образуемых большим скоплением частиц (дым, туман и т.п.). Реализован новый элемент ResourceLoader, предоставляющий средства для управления ресурсами в Qt Quick 3D и позволяющий организовать упреждающую загрузку больших ресурсов, таких как мэши или текстуры, а также контролировать допустимость выгрузки ресурсов, не попадающих в видимую область сцены.

  • Добавлена предварительная реализация модуля Qt PDF, который присутствовал в Qt 5.15, но не вошёл в состав Qt 6.

  • В модуль Qt Core добавлена большая порция новых функций, в основном связанных с расширением возможностей по обработке строковых данных. В
    QLocale добавлена поддержка кодов языков ISO639-2. В QDate, QTime и QLocale добавлена поддержка спецификаторов времени AM/PM. Упрощено преобразование между форматами JSON и CBOR. Добавлены методы QtFuture::whenAll() и whenAny().
  • В Qt Positioning предоставлена возможность определения точности данных о местоположении, предоставленных платформами Android и iOS.
  • В Qt Bluetooth обеспечен вывод сведений о поддержке Bluetooth LE и информации о состоянии адаптера в Windows.
  • В Qt Widgets улучшена поддержка экранов с высоким разрешением, стилей и изменения оформления при помощи таблиц стилей.
  • Улучшена сборочная система на базе CMake. Добавлена функция qt-generate-deploy-app-script(), упрощающая генерацию скриптов для развёртывания приложений на разных платформах.
  • Проведена большая работа по повышению стабильности и качества кодовой базы. По сравнению с выпуском Qt 6.2 закрыто 1750 отчётов об ошибках.
  • В следующих значительных выпусках Qt 6.x планируют реализовать полную поддержку WebAssembly, QHttpServer, gRPC, бэкенд к Qt Multimedia на базе FFmpeg, Qt Speech и Qt Location.
Release. Ссылка here.