Anyar-anyar ieu, versi salajengna Kaitai Struct 0.9 dileupaskeun - basa déskripsi sareng alat pikeun ngémutan rupa-rupa format binér (contona, pakét jaringan, file gambar / audio / pidéo, pangkalan data, arsip, wadah, jsb.). Sanaos nomer vérsi 0.9, ieu mangrupikeun sékrési utama anu kalebet pamekaran salami 2.5 taun ka pengker. Dina mangsa ieu, basa geus tumuwuh jadi sakabeh kulawarga proyék:
- kompiler anu ngamungkinkeun anjeun kéngingkeun kode sumber parser anu siap-siap dina sababaraha basa pamrograman (C ++, C #, Construct, Go, Java, JavaScript, Lua, Nim, Perl, PHP, Python, Ruby) tina format. file spésifikasi (.ksy), kitu ogé diagram dina format GraphViz jeung spésifikasi format nu bisa dibaca manusa dina HTML;
- parabot pikeun ngembangkeun merenah tina spésifikasi kalawan kontrol visual simultaneous: IDE wéb, konsol visualizer, plugin pikeun Visual Studio Code, Hobi, Veles, plugin pikeun Hiew, plugin pikeun Binér Ninja;
- modul pikeun ngahijikeun Kaitai Struct kana prosés assembly pikeun Maven, pikeun Gradle, pikeun Python, pikeun JavaScript / WebPack
- perpustakaan format, nu geus boga 156 déskripsi dina release ieu (jeung 78 format deui aya dina prosés review pamundut tarikan).
- perpustakaan algoritma komprési plug-in Kompres Kaitai
- modul pikeun FUSE - Kaitai FS, nu ngidinan Anjeun pikeun masang file salaku sistem file, ngagunakeun pedaran ksy tina format na
basa dipikawanoh ku GitHub sareng ayeuna dianggo dina langkung ti 400 proyék gratis / open source pikeun nga-parsing sagala jinis format data anu aheng, mimitian ti ngabalikeun rékayasa file data kaulinan proprietarycumming analisis protokol komunikasi satelit.
Diantara inovasi utama basa 0.9 patut nyorot:
- dukungan pikeun basa target anyar (Python via perpustakaan Construct, Nim, generasi dokuméntasi dina HTML)
- dukungan pinuh pikeun C ++ modern (panunjuk pinter, henteu kedah ngatur mémori sacara manual, ngalereskeun sadaya bocor mémori anu dipikanyaho)
- rojongan pikeun alamat tipe nested via sintaksis kawas foo::bar::baz
- rojongan pikeun validasi data dibaca nurutkeun kaayaan dijelaskeun (valid)
- ngitung ukuran struktur data statik dina bait sareng bit (ukuran sareng bitsize operator)
- pedaran formal basa dina wangun Skéma JSON, ti mana ayeuna dokuméntasi dihasilkeun
sumber: linux.org.ru