La compañía Qt Company ha publicado la versión del marco Qt 6.3, en la que se ha continuado el trabajo de estabilización y expansión de la funcionalidad de la rama Qt 6. En Qt 6.3 se garantiza el soporte para las plataformas 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 y QNX. Los códigos fuente de los componentes de Qt se proporcionan bajo las licencias LGPLv3 y GPLv2.
Principales cambios en Qt 6.3:
- En el módulo Qt QML se ha propuesto una implementación experimental del compilador qmltc (compilador de tipos QML), que permite compilar estructuras de objetos QML en clases en el lenguaje C++. Para los usuarios comerciales, se ha preparado el producto Qt Quick Compiler, que además del mencionado QML Type Compiler incluye el QML Script Compiler, que permite compilar funciones y expresiones QML en código C++. Se destaca que el uso de Qt Quick Compiler permite acercar el rendimiento de las aplicaciones basadas en QML a las aplicaciones nativas, en particular, se observa una reducción en el tiempo de inicio y ejecución de aproximadamente el 20-35% en comparación con el uso de la variante interpretada.

- Se ha implementado el módulo 'Qt Language Server' con soporte para los protocolos Language Server y JsonRpc 2.0.
- Se ha agregado un compositor en el módulo Qt Wayland Compositor. servidor Qt Shell y API para crear extensiones personalizadas de la interfaz de usuario.
- Se han integrado los tipos QML CalendarModel y TreeView en Qt Quick Controls, implementando interfaces para mostrar un calendario y datos en una vista jerárquica.


- Se han añadido los tipos QML MessageDialog y FolderDialog al módulo Qt Quick Dialogs para utilizar las ventanas de diálogo del sistema proporcionadas por la plataforma para mostrar mensajes y navegar por archivos.

- En Qt Quick se ha mejorado el rendimiento y la eficiencia en el manejo de texto. Por ejemplo, se han resuelto problemas de desaceleración de renderizado y consumo elevado de memoria al transmitir documentos muy grandes a los componentes Text, TextEdit, TextArea y TextInput.
- Se ha añadido el elemento QML ReflectionProbe al módulo Qt Quick 3D para renderizar reflejos de objetos. Se ha ampliado la API de 3D Particles para agregar efectos a escenas 3D formados por grandes acumulaciones de partículas (humo, neblina, etc.). Se ha implementado un nuevo elemento ResourceLoader, que proporciona medios para gestionar recursos en Qt Quick 3D y permite organizar la carga anticipada de grandes recursos, como mallas o texturas, así como controlar la elegibilidad de la descarga de recursos que no caen en el área visible de la escena.

- Se ha añadido una implementación preliminar del módulo Qt PDF, que estaba presente en Qt 5.15, pero no fue incluido en Qt 6.

- Se ha añadido un gran número de nuevas funciones al módulo Qt Core, principalmente relacionadas con la expansión de las capacidades de procesamiento de datos de cadenas. Se ha añadido soporte para códigos de idioma ISO639-2 en QLocale. Se ha añadido soporte para los especificadores de tiempo AM/PM en QDate, QTime y QLocale. Se ha simplificado la conversión entre formatos JSON y CBOR. Se han añadido los métodos QtFuture::whenAll() y whenAny().
- En Qt Positioning se ha proporcionado la posibilidad de determinar la precisión de los datos de ubicación proporcionados por las plataformas Android e iOS.
- En Qt Bluetooth se ha asegurado la salida de información sobre el soporte de Bluetooth LE y el estado del adaptador Bluetooth en Windows.
- En Qt Widgets se ha mejorado el soporte para pantallas de alta resolución, estilos y cambios de apariencia mediante tablas de estilos.
- Se ha mejorado el sistema de construcción basado en CMake. Se ha añadido la función qt-generate-deploy-app-script(), que simplifica la generación de scripts para desplegar aplicaciones en diferentes plataformas.
- Se ha realizado un gran trabajo para aumentar la estabilidad y calidad de la base de código. En comparación con la versión Qt 6.2, se han cerrado 1750 informes de errores.
- En los próximos lanzamientos significativos de Qt 6.x se planea implementar soporte completo para WebAssembly, QHttpServer, gRPC, un backend para Qt Multimedia basado en FFmpeg, Qt Speech y Qt Location.
Fuente: opennet.ru






