| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2018-04-27 | Set the mruby-1.4.1 release date to `2018-4-27`.1.4.1 | Hiroshi Mimaki | |
| 2018-04-10 | Fix build error on Windows with MRB_BUILD_AS_DLL | Kouhei Sutou | |
| Error message: C:\projects\groonga\vendor\mruby-source\include\mruby.h(1098): error C2375: 'mrb_gc_arena_save' : redefinition; different linkage [C:\projects\groonga\vendor\mruby\mruby.vcxproj] C:\projects\groonga\vendor\mruby-source\include\mruby.h(1083) : see declaration of 'mrb_gc_arena_save' C:\projects\groonga\vendor\mruby-source\include\mruby.h(1099): error C2375: 'mrb_gc_arena_restore' : redefinition; different linkage [C:\projects\groonga\vendor\mruby\mruby.vcxproj] C:\projects\groonga\vendor\mruby-source\include\mruby.h(1084) : see declaration of 'mrb_gc_arena_restore' | |||
| 2018-03-16 | Update `mrb_get_args` reference comment; ref #3963 | Yukihiro "Matz" Matsumoto | |
| 2018-03-04 | fix && to &! in mrb_get_args() | dearblue | |
| 2018-03-04 | add forced block arguments feature to mrb_get_args | dearblue | |
| 2018-03-02 | Add `mrb_fiber_alive_p` to C API. | Yukihiro "Matz" Matsumoto | |
| 2018-01-25 | Do not use `MRB_METHOD_TABLE_INLINE` by default; fix #3924 | Yukihiro "Matz" Matsumoto | |
| It was default on Linux. Abandoned for 2 reasons: * some cross-platform compiler defines `__linux__` even on bare metal environment (RTL8196 (MIPS big endian soc) for example). * some compilers do not align functions pointers so that we need to specify `-falign-functions=n` (where n>1). It's not suitable for default configuration. By our measurement, `mrbtest` consumes 400KB less memory. So if your target machine is memory tight, add the following command-line options to `GCC` (unfortunately `clang` does not support `-falign-functions`). `-falign-functions=2 -DMRB_METHOD_TABLE_INLINE` | |||
| 2018-01-25 | Use LSB not MSB for `MRB_METHOD_TABLE_INLINE`; ref #3924 | Yukihiro "Matz" Matsumoto | |
| 2018-01-16 | Set the mruby-1.4.0 release date to `2018-1-16`.1.4.0 | Hiroshi Mimaki | |
| 2017-12-12 | Merge pull request #3882 from mattn/fix-filename | Yukihiro "Matz" Matsumoto | |
| use filename in locale | |||
| 2017-12-12 | fix compilation error | Yasuhiro Matsumoto | |
| 2017-12-12 | Modifying frozen objects will raise `FrozenError`. | Yukihiro "Matz" Matsumoto | |
| `FrozenError` is a subclass of `RuntimeError` which used to be raised. [Ruby2.5] | |||
| 2017-12-06 | `mrb_method_search_vm()` should gives the defined class. | Yukihiro "Matz" Matsumoto | |
| Otherwise `super` may call a wrong method. | |||
| 2017-12-05 | Revise MRB_METHOD_PROC macro's argument | bamchoh | |
| I revised MRB_METHOD_PROC macro's argument fn to m. | |||
| 2017-11-20 | Reduce the size of `struct RBreak` to reduce memory usage. | Yukihiro "Matz" Matsumoto | |
| The old size of `struct RBreak` was 56 bytes (`MRB_NO_BOXING`) and it's bigger than other object structures. That increase the size of `RVALUE` thus increase the total amount of memory consumption. | |||
| 2017-11-20 | Add `MRB_METHOD_TABLE_INLINE` option. | Yukihiro "Matz" Matsumoto | |
| Now the method tables (in classes/modules and caches) keeps C function pointers without wrapping in `struct RProc` objects. For the sake of portability, `mrb_method_t` is represented by the struct and union, but if the most significant bit of the pointer is not used by the platform, `mrb_method_t` should be packed in `uintptr_t` to reduce memory usage. `MRB_METHOD_TABLE_INLINE` is turned on by default for linux. | |||
| 2017-11-20 | Add `MRB_METHOD_CACHE` description to `include/mrbconf.h` | Yukihiro "Matz" Matsumoto | |
| 2017-11-04 | Removed redundant function prototype. | Yukihiro "Matz" Matsumoto | |
| 2017-11-04 | Merge branch 'master' of github.com:mruby/mruby | YAMAMOTO Masaya | |
| 2017-11-03 | Should not use `FSHARED` state for string from `irep` pools; fix #3829 | Yukihiro "Matz" Matsumoto | |
| This strings in `irep` pools may be freed forcefully in `mrb_irep_free`. This commit probably fixes #3817 as well. | |||
| 2017-10-31 | Need to mark fibers referenced from `env`; fix #3837 | Yukihiro "Matz" Matsumoto | |
| The issue #3837 is a regression of #3819. I was mistakenly removed a important code to mark fibers from `env`. | |||
| 2017-10-28 | Add parentheses to pacify a warning. | Yukihiro "Matz" Matsumoto | |
| 2017-10-28 | Heavily refactored how lexical scope links are implemented; fix #3821 | Yukihiro "Matz" Matsumoto | |
| Instead of `irep` links, we added a `upper` link to `struct RProc`. To make a space for the `upper` link, we moved `target_class` reference. If a `Proc` does not have `env`, `target_class` is saved in an `union` shared with `env` (if a `Proc` has env, you can tell it by `MRB_PROC_ENV_P()). Otherwise `target_class` is referenced from `env->c`. We removed links in `env` as well. This change removes 2 members from `mrb_irep` struct, thus saving 2 words per method/proc/block. This also fixes potential memory leaks due to the circular references caused by a link from `mrb_irep`. | |||
| 2017-10-28 | remove `inline` from replacement `memcpy`&`memset` | Yukihiro "Matz" Matsumoto | |
| 2017-10-28 | Remove MRB_API from `mrb_env_unshare()` | Yukihiro "Matz" Matsumoto | |
| 2017-10-17 | Remove `mrb_vm_get_argc`; ref #3826 | Yukihiro "Matz" Matsumoto | |
| 2017-10-11 | Fix typo | YAMAMOTO Masaya | |
| 2017-10-11 | Add MRB_WITHOUT_FLOAT | YAMAMOTO Masaya | |
| 2017-10-10 | correctly handle *splat arguments in mrb_get_argc, also add mrb_vm_get_argc ↵ | Tomasz Dąbrowski | |
| and mrb_get_argv Fixes #3825 | |||
| 2017-10-01 | Add new type of shared string: `RSTR_FSHARED`. | Yukihiro "Matz" Matsumoto | |
| `RSTR_FSHARED` use frozen strings as shared body instead of `struct mrb_shared_string`. This reduces allocation from literal strings. | |||
| 2017-09-29 | Cut links from `irep` in heaps finalization. | Yukihiro "Matz" Matsumoto | |
| 2017-09-27 | fix: src\vm.c(438): warning C4244: '=': conversion from 'mrb_int' to 'int', ↵ | Tomasz Dąbrowski | |
| possible loss of data | |||
| 2017-09-27 | fix: src\numeric.c(1215): warning C4244: 'function': conversion from ↵ | Tomasz Dąbrowski | |
| 'mrb_int' to 'int', possible loss of data | |||
| 2017-09-27 | fix: src\kernel.c(874): warning C4244: 'function': conversion from 'mrb_int' ↵ | Tomasz Dąbrowski | |
| to 'int', possible loss of data | |||
| 2017-09-27 | fix: src\hash.c(27): warning C4244: '=': conversion from 'mrb_int' to ↵ | Tomasz Dąbrowski | |
| 'khint_t', possible loss of data | |||
| 2017-09-27 | fix: src\array.c(86): warning C4244: '=': conversion from 'mrb_int' to ↵ | Tomasz Dąbrowski | |
| 'uint32_t', possible loss of data | |||
| 2017-09-27 | fix: mrbgems\mruby-kernel-ext\src\kernel.c(114): warning C4244: 'function': ↵ | Tomasz Dąbrowski | |
| conversion from 'mrb_int' to 'int', possible loss of data | |||
| 2017-09-27 | fix: include\mruby/gc.h(43): warning C4200: nonstandard extension used: ↵ | Tomasz Dąbrowski | |
| zero-sized array in struct/union | |||
| 2017-09-04 | Restructure `irep->outer` chain; fix #3804 | Yukihiro "Matz" Matsumoto | |
| Instead of `irep -> proc` chain, we use `irep -> irep` chain to avoid GC bugs like #3804. We added `target_class` reference to `mrb_irep` struct. That means one more word consumption per `irep`. | |||
| 2017-09-01 | Make the default integer size to be `MRB_INT64` on 64bit systems; close #3800 | Yukihiro "Matz" Matsumoto | |
| Unless `MRB_NAN_BOXING` is specified. | |||
| 2017-08-28 | Remove integer type mismatch warnings from parse.y. | Yukihiro "Matz" Matsumoto | |
| 2017-08-26 | fix mrbgems/mruby-range-ext/src/range.c:142:71: error: use of undeclared ↵ | Tomasz Dąbrowski | |
| identifier 'FLT_EPSILON' | |||
| 2017-08-26 | Remove unused `mrb_obj_iv_ifnone()` from API. | Yukihiro "Matz" Matsumoto | |
| 2017-08-26 | Keep `Range` class in `mrb_state` structure for performance. | Yukihiro "Matz" Matsumoto | |
| 2017-08-22 | Added method cache. | Yukihiro "Matz" Matsumoto | |
| To enable method cache, define `MRB_METHOD_CACHE` or `MRB_METHOD_CACHE_SIZE`. The cache size must be power of 2. The default cache size is 128. The measurement: I measured simple benchmarks found in benchmark/ directory. With method cache enabled, we gained 6-8% performance improvement, with 97-99% cache hit rate. | |||
| 2017-08-22 | (Try to) fix mixture of `int` and `size_t` in UTF-8 conversion. | Yukihiro "Matz" Matsumoto | |
| This only effects VC. | |||
| 2017-08-18 | Reduce signed/unsigned comparison warnings; ref #3785 | Yukihiro "Matz" Matsumoto | |
| 2017-08-18 | Separate `mrb_str_buf_new` and `mrb_str_new_capa`. | Yukihiro "Matz" Matsumoto | |
| `mrb_str_buf_new` is an old function that ensures capacity size of `MRB_STR_BUF_MIN_SIZE` minimum. Usually one need to use `mrb_str_new_capa` instead. | |||
| 2017-08-18 | Improve Array structure | Miura Hideki | |
| 2017-08-12 | Reduce integer type mismatch warnings in VC. | Yukihiro "Matz" Matsumoto | |
