Byla vydána verze mruby 3.2, vestavěného interpretu dynamického objektově orientovaného programovacího jazyka Ruby. Mruby zajišťuje základní kompatibilitu syntaxe na úrovni Ruby 3.x s výjimkou podpory shody s vzorem ("case .. in"). Interpret má nízké nároky na paměť a je zaměřen na vestavění podpory jazyka Ruby do jiných aplikací. Vestavěný interpret v aplikaci může vykonávat jak zdrojový kód v jazyce Ruby, tak bytecode, který byl získán pomocí vyvíjeného kompilátoru "mrbc". Zdrojové kódy mruby jsou distribuovány pod licencí MIT.
V nové verzi bylo odstraněno 19 zranitelností, které mohou vést k přetečení zásobníku, dereferencování nulových ukazatelů nebo přístupu k paměti po jejím uvolnění při zpracování speciálně upraveného Ruby kódu interpretem.
Mezi změnami nesouvisejícími s bezpečností se vyznačují:
- Podpora předávání anonymních argumentů (*, **, &),
- Podpora velkých celých čísel (mruby-bigint).
- Podpora načítání zkompilovaných binárních souborů s příponou ".mrb".
- Přidání volby "—no-optimize" pro zakázání optimalizací v kompilátoru mrbc.
- Realizace metod Class#subclasses a Module#undefined_instance_methods v mruby-class-ext.
- Nové vestavěné knihovny mruby-errno, mruby-set, mruby-dir a mruby-data.
Zdroj: opennet.ru
