Mruby 3.2 har slÀppts, en inbÀddad tolk för det dynamiska objektorienterade programmeringssprÄket Ruby. Mruby erbjuder grundlÀggande syntaktisk kompatibilitet pÄ nivÄ med Ruby 3.x, med undantag för stödet för mönstermatchning ("case .. in"). Tolken kÀnnetecknas av lÄg minnesförbrukning och Àr inriktad pÄ att integrera Ruby-stöd i andra applikationer. Den inbÀddade tolken kan köra bÄde Ruby-kÀllkod och bytekod som genererats av det utvecklade projektet mrbc-kompilatorn. kÀllkod för mruby distribueras under MIT-licensen.
I den nya versionen har 19 sÄrbarheter ÄtgÀrdats, vilket kan leda till buffertöverskridningar, avindeksering av nullpekare eller Ätkomst till minne efter att det har frigjorts vid hantering av speciellt formaterad Ruby-kod av tolken.
Bland icke-sÀkerhetsrelaterade förÀndringar framhÀvs:
- Stöd för överföring av anonyma argument (*, **, &),
- Stöd för stora heltal (mruby-bigint).
- Stöd för att ladda kompilera binÀra filer med tillÀgget ".mrb".
- TillÀgg av alternativet "--no-optimize" för att inaktivera optimeringar i mrbc-kompilatorn.
- Implementering av metoderna Class#subclasses och Module#undefined_instance_methods i mruby-class-ext.
- Nya inbyggda bibliotek mruby-errno, mruby-set, mruby-dir och mruby-data.
KĂ€lla: opennet.ru
