Tersedia juru bahasa mruby 3.2 yang tertanam

Memperkenalkan rilis mruby 3.2, penerjemah tertanam untuk bahasa pemrograman berorientasi objek dinamis Ruby. Mruby menyediakan kompatibilitas sintaksis dasar pada level Ruby 3.x, dengan pengecualian dukungan untuk pencocokan pola (“case .. in”). Penerjemah memiliki konsumsi memori yang rendah dan fokus pada penyematan dukungan bahasa Ruby ke aplikasi lain. Penerjemah yang dibangun ke dalam aplikasi dapat mengeksekusi kode sumber dalam bahasa Ruby dan bytecode yang diperoleh menggunakan kompiler “mrbc” yang dikembangkan oleh proyek. Kode sumber mruby didistribusikan di bawah lisensi MIT.

Rilis baru ini memperbaiki 19 kerentanan yang dapat menyebabkan buffer overflows, dereferensi penunjuk nol, atau akses memori setelah bebas ketika penerjemah memproses kode Ruby yang diformat khusus.

Perubahan non-keamanan meliputi:

  • Dukungan untuk meneruskan argumen anonim (*, **, &),
  • Dukungan untuk bilangan bulat besar (mruby-bigint).
  • Dukungan untuk mengunduh binari yang dikompilasi dengan ekstensi ".mrb".
  • Menambahkan opsi "--no-optimize" untuk menonaktifkan optimasi di kompiler mrbc.
  • Implementasi metode Kelas#subkelas dan Modul#undefinisi_instance_methods di mruby-class-ext.
  • Pustaka bawaan baru mruby-errno, mruby-set, mruby-dir dan mruby-data.

Sumber: opennet.ru

Tambah komentar