Interpréteur mruby 3.2 intégré disponible

Introduction de la version mruby 3.2, un interpréteur intégré pour le langage de programmation dynamique orienté objet Ruby. Mruby fournit une compatibilité syntaxique de base au niveau Ruby 3.x, à l'exception de la prise en charge de la correspondance de modèles (« case .. in »). L'interpréteur a une faible consommation de mémoire et se concentre sur l'intégration de la prise en charge du langage Ruby dans d'autres applications. L'interpréteur intégré à l'application peut exécuter à la fois le code source en langage Ruby et le bytecode obtenu à l'aide du compilateur « mrbc » développé par le projet. Le code source de mruby est distribué sous licence MIT.

La nouvelle version corrige 19 vulnérabilités qui peuvent entraîner des débordements de tampon, des déréférences de pointeurs nuls ou un accès à la mémoire après libération lorsque l'interpréteur traite du code Ruby spécialement formaté.

Les modifications non liées à la sécurité incluent :

  • Prise en charge du passage d'arguments anonymes (*, **, &),
  • Prise en charge des grands entiers (mruby-bigint).
  • Prise en charge du téléchargement de binaires compilés avec l'extension ".mrb".
  • Ajout de l'option "--no-optimize" pour désactiver les optimisations dans le compilateur mrbc.
  • Implémentation des méthodes Class#subclasses et Module#undefined_instance_methods dans mruby-class-ext.
  • Nouvelles bibliothèques intégrées mruby-errno, mruby-set, mruby-dir et mruby-data.

Source: opennet.ru

Ajouter un commentaire