Достъпен е вграденият интерпретатор mruby 3.2

Представен е новият mruby 3.2, вграден интерпретатор на динамичния обектно-ориентиран език за програмиране Ruby. Mruby осигурява базова съвместимост с синтаксиса на Ruby 3.x, с изключение на поддръжката на моделиране на образци («case .. in»). Интерпретаторът се отличава с ниска консумация на памет и е насочен към вграждане на поддръжка на езика Ruby в други приложения. Вграден в приложението интерпретатор може да изпълнява както изходен код на Ruby, така и байткод, получен чрез разработвания компилатор «mrbc». Изходните текстове на mruby се разпространяват под лицензия MIT.

В новото издание са отстранени 19 уязвимости, които биха могли да доведат до препълване на буфера, разименяване на нулеви указатели или достъп до памет след освобождаването ѝ при обработка на специално форматиран Ruby код от интерпретатора.

От промените, които не са свързани с безопасността, се отбелязват:

  • Поддръжка на предаване на анонимни аргументи (*, **, &),
  • Поддръжка на големи цели числа (mruby-bigint).
  • Поддръжка на зареждане на компилирани бинарни файлове с разширение «.mrb».
  • Добавяне на опция «—no-optimize» за деактивиране на оптимизациите в компилатора mrbc.
  • Реализация на методите Class#subclasses и Module#undefined_instance_methods в mruby-class-ext.
  • Нови вградени библиотеки mruby-errno, mruby-set, mruby-dir и mruby-data.

Източник: opennet.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster