Ilmumine 7.2.0 kÔrge jÔudlusega teeki Glaze, mis on mÔeldud JSON-i lugemiseks ja kirjutamiseks mugavate vÔimalustega serialiseerimiseks ja deserialiseerimiseks andmeid.
Toetatakse ka CSV formaate, CBOR, BEVE, MessagePack, TOML, EETF (Erlangi vÀlisterminalide formaat) (valikuline, kompileerimiseks on vajalikud Erlangi teegid), YAML 1.2, Stencil ja Mustache. Teek on kirjutatud C++ keeles (ainult pÀiseid sisaldav, C++23 ja uuemate standardite jÀrgi) ja levitatakse MIT litsentsi alusel.
Glaze toetab ka REPE RPC ja HTTP serverit ja klienti, kasutades kaasaegseid C++ vĂ”imeid, sealhulgas automaatset REST API genereerimist, WebSocketi toetust ja SSL/TLS krĂŒptimist.
Muutuste nimekiri:
- Glaze toetab nĂŒĂŒd ka P2996 «Reflection for C++26». See tugi lisas vĂ”imalusi, mis olid varasemates kompileerimise ajal refleksiooni rakendustes puuduvad:
- toetatakse mitteagregaat tĂŒĂŒpe â klassid koos konstruktorite, virtuaalfunktsioonide ja pĂ€rimisega toimivad lihtsalt;
- automaatne loetelude serialiseerimine â glz::meta ei ole vajalik, loetelud serialiseeritakse automaatselt stringideks;
- piiramatu arv struktuuri liikmeid â ilma varasemate 128 liikme piiranguteta;
- juurdepÀÀs privaatsetele liikmetele â refleksioon kĂ”ikidele liikmetele, ignoreerides ligipÀÀsu spesifikaatoreid;
- kasutatakse standardseid std::meta vĂ”imalusi â ilma kompilaatori spetsiifiliste nipita;
- toetatud kompilaatorid: GCC 16+ (valikute-std=c++26 -freflection) ja Bloombergi clang-p2996. TĂ€iendava teabe saamiseks vaadake dokumentatsioon C++26 refleksiooni.
- Lisatud vÔimalus konfigureerida bufrisuurust stream_request'is.
- Vigade parandamine YAML-i analĂŒĂŒsimisel.
Allikas: linux.org.ru
