Qt Company ir publicējusi Qt 6.12 izlaidumu, kas turpina darbu pie stabilizācijas un funkcionalitātes paplašināšanas Qt 6 versijā. Qt 6.12 nodrošina atbalstu Windows 10+, macOS 13+, Linux (Ubuntu 22.04/24.04, openSUSE 16, SUSE 15 SP6, RHEL 9.6/10.0, Debian 11.6/12), iOS 17+, Android 9+ (API 23+), webOS, WebAssembly, INTEGRITY, VxWorks, FreeRTOS un QNX. Qt komponentu avota kods tiek izsniegts saskaņā ar LGPLv3 un GPLv2 licencēm.
Qt 6.12 ir ieguvis LTS versijas statusu, kurai atjauninājumi tiks izstrādāti piecu gadu garumā komerciālajām licencēm. Nebūt nekomerciālajiem lietotājiem atbalsta laiks būs seši mēneši (līdz tiks izveidota jauna nozīmīga versija). Iepriekšējās LTS versijas Qt 6.8 atbalsts turpināsies līdz 2029. gada oktobrim, bet atbalsts pirmsatbilstošajai LTS versijai Qt 6.5 beidzas šogad.
Galvenās izmaiņas Qt 6.12:
- Qt Canvas Painter modulis ir atzīts par gatavu plašai lietošanai, piedāvājot API aparatūras paātrinātai 2D satura rasēšanai un izmantojot šādus šedevrus, lai radītu sarežģītus vizuālos efektus. Rasēšana tiek veikta, izmantojot RHI (Rendering Hardware Interface) motoru, kas atbalsta dažādas 3D API (OpenGL, Vulkan, Metal un Direct 3D). Uz Canvas Painter bāzes ir ieviests eksperimentālais elements Canvas2D, kas izveidots ar atsauci uz HTML specifikāciju Canvas 2D Context un vienkāršo JavaScript izmantošanu figūru rasēšanai.

- Ir pievienots eksperimentālais modulis StyleKit, kas skaidri atdalīja lietotāja saskarnes komponentu struktūru un stilu atribūtus, ļaujot novērst koda dubultošanu, īstenojot gaišās, tumšās un augstas kontrasta tēmas. StyleKit piedāvā vienotu QML API stilu aprakstīšanai, kas ļauj sasniegt vienotu stilu hibrīdlietojumprogrammas, kas apvieno klasiskos logrīkus un Qt Quick bāzes elementus.

- Qt Graphs moduļa iespējas ir paplašinātas. 2D grafikiem ir ieviesti jauni atribūti, lai pielāgotu asi uzrakstus, un ir pievienots atbalsts logaritmiskajām asinīm. Ir pievienotas iebūvētas darbības, lai tālummaiņu un panoramētu. Ir pievienota iespēja rasēt, izmantojot augstas veiktspējas backend, kas balstīts uz CanvasPainter moduli, kas ļauj vizualizēt lielus un ātri mainīgus datus.
- Qt Quick ir pievienoti QML tipi Safe Area, Context Menu, Double Spin Box un Search Field, lai izvadītu nesaskrāpētus saturus, konteksta izvēlnes, skaitļu ievades formas un meklēšanas vaicājumu lauciņus. QML tips FlexboxLayout, kas paredzēts adaptīvai interfeisa elementu izkārtošanai atbilstoši Flexbox koncepcijai, kas tiek pielietota CSS, ir paplašināts, lai vienkāršotu vertikālo elementu izlīdzināšanu.
- Modulī Vector Image, kas ļauj integrēt vektora attēlus Qt Quick ainās, lai izveidotu skalojamus interfeisa elementus, ir pievienotas papildu īpašības un animācijas iespējas SVG un Lottie attēliem.
- Klass QRangeModel, kas nodrošina iesaiņojumu virs QAbstractItemModel tiešai izmantošanai QML un Qt Quick interfeisa elementos jebkura veida uzskaitē no C++, ieskaitot std::vector, std::tuples un std::array, ir paplašināts. Jaunajā versijā ir iekļauta datu šķirošanas atbalsts, ieviesti jauni īpašības, lai kontrolētu pārvietošanos Drag & Drop režīmā, paātrināta meklēšana ar match() metodi, kā arī sniegtas iestatījumi virsrakstiem un atsevišķām rindām/elementiem.
- Modulī gRPC ir pievienoti līdzekļi ziņojumu saspiešanai klienta pusē un ienākošo ziņojumu izmēra ierobežošanai no serveris.
- QML dzinējā ir ieviests Hot Reload mehānisms, kas ļauj rediģēt QML kodu uzreiz programmas izpildes laikā un skatīt rezultātu qmlpreview bez atkārtotas palaišanas un programmēšanas apstāšanas.
- Ir nodrošināta LTS atbalsts HarmonyOS platformai, kas atvieglo esošo Qt lietojumprogrammu pārvietošanu uz Huawei viedtālruņiem, planšetdatoriem, datoriem un automobiļu informācijas izklaides sistēmām.
- Ir izpildītas Eiropas likuma Cyber Resilience Act (CRA) prasības, kas vērstas uz produkta drošības uzturēšanu, operatīvo ievainojamību novēršanu visa dzīves cikla laikā un informācijas par drošības ievainojamībām un incidentiem atklāšanu. Avota kodā tiek izdalīti komponenti, kas kritiski svarīgi drošības aspektiem, organizēta drošības testēšanas informācijas publicēšana un garantēta aktuālo trešo pušu bibliotēku versiju integrācija.

Avots: opennet.lv


