Intérprete mruby 3.2 integrado disponible

Se presentó el lanzamiento de mruby 3.2, un intérprete integrado para el lenguaje de programación dinámico orientado a objetos Ruby. Mruby proporciona compatibilidad de sintaxis básica en el nivel Ruby 3.x, con la excepción del soporte para coincidencia de patrones (“case .. in”). El intérprete tiene un bajo consumo de memoria y se centra en incorporar compatibilidad con el lenguaje Ruby en otras aplicaciones. El intérprete integrado en la aplicación puede ejecutar tanto el código fuente en lenguaje Ruby como el código de bytes obtenido utilizando el compilador “mrbc” desarrollado por el proyecto. El código fuente de mruby se distribuye bajo la licencia MIT.

La nueva versión corrige 19 vulnerabilidades que pueden provocar desbordamientos del búfer, desreferencias de puntero nulo o acceso a la memoria después de la liberación cuando el intérprete procesa código Ruby con formato especial.

Los cambios no relacionados con la seguridad incluyen:

  • Soporte para pasar argumentos anónimos (*, **, &),
  • Soporte para números enteros grandes (mruby-bigint).
  • Soporte para descargar binarios compilados con la extensión ".mrb".
  • Agregar la opción "--no-optimize" para deshabilitar las optimizaciones en el compilador mrbc.
  • Implementación de los métodos Class#subclasses y Module#undefined_instance_methods en mruby-class-ext.
  • Nuevas bibliotecas integradas mruby-errno, mruby-set, mruby-dir y mruby-data.

Fuente: opennet.ru

Añadir un comentario