Bevezette az mruby 3.2 kiadását, amely a Ruby dinamikus objektum-orientált programozási nyelv beágyazott értelmezője. A Mruby alapvető szintaktikai kompatibilitást biztosít Ruby 3.x szinten, kivéve a mintaillesztés támogatását ("case .. in"). A tolmács alacsony memóriafelhasználással rendelkezik, és a Ruby nyelvi támogatás más alkalmazásokba való beágyazására összpontosít. Az alkalmazásba épített interpreter a Ruby nyelvű forráskódot és a projekt által kifejlesztett „mrbc” fordító segítségével kapott bájtkódot egyaránt képes végrehajtani. A mruby forráskódot az MIT licence alatt terjesztik.
Az új kiadás 19 biztonsági rést javít, amelyek puffer túlcsorduláshoz, nullmutató hivatkozásokhoz vagy memória-hozzáféréshez vezethetnek a felszabadulás után, amikor az értelmező speciálisan formázott Ruby-kódot dolgoz fel.
A nem biztonsági változtatások a következők:
- Névtelen argumentumok átadásának támogatása (*, **, &),
- Nagy egész számok támogatása (mruby-bigint).
- Lefordított bináris fájlok letöltésének támogatása ".mrb" kiterjesztéssel.
- A „--no-optimize” opció hozzáadása az optimalizálás letiltásához az mrbc fordítóban.
- Class#subclasses és Module#undefined_instance_methods metódusok megvalósítása az mruby-class-ext fájlban.
- Új beépített könyvtárak mruby-errno, mruby-set, mruby-dir és mruby-data.
Forrás: opennet.ru