| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2018-09-19 | Removed `to_hash` conversion method. | Yukihiro "Matz" Matsumoto | |
| 2018-09-19 | fixup! Removed `to_ary` conversion method. | Yukihiro "Matz" Matsumoto | |
| 2018-09-19 | fixup! Remove implicit conversion using `to_str` method. | Yukihiro "Matz" Matsumoto | |
| 2018-09-19 | Removed `to_ary` conversion method. | Yukihiro "Matz" Matsumoto | |
| 2018-09-19 | Remove implicit conversion using `to_str` method. | Yukihiro "Matz" Matsumoto | |
| We have added internal convenience method `__to_str` which does string type check. | |||
| 2018-09-19 | Remove implicit conversion using `to_int` method. | Yukihiro "Matz" Matsumoto | |
| The ISO standard does not include implicit type conversion using `to_int`. This implicit conversion often causes vulnerability. There will be no more attacks like #4120. In addition, we have added internal convenience method `__to_int` which does type check and conversion (from floats). | |||
| 2018-09-18 | Array size may be changed in `mrb_get_args()` reentry. | Yukihiro "Matz" Matsumoto | |
| fix #4116; fix #4117; fix #4118; fix #4119; fix #4120 | |||
| 2018-09-07 | Clear terminated space | dearblue | |
| 2018-09-07 | Fix indent | dearblue | |
| 2018-09-07 | Undesirable line split | dearblue | |
| 2018-09-06 | Need to check if merging hash is empty; fix #4107 | Yukihiro "Matz" Matsumoto | |
| 2018-09-05 | Add `argv` and `argc` check in `OP_ENTER`; fix #4102 | Yukihiro "Matz" Matsumoto | |
| `argv` may be retrieved from an array whose `ptr` is `NULL` when it`s empty. | |||
| 2018-09-04 | Revert "Remove top-level constant lookup; CRuby2.5"; fix #4070 | Yukihiro "Matz" Matsumoto | |
| This reverts commit c96def7c96c50f3b8e22e47ce31a6c5a37939dfd. This change was from my misunderstanding. | |||
| 2018-09-04 | Need more precise constant name check. | Yukihiro "Matz" Matsumoto | |
| This change was inspired by [ruby-bugs#7573] | |||
| 2018-09-04 | Add type casts to silence MSVC warnings. | Yukihiro "Matz" Matsumoto | |
| 2018-09-01 | Avoid warning in MSVC compilation. | Yukihiro "Matz" Matsumoto | |
| 2018-09-01 | Move `Kernel#send` to `mruby-metaprog` gem. | Yukihiro "Matz" Matsumoto | |
| But `BasicObject#__send__` is still available from the core. | |||
| 2018-09-01 | Avoid `NoMethodError` exception from `mrb_func_basic_p`. | Yukihiro "Matz" Matsumoto | |
| 2018-09-01 | Fix ISO/JIS section numbers. | Yukihiro "Matz" Matsumoto | |
| 2018-08-30 | Use `mrb_ensure_hash_type()` to check if an operand is a `Hash`; fix #4097 | Yukihiro "Matz" Matsumoto | |
| 2018-08-30 | Add new function `mrb_ensure_hash_type()`; ref #4097 | Yukihiro "Matz" Matsumoto | |
| Unlike `mrb_check_hash_type()` that returns `nil` if the argument is not a `Hash`, `mrb_ensure_hash_type()` raises a `TypeError` exception. | |||
| 2018-08-30 | Separate meta-programming features to `mruby-metaprog` gem. | Yukihiro "Matz" Matsumoto | |
| We assume meta-programming is less used in embedded environments. We have moved following methods: * Kernel module global_variables, local_variables, singleton_class, instance_variables, instance_variables_defined?, instance_variable_get, instance_variable_set, methods, private_methods, public_methods, protected_methods, singleton_methods, define_singleton_methods * Module class class_variables, class_variables_defined?, class_variable_get, class_variable_set, remove_class_variable, included_modules, instance_methods, remove_method, method_removed, constants * Module class methods constants, nesting Note: Following meta-programming methods are kept in the core: * Module class alias_method, undef_method, ancestors, const_defined?, const_get, const_set, remove_const, method_defined?, define_method * Toplevel object define_method `mruby-metaprog` gem is linked by default (specified in default.gembox). When it is removed, it will save 40KB (stripped:8KB) on x86-64 environment last time I measured. | |||
| 2018-08-30 | Need to clear `mrb->c->cibase->ridx` (toplevel ridx) at L_STOP; fix #4092 | Yukihiro "Matz" Matsumoto | |
| This problem only appears when `mrb` executed multiple times (i.e. `mirb`) | |||
| 2018-08-30 | The operand of `OP_ARYDUP` may not be an array; fix #4094 | Yukihiro "Matz" Matsumoto | |
| This commit also fix #4096. | |||
| 2018-08-29 | Fix off-by-one error in `OP_EPUSH` and `OP_ONERR`; fix #4095 | Yukihiro "Matz" Matsumoto | |
| 2018-08-29 | Check the size of rescue&ensure stacks; ref #4088 | Yukihiro "Matz" Matsumoto | |
| Those small stack indexes can cause integer overflow. | |||
| 2018-08-29 | Simplified `#ifdef` nesting in `codedump.c`; fix #4089 | Yukihiro "Matz" Matsumoto | |
| `printf()` and related functions should not be called when `MRB_DISABLE_STDIO` is defined. | |||
| 2018-08-25 | Reduce integer casting warnings. | Yukihiro "Matz" Matsumoto | |
| 2018-08-25 | fixup! New bytecode implementation of mruby VM. | Yukihiro "Matz" Matsumoto | |
| 2018-08-25 | Hash splat `**` should not be ignored. | Yukihiro "Matz" Matsumoto | |
| Implemented by adding `OP_HASHCAT` that merges hashes. | |||
| 2018-08-25 | Fixed a bug in `OP_HASHADD`. | Yukihiro "Matz" Matsumoto | |
| 2018-08-25 | Add a new function `mrb_hash_merge()`. | Yukihiro "Matz" Matsumoto | |
| 2018-08-25 | Add bytecode support for `MRB_WORD_BOXING`. | Yukihiro "Matz" Matsumoto | |
| 2018-08-25 | New bytecode implementation of mruby VM. | Yukihiro "Matz" Matsumoto | |
| 2018-08-25 | irep is released when Fiber is terminated | pyama86 | |
| 2018-08-25 | Rename ambiguous function names. | Yukihiro "Matz" Matsumoto | |
| `mrb_iv_p` -> `mrb_iv_name_sym_p` `mrb_iv_check` -> `mrb_iv_name_sym_check` | |||
| 2018-08-25 | Remove utility functions: `mrb_vm_iv_{get,set}`. | Yukihiro "Matz" Matsumoto | |
| 2018-08-25 | Revert 04dbbff. | Yukihiro "Matz" Matsumoto | |
| Use segment list for instance variable again to reduce memory. | |||
| 2018-08-25 | Small refactoring of `flodivmod()`. | Yukihiro "Matz" Matsumoto | |
| 2018-08-25 | Simply use `snprintf` instead of custom `fmt_fp`, | Yukihiro "Matz" Matsumoto | |
| Unless `MRB_DISABLE_STDIO` is set. `snprintf` is used anyway if mruby is configured to use `stdio`. This change reduces 8KB of program size on the Linux box. | |||
| 2018-08-25 | Remove `nregs` member from `mrb_callinfo`. | Yukihiro "Matz" Matsumoto | |
| This means reducing one word per a call frame. | |||
| 2018-08-25 | Reorganize flags values for classes; fix #3975 | Yukihiro "Matz" Matsumoto | |
| Renamed flag macro names as well: `MRB_FLAG_IS_FROZEN` -> `MRB_FL_OBJ_FROZEN` `MRB_FLAG_IS_PREPENDED` -> `MRB_FL_CLASS_IS_PREPENDED` `MRB_FLAG_IS_ORIGIN` -> `MRB_FL_CLASS_IS_ORIGIN` `MRB_FLAG_IS_INHERITED` -> `MRB_FL_CLASS_IS_INHERITED` | |||
| 2018-07-31 | Removed unused instruction: `OP_KDICT`. | Yukihiro "Matz" Matsumoto | |
| 2018-07-31 | Fixed a small bug in keyword argument parsing. | Yukihiro "Matz" Matsumoto | |
| def m(a=1,**k) p [a,k] end m(a: 1) | |||
| 2018-07-30 | Keyword argument implemented. | Yukihiro "Matz" Matsumoto | |
| 2018-07-30 | New bytecode implementation of mruby VM. | Yukihiro "Matz" Matsumoto | |
| 2018-06-28 | Use `mrb_raise()` instead of `mrb_raisef()`; ref #4062 | Yukihiro "Matz" Matsumoto | |
| 2018-06-27 | Add negative check in `mrb_str_resize`; fix #4062 | Yukihiro "Matz" Matsumoto | |
| 2018-06-22 | initialize a local variable to avoid warning | Yukihiro "Matz" Matsumoto | |
| 2018-06-14 | Restore GC arena after raised exceptions; ref #4042 | Yukihiro "Matz" Matsumoto | |
