Izšla je različica 7.2.0 visoko zmogljive knjižnice Glaze, namenjena branju in pisanju JSON z priročnimi funkcijami serilizacije in deserialization podatkov.
Podprti so tudi formati CSV, CBOR, BEVE, MessagePack, TOML, EETF (Erlang External Term Format) (neobvezno, za prevajanje so potrebne Erlang knjižnice), YAML 1.2, Stencil in Mustache. Knjižnica je napisana v jeziku C++ (header-only, standard C++23 in višje) in se distribuira pod MIT licenco.
Glaze prav tako ponuja podporo REPE RPC in HTTP strežniku in odjemalcu, z uporabo sodobnih možnosti C++, vključno z avtomatskim generiranjem REST API, podporo za WebSocket in šifriranje SSL/TLS.
Seznam sprememb:
- Glaze zdaj podpira P2996 „Reflection for C++26“. Ta podpora je dodala možnosti, ki niso bile na voljo v prejšnjih različicah refleksije pri prevajanju:
- podpora za neagregatne tipe – razredi s konstruktorji, virtualnimi funkcijami in dedovanjem preprosto delujejo;
- avtomatska serilizacija enumeracij – glz::meta ni potrebna, enumeracije se avtomatsko serilizirajo v nize;
- neomejeno število članov strukture – brez prejšnje omejitve na 128 članov;
- dostop do privatnih članov – refleksija vseh članov, ne glede na specifikatorje dostopa;
- uporabljene so standardne možnosti std::meta – brez hakov, specifičnih za prevajalnik;
- podprti prevajalniki: GCC 16+ (z možnostmi -std=c++26 -freflection) in Bloomberg clang-p2996. Več informacij o dokumentacijo refleksiji C++26.
- Dodana je možnost konfiguracije velikosti predpomnilnika v stream_request.
- Popravljene so napake pri parsiranju YAML.
Izvor: linux.org.ru
