Available ang naka-embed na mruby 3.2 interpreter

Ipinakilala ang paglabas ng mruby 3.2, isang naka-embed na interpreter para sa dynamic na object-oriented programming language na Ruby. Nagbibigay ang Mruby ng pangunahing syntax compatibility sa antas ng Ruby 3.x, maliban sa suporta para sa pagtutugma ng pattern ("case .. in"). Ang interpreter ay may mababang memory consumption at nakatutok sa pag-embed ng suporta sa wikang Ruby sa ibang mga application. Ang interpreter na binuo sa application ay maaaring magsagawa ng parehong source code sa wikang Ruby at bytecode na nakuha gamit ang "mrbc" compiler na binuo ng proyekto. Ang mruby source code ay ipinamahagi sa ilalim ng lisensya ng MIT.

Ang bagong release ay nag-aayos ng 19 na mga kahinaan na maaaring humantong sa mga buffer overflow, null pointer dereference, o memory access pagkatapos ng libre kapag ang interpreter ay nagpoproseso ng espesyal na format na Ruby code.

Ang mga pagbabagong hindi pangseguridad ay kinabibilangan ng:

  • Suporta para sa pagpasa ng mga hindi kilalang argumento (*, **, &),
  • Suporta para sa malalaking integer (mruby-bigint).
  • Suporta para sa pag-download ng mga pinagsama-samang binary na may extension na ".mrb".
  • Pagdaragdag ng "--no-optimize" na opsyon upang huwag paganahin ang mga pag-optimize sa mrbc compiler.
  • Pagpapatupad ng Class#subclasses at Module#undefined_instance_methods na mga pamamaraan sa mruby-class-ext.
  • Mga bagong built-in na library na mruby-errno, mruby-set, mruby-dir at mruby-data.

Pinagmulan: opennet.ru

Magdagdag ng komento