| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2018-01-30 | Merge pull request #3937 from mattn/file-mtime | Yukihiro "Matz" Matsumoto | |
| add File#mtime | |||
| 2018-01-30 | add File#mtime | Yasuhiro Matsumoto | |
| 2018-01-30 | Merge pull request #3936 from ken-mu/uint | Yukihiro "Matz" Matsumoto | |
| mruby-time: support time_t is uint | |||
| 2018-01-29 | mruby-time: remove ifdef for mktime error handling | ken-mu | |
| 2018-01-28 | mruby-time: support time_t is uint | ken-mu | |
| 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-25 | Check `arena_idx` before accessing; fix #3934 | Yukihiro "Matz" Matsumoto | |
| 2018-01-24 | Merge pull request #3921 from ksss/cloexec | Yukihiro "Matz" Matsumoto | |
| Should be true for close_on_exec flag | |||
| 2018-01-24 | Add `big_endian` and `little_endian` methods to `CrossBuild`; ref #3922 | Yukihiro "Matz" Matsumoto | |
| When your target machine is big endian, specify as following in the `build_config.rb`: ```ruby MRuby::CrossBuild.new('32bit') do |conf| toolchain :gcc conf.big_endian end ``` | |||
| 2018-01-24 | `Time.new(1969,12,31,23,59,59)` may or may not faile; ref #3932 | Yukihiro "Matz" Matsumoto | |
| On some platform and timezone it is a valid time spec. | |||
| 2018-01-21 | Merge pull request #3932 from ken-mu/timegm | Yukihiro "Matz" Matsumoto | |
| mruby-time: Fix mruby specific timegm() cannot return minus | |||
| 2018-01-21 | mruby-time: remove test case less than Dec 31 23:59:58 1969 | ken-mu | |
| 2018-01-20 | mruby-time: Fix mruby specific timegm() cannot return minus | ken-mu | |
| 2018-01-17 | Detect cyclic link of class path references; fix #3926 | Yukihiro "Matz" Matsumoto | |
| 2018-01-17 | Typo fixed. | Yukihiro "Matz" Matsumoto | |
| 2018-01-16 | Limit size of iseq buffer; fix #3927 | Yukihiro "Matz" Matsumoto | |
| 2018-01-16 | Allow `-> do rescue; end` as well as `proc do rescue; end` [Ruby2.6] | Yukihiro "Matz" Matsumoto | |
| 2018-01-16 | Merge pull request #3930 from mruby/stable | Yukihiro "Matz" Matsumoto | |
| Set the mruby-1.4.0 release date to `2018-1-16`. | |||
| 2018-01-16 | Set the mruby-1.4.0 release date to `2018-1-16`.1.4.0 | Hiroshi Mimaki | |
| 2018-01-14 | Remove trailing space | ksss | |
| 2018-01-14 | IO#close_on_exec? is not supported on MinGW | ksss | |
| 2018-01-14 | Should be true for close_on_exec flag | ksss | |
| 2017-12-26 | Merge pull request #3916 from mimaki/mruby-socket-cygwin-test | Yukihiro "Matz" Matsumoto | |
| Passed mruby-test on Cygwin. | |||
| 2017-12-26 | addrinfo.ai_protocol was not set on Cygwin. | Hiroshi Mimaki | |
| 2017-12-26 | Disabled UNIXSocket test on Cygwin | Hiroshi Mimaki | |
| 2017-12-26 | Add `Integer#{allbits?,anybits?,nobits?}. [Ruby2.5] | Yukihiro "Matz" Matsumoto | |
| In mruby, those methods are defined in `Integral` module. | |||
| 2017-12-26 | Move `Intefer#chr` to `Integral#chr`. | Yukihiro "Matz" Matsumoto | |
| Since mruby mixes `Integer` and `Float`, integer operations have been moved to `Integral` module. | |||
| 2017-12-25 | `KeyError` from `Hash#fetch` should inspect key. | Yukihiro "Matz" Matsumoto | |
| To distinguish string keys and symbol keys. | |||
| 2017-12-25 | `Enumerable#{one?,none?,all?,any?} to take pattern argument [Ruby2.5] | Yukihiro "Matz" Matsumoto | |
| 2017-12-25 | Add `Hash#slice` [Ruby 2.5] | Yukihiro "Matz" Matsumoto | |
| 2017-12-25 | `assert_equal()` takes result as the first argument | Yukihiro "Matz" Matsumoto | |
| 2017-12-23 | Update `Kernel#method_missing` tests for new `NoMethodError` message. | Yukihiro "Matz" Matsumoto | |
| Also removed tests that depends on implementation details of the default `method_missing` behavior. | |||
| 2017-12-23 | Do not include object string representation in `NoMethodError` message. | Yukihiro "Matz" Matsumoto | |
| This information is not mandatory but causes a lot of problems in the past due to infinite recursion by redefining `to_str`, `inspect` etc. | |||
| 2017-12-23 | `super` should raise `TypeError` when the receiver is switched; fix #3911 | Yukihiro "Matz" Matsumoto | |
| The receiver can be switched using `#instance_eval` etc. | |||
| 2017-12-23 | Do not initialize a local variable soon to be assigned. | Yukihiro "Matz" Matsumoto | |
| 2017-12-23 | Avoid infinite recursion in `method_missing`; ref #3908 | Yukihiro "Matz" Matsumoto | |
| 2017-12-23 | May need more stack space in `mrb_funcall_with_block`; fix #3908 | Yukihiro "Matz" Matsumoto | |
| 2017-12-23 | Add `#module_exec` and `#class_exec` in `mruby-class-ext` gem. | Yukihiro "Matz" Matsumoto | |
| 2017-12-23 | Should not overwrite `ci->target_class` in `mrb_exec_irep()`. | Yukihiro "Matz" Matsumoto | |
| For example, the following code behaved wrong: ```ruby Object.instance_exec(1,2,3){|*a| def foo 42 end } p foo() ``` | |||
| 2017-12-23 | Merge pull request #3913 from llothar/master | Yukihiro "Matz" Matsumoto | |
| Make source compilable with C++17 | |||
| 2017-12-23 | Make source compilable with C++17 | Lothar Scholz | |
| Changes applied: - Removing "register" keyword - Fixing const pointer to pointer assignments - Adding type casts to rb_malloc calls | |||
| 2017-12-20 | Do not need to take `target_class` from the upper proc. | Yukihiro "Matz" Matsumoto | |
| Since it is already set in `mrb_proc_new()`. | |||
| 2017-12-20 | Should not overwrite `MRB_PROC_TARGET_CLASS(p)` if `p` has env; fix #3905 | Yukihiro "Matz" Matsumoto | |
| 2017-12-20 | Fixed method look-up for `method_missing` in OP_SUPER; ref #3905 | Yukihiro "Matz" Matsumoto | |
| Method look-up for `OP_SUPER` should start from the superclass of the `target_class` but if it fails, the look-up for `method_missing` should start from the class of the receiver. The following code explains the case: ```ruby class Bar def foo super end end class Foo<Bar def method_missing(mid, *) p mid end end ``` Foo.new.foo | |||
| 2017-12-20 | The superclass info should be taken from `TARGET_CLASS(ci->proc). | Yukihiro "Matz" Matsumoto | |
| Not from `ci->target_class` that may be switched using `class_eval` etc. fix #3899, fix #3906 We found out there is a mruby specific limitation that `super` may be screwed up when a method is defined in a module and `super` is called in the block with the target class switched (for example, `super` in `class_eval` block). Now we raise `RuntimeError` for such cases. The following code works in CRuby but not in mruby. ``` module M def foo "aaa".singleton_class.class_eval{super 2} end end class Foo def foo(*); end end class Bar<Foo include M end Bar.new.foo ``` | |||
| 2017-12-18 | Merge pull request #3904 from ksss/mruby-method | Yukihiro "Matz" Matsumoto | |
| Add mruby-method | |||
| 2017-12-18 | Fix descriptor leakage; ref #3903 | Yukihiro "Matz" Matsumoto | |
| 2017-12-18 | Fix `fptr` leakage; ref #3903 | Yukihiro "Matz" Matsumoto | |
| 2017-12-18 | Use `_dup2` instead of `dup2` on Windows; ref #3903 | Yukihiro "Matz" Matsumoto | |
