Udgaven af mruby 3.2 er blevet præsenteret, som er en indbygget fortolker til det dynamiske objektorienterede programmeringssprog Ruby. Mruby sikrer grundlæggende syntaks-kompatibilitet med Ruby 3.x, dog uden støtte til mønstermatchning («case .. in»). Fortolkeren har et lavt hukommelsesforbrug og er designet til at integrere Ruby-sprogunderstøttelse i andre applikationer. Den indbyggede fortolker kan udføre både kildekode skrevet i Ruby og bytekode, der er genereret af projektets udviklede kompilator «mrbc». Kildekoden til mruby distribueres under MIT-licensen.
I den nye udgave er 19 sårbarheder blevet udbedret, som kan føre til buffer-overløb, de-referencering af null-pegepunkter eller adgang til hukommelse efter at den er blevet frigivet, når fortolkeren behandler specielt formateret Ruby-kode.
Blandt de ikke-sikkerhedsrelaterede ændringer bemærkes:
- Understøttelse af overførsel af anonyme argumenter (*, **, &),
- Understøttelse af store heltal (mruby-bigint).
- Understøttelse af indlæsning af kompilerede binære filer med udvidelsen «.mrb».
- Tilføjelse af indstillingen «—no-optimize» for at deaktivere optimering i kompilatoren mrbc.
- Implementering af metoderne Class#subclasses og Module#undefined_instance_methods i mruby-class-ext.
- Nye indbyggede biblioteker: mruby-errno, mruby-set, mruby-dir og mruby-data.
Kilde: opennet.ru
