Predstavilo vydanie mruby 3.2, vstavaného tlmočníka pre dynamický objektovo orientovaný programovací jazyk Ruby. Mruby poskytuje základnú kompatibilitu syntaxe na úrovni Ruby 3.x, s výnimkou podpory pre porovnávanie vzorov („case .. in“). Interpret má nízku spotrebu pamäte a je zameraný na zabudovanie podpory jazyka Ruby do iných aplikácií. Tlmočník zabudovaný do aplikácie môže spúšťať zdrojový kód v jazyku Ruby aj bytekód získaný pomocou kompilátora „mrbc“ vyvinutého v rámci projektu. Zdrojový kód mruby je distribuovaný pod licenciou MIT.
Nové vydanie opravuje 19 zraniteľností, ktoré môžu viesť k pretečeniu vyrovnávacej pamäte, dereferenciám nulového ukazovateľa alebo prístupu do pamäte po uvoľnení, keď tlmočník spracuje špeciálne naformátovaný kód Ruby.
Zmeny nesúvisiace so zabezpečením zahŕňajú:
- Podpora odovzdávania anonymných argumentov (*, **, &),
- Podpora pre veľké celé čísla (mruby-bigint).
- Podpora sťahovania skompilovaných binárnych súborov s príponou „.mrb“.
- Pridanie možnosti „--no-optimize“ na zakázanie optimalizácií v kompilátore mrbc.
- Implementácia metód Class#subclasses a Module#undefined_instance_methods v mruby-class-ext.
- Nové vstavané knižnice mruby-errno, mruby-set, mruby-dir a mruby-data.
Zdroj: opennet.ru