| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2020-05-09 | Fix boundary check for `OP_LOADI16`; ref fa8668c | dearblue | |
| It was making a negative integer if the highest-order bit of a 16-bit integer was 1. no patched: ```ruby p 0x7fff # => 32767 p 0x8000 # => -32768 p 0xffff # => -1 p 0x10000 # => 65536 ``` | |||
| 2020-05-09 | Merge pull request #4995 from ↵ | Yukihiro "Matz" Matsumoto | |
| shuujii/fix-some-Hash-methods-are-inconsistent-with-values Fix some `Hash` methods are inconsistent with `values` | |||
| 2020-05-09 | Fix some `Hash` methods are inconsistent with `values` | KOBAYASHI Shuji | |
| Inconsistent when hash has duplicate key. ### Example ```ruby # example.rb keys = (1..3).map{[_1]} h = keys.to_h{[_1, _1[0]]} keys[0][0] = 2 p h.values p h.each_value.to_a p h ``` #### Before this patch: ```console $ bin/mruby example.rb [1, 2, 3] [1, 1, 3] {[2]=>1, [2]=>1, [3]=>3} ``` #### After this patch (same as Ruby) ```console $ bin/mruby example.rb [1, 2, 3] [1, 2, 3] {[2]=>1, [2]=>2, [3]=>3} ``` | |||
| 2020-05-07 | Update `doc/opcode.md` for operand signs. [ci skip] | Yukihiro "Matz" Matsumoto | |
| 2020-05-07 | Remove unnecessary `sprintf` test that fails since 91368c1. | Yukihiro "Matz" Matsumoto | |
| 2020-05-07 | Update `README.md` to address old `bison` problem on macOS. | Yukihiro "Matz" Matsumoto | |
| 2020-05-07 | Should not use `assert` with expressions with side-effect; ref #49812.1.1-rc2 | Yukihiro "Matz" Matsumoto | |
| `assert()` can be completely removed when `NDEBUG` is set. | |||
| 2020-05-07 | Fixed wrong condition in #4981. | Yukihiro "Matz" Matsumoto | |
| 2020-05-07 | Add `#include <string.h>` on all platforms for `strncpy`; #4981 | Yukihiro "Matz" Matsumoto | |
| 2020-05-07 | Remove unused local variable if `MRB_UTF8_STRING` is not set. | Yukihiro "Matz" Matsumoto | |
| Ref #4982 #4983 | |||
| 2020-05-07 | Avoid `snprintf` in `mruby-io` test; ref #4981 | Yukihiro "Matz" Matsumoto | |
| 2020-05-07 | Remove the temporary file from the `AF_UNIX` socket test; #4981 | Yukihiro "Matz" Matsumoto | |
| 2020-05-07 | Fix `IO#readchar` to return broken UTF-8 rather than `EOF` error. | Yukihiro "Matz" Matsumoto | |
| The behavior is different from CRuby, but we believe this is a right behavior for mruby, which only supports either ASCII or UTF-8 exclusively; fix #4983, ref #4982 ``` $ printf '\xe3\x81' | ruby -e 'p STDIN.readchar' "\xE3\x81" ``` ``` $ printf '\xe3\x81' | mruby -e 'p STDIN.readchar' "\xE3" ``` | |||
| 2020-05-07 | Fix `IO#readchar` to support UTF-8 char reading; fix #4712 | Yukihiro "Matz" Matsumoto | |
| This fix only effective when `MRB_UTF8_STRING` is set. | |||
| 2020-05-07 | Rename (and expose) UTF-8 related functions; ref #4712 | Yukihiro "Matz" Matsumoto | |
| - mrb_utf8len() - returns the size of a UTF-8 char (in bytes) - mrb_utf8_strlen() - returns the length of a UTF-8 string (in char) | |||
| 2020-05-07 | Update `cmpnum` document. | Yukihiro "Matz" Matsumoto | |
| `cmpnum` function may return `nil` on error. | |||
| 2020-05-07 | Avoid `mrb_funcall` if `MRB_UFT8_STRING` is not set. | Yukihiro "Matz" Matsumoto | |
| 2020-05-07 | Remove endian information/flags from compiled binary format. | Yukihiro "Matz" Matsumoto | |
| Since `mruby 2.0`, compiled bytecode no longer depends on the endian of the machine. | |||
| 2020-05-07 | Remove `-e/-E` options from `mrbc`. | Yukihiro "Matz" Matsumoto | |
| You don't have to specify endian since `mruby 2.0`. | |||
| 2020-05-07 | Update compiled binary format version for `OP_LOADI16`. | Yukihiro "Matz" Matsumoto | |
| 2020-05-07 | Update `doc/opcode.md` to reflect the latest bytecode. | Yukihiro "Matz" Matsumoto | |
| - Add `OP_LOADI16` - Update keyword argument related ops (e.g. OP_KEY_P, etc.) - Fix some wrong descriptions | |||
| 2020-05-07 | Add a new instruction `OP_LOADI16`. | Yukihiro "Matz" Matsumoto | |
| Which loads 16bit integer to the register. The instruction number should be reorder on massive instruction refactoring. The instruction is added for `mruby/c` which had performance issue with `OP_EXT`. With this instruction, `mruby/c` VM can just raise errors on `OP_EXT` extension instructions. | |||
| 2020-05-07 | Fix wrong line number before comment line; fix #4993 | Yukihiro "Matz" Matsumoto | |
| 2020-05-07 | Remove `mrb_run` from `MRB_API`; #4488 | Yukihiro "Matz" Matsumoto | |
| `mrb_run` requires to push callinfo stack before calling, which is very hard from outside of `vm.c`. So there should be virtually no correct usage of the function, hence the cause of #4488. We removed it. You can use `mrb_top_run(mrb, proc, self, 0)` instead of `mrb_run(mrb, proc self)`. | |||
| 2020-05-07 | Add assertion as originally intended; ref #4986 | Yukihiro "Matz" Matsumoto | |
| 2020-05-07 | Update `doc/guides/compile.md` to note the `bison` failure on Mac. | Yukihiro "Matz" Matsumoto | |
| 2020-05-05 | Merge pull request #4990 from komainu8/enable-method-t-struct-on-32bit-linux | Yukihiro "Matz" Matsumoto | |
| Enable MRB_METHOD_T_STRUCT by default on 32bit GUN/Linux | |||
| 2020-05-04 | Enable MRB_METHOD_T_STRUCT by default on 32bit GUN/Linux | Horimoto Yasuhiro | |
| Because we can't use the highest 2 bits of function pointers. | |||
| 2020-05-01 | Fix `_read_buf` to be more efficient; fix #4982 | Yukihiro "Matz" Matsumoto | |
| The bug was introduced by #4712. The `getc' problem resurrected. It should be addressed soon. | |||
| 2020-05-01 | Fix `IO#sysread` to update buffer string on `EOF`; ref #4982 | Yukihiro "Matz" Matsumoto | |
| 2020-05-01 | Update `IO#ungetc` to keep `@buf` string; ref #4982 | Yukihiro "Matz" Matsumoto | |
| 2020-05-01 | Fix UTF-8 boundary check; ref #4982 | Yukihiro "Matz" Matsumoto | |
| 2020-05-01 | Fix typo and include location | Uchio Kondo | |
| 2020-05-01 | Skip socket check on windows | Uchio Kondo | |
| 2020-05-01 | Follow C90 style | Uchio Kondo | |
| 2020-05-01 | Test mruby-io in tmpdir when AF_UNIX cannot be created on cwd | Uchio Kondo | |
| 2020-04-30 | Merge pull request #4987 from shuujii/avoid-changing-directory-in-mruby-io-test | Yukihiro "Matz" Matsumoto | |
| Avoid changing directory in `mruby-io` test | |||
| 2020-04-30 | Merge pull request #4988 from shuujii/refine-.travis.yml | Yukihiro "Matz" Matsumoto | |
| Refine `.travis.yml` | |||
| 2020-04-30 | Refine `.travis.yml` | KOBAYASHI Shuji | |
| * Disable automatic update and clean up on `brew install` (install time 160 sec -> 5 sec). * Avoid using deprecated keys. | |||
| 2020-04-30 | Merge pull request #4984 from dearblue/break-to_s | Yukihiro "Matz" Matsumoto | |
| Sorting the list of gems at build time by name | |||
| 2020-04-29 | Merge pull request #4986 from dearblue/assert-io | Yukihiro "Matz" Matsumoto | |
| Avoid comparing pointers and integers | |||
| 2020-04-29 | Merge pull request #4985 from dearblue/print-gems | Yukihiro "Matz" Matsumoto | |
| Makes `mrb_any_to_s()` accept an object whose class is `NULL` | |||
| 2020-04-29 | Avoid changing directory in `mruby-io` test | KOBAYASHI Shuji | |
| 2020-04-29 | Avoid comparing pointers and integers | dearblue | |
| 2020-04-29 | Makes `mrb_any_to_s()` accept an object whose class is `NULL` | dearblue | |
| When using `mrb_any_to_s()` for debugging purposes, giving an object whose class is `NULL` no longer causes a SIGSEGV and no crash. This is achieved by making `mrb_class_name()` and `mrb_str_cat_cstr()` null safe. | |||
| 2020-04-29 | Sorting the list of gems at build time by name | dearblue | |
| Printing them in sorted order makes it easier to find the desired gem. But it has come to completely ignore the dependency. | |||
| 2020-04-28 | Should not use `assert` with expressions with side-effect; ref #4981 | Yukihiro "Matz" Matsumoto | |
| `assert()` can be completely removed when `NDEBUG` is set. | |||
| 2020-04-28 | Fixed wrong condition in #4981. | Yukihiro "Matz" Matsumoto | |
| 2020-04-28 | Add `#include <string.h>` on all platforms for `strncpy`; #4981 | Yukihiro "Matz" Matsumoto | |
| 2020-04-28 | Remove unused local variable if `MRB_UTF8_STRING` is not set. | Yukihiro "Matz" Matsumoto | |
| Ref #4982 #4983 | |||
