- Now
a::B = c
should evaluatea
thenc
. - Anonymous arguments
*
,**
,&
can be passed for forwarding. - Multi-precision integer is available now via
mruby-bigint
gem.
OP_ARYDUP
was renamed toOP_ARYSPLAT
. The instruction name was changed but instruction number and basic behavior have not changed (except thatARYDUP nil
makes[]
).
-b
only specifies the script is the binary. The files loaded by-r
are not affected by the option.mruby
now loads complied binary if the suffix is.mrb
.
- Add
--no-optimize
option to disable optimization.
- Add
Class#subclasses
method. - Add
Module#undefined_instance_methods
method.
- mruby-errno from https://github.com/iij/mruby-errno.git
- mruby-set from https://github.com/yui-knk/mruby-set.git
- mruby-dir from https://github.com/iij/mruby-dir.git
- mruby-data
When the mrb_vm_run()
function (including mrb_top_run()
) is called,
the previous top-level local variables referenced from blocks is detached under either of the following conditions.
- If the
stack_keep
parameter is given as 0. - If the number of variables in
irep
to be executed is less than the number of previous top-level local variables.
This change also affects API functions such as mrb_load_string()
and mrb_load_file()
.
The conditions under which the previous top-level local variables referenced from blocks is detached in these functions are as follows:
- If the function has no
mrbc_context
pointer parameter, or themrbc_context
pointer parameter is set toNULL
. - If the number of variables held in the
mrbc_context
pointer is less than the number of previous top-level local variables.
Intentional reliance on previous behavior may cause compatibility problems in your application.
Following CVEs are fixed.