summaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)Author
2019-12-29Avoid unneeded directory creation during `rake -T`, etc.KOBAYASHI Shuji
2019-12-28Merge pull request #4911 from ↵Yukihiro "Matz" Matsumoto
shuujii/use-Rake.verbose-instead-of-verbose-and-pp_show Use `Rake.verbose` instead of `$verbose` and `$pp_show` in build scripts
2019-12-28Use `Rake.verbose` instead of `$verbose` and `$pp_show` in build scriptsKOBAYASHI Shuji
The incompatibility that the commands of `FileUtils` origin output verbose by default due to the changes in d8a5163b and 26e6e75b is also fixed.
2019-12-27Merge pull request #4910 from ↵Yukihiro "Matz" Matsumoto
shuujii/use-Rake-DSL-instead-of-commands-of-FileUtils Use Rake DSL instead of commands of `FileUtils`
2019-12-27Use Rake DSL instead of commands of `FileUtils`KOBAYASHI Shuji
- Respect `--verbose(-v)` and `--dry-run(-n)` options. - Silence warnings to keyword arguments on Ruby 2.7.
2019-12-27Revert "Enable sanitizer in travis test"; ref #4864Yukihiro "Matz" Matsumoto
`gcc` sanitizer does not work on some environment (namely my localhost). Although it works on Travis, it is not convenient that tests fail on the local host. We keep sanitizer tests on the local (using `clang`). This reverts commit 9cde967321fe4bf200d4451859ead57b06e73027.
2019-12-27Prohibit assignment to numbered parameters.Yukihiro "Matz" Matsumoto
It is stricter than CRuby but confusing anyway.
2019-12-27Allow non numbered-parameter identifier like `_1` outside of blocks.Yukihiro "Matz" Matsumoto
But it causes warnings as CRuby does; fix #4892 fix #489
2019-12-27Support `-v` flag of `rake`; close #4887Yukihiro "Matz" Matsumoto
The patch was originally written by @take-cheese. I have fixed the conflict caused by `minirake` deletion - @matz.
2019-12-27Numbered parameters: usually linked list uses `cdr` for links.Yukihiro "Matz" Matsumoto
2019-12-27Prohibit numbered parameters as method arguments; fix #4892Yukihiro "Matz" Matsumoto
As of CRuby2.7 it is only warned. `mruby` prohibits explicitly to implement the future Ruby3 behavior.
2019-12-27Enable `MRB_GC_STRESS` test on CIKOBAYASHI Shuji
The `debug` build target (`MRB_GC_STRESS` is enabled) on CI have been compiled but not tested so far. However, I think testing with `MRB_GC_STRESS` is effective (in fact, I found #4907 bug). Therefore, I integrated `debug` and `full-debug` build targets to enable `MRB_GC_STRESS` testing. Testing with `MRB_GC_STRESS` takes a little time, but compiling takes more time, so CI execution time does not increase due to decrease of build target.
2019-12-27Merge pull request #4864 from take-cheeze/enable_sanitizer_travisYukihiro "Matz" Matsumoto
Enable sanitizer in travis test
2019-12-25Merge pull request #4907 from shuujii/fix-poteltially-use-of-wrong-method-cacheYukihiro "Matz" Matsumoto
Fix potentially use of wrong method cache
2019-12-25Fix potentially use of wrong method cacheKOBAYASHI Shuji
#### Example (with `MRB_METHOD_CACHE`) ```ruby GC.start c = Class.new p c #=> #<Class:0x7fd6a180e790> c.new #=> cache `c.new` c = nil GC.start #=> `c` is GCed r = Range.dup p r #=> #<Class:0x7fd6a180e790> # [same pointer as `c`] r.new(2, 3) #=> ArgumentError: 'initialize': # wrong number of arguments (2 for 0) # [`c.new` is called instead of `r.new`] ``` #### Cause An entry of method cache is identified by class pointer and method id. However, reusing memory after GC may create a class with the same pointer as the cached class. #### Treatment Cleared method caches of the class when the class is GCed.
2019-12-25Merge pull request #4906 from ↵Yukihiro "Matz" Matsumoto
shuujii/refine-the-assertion-failure-message-in-mrdb-print-tests Refine the assertion failure message in mrdb print tests
2019-12-24Refine the assertion failure message in mrdb print testsKOBAYASHI Shuji
#### Before this patch: ```console Fail: mruby-bin-debugger(print) error (mrbgems: mruby-bin-debugger) - Assertion[2] Expected true to be false. ``` #### After this patch: ```console Fail: mruby-bin-debugger(print) error (mrbgems: mruby-bin-debugger) - Assertion[2] Expected "$2 = undefined method 'bar' (NoMethodError)\n" to be start_with? "$2 = (eval):2: undefined method". ```
2019-12-24Merge pull request #4905 from kishima/cygwin_compileYukihiro "Matz" Matsumoto
Add double quotes for cygwin filenames #4904
2019-12-23add double quotes for cygwin filenames #4904kishima
2019-12-23Merge pull request #4901 from take-cheeze/gnu_cxxYukihiro "Matz" Matsumoto
Use GNU extension in C++ for cygwin
2019-12-23Merge pull request #4902 from take-cheeze/native_crlfYukihiro "Matz" Matsumoto
Handle CR LF newline natively in lexer
2019-12-23Use binary mode in mrbc source code readingtake-cheeze
2019-12-23Handle CR LF newline natively in lexertake-cheeze
2019-12-23Use GNU extension in C++ for cygwintake-cheeze
2019-12-23Merge pull request #4900 from shuujii/parallelize-compilation-only-on-Travis-CIYukihiro "Matz" Matsumoto
Parallelize compilation only on Travis CI
2019-12-23Parallelize compilation only on Travis CIKOBAYASHI Shuji
Parallel execution of tests makes log difficult to see due to mixing.
2019-12-22Merge pull request #4899 from dearblue/build-gitYukihiro "Matz" Matsumoto
Use `git checkout` instead of `git reset`
2019-12-22Use `git checkout` instead of `git reset`dearblue
With this change, if the checkout fails, it will stop with an error. The purpose is to avoid deleting working branch history when developing gem.
2019-12-22Display directory with git commanddearblue
2019-12-22Merge pull request #4898 from shuujii/refine-.travis.ymlYukihiro "Matz" Matsumoto
Refine `.travis.yml`
2019-12-22Merge pull request #4896 from shuujii/fix-undefined-method-PathnameYukihiro "Matz" Matsumoto
Fix "undefined method `Pathname'"; fix #4895
2019-12-22Merge pull request #4897 from ↵Yukihiro "Matz" Matsumoto
shuujii/use-exec-instead-of-system-in-minirake-for-exit-status Use `exec` instead of `system` in `minirake` for exit status
2019-12-22Refine `.travis.yml`KOBAYASHI Shuji
* Use `rake` instead of `minirake`. * Remove `gperf` configuration. Execution time seems to be reduced by about 15%.
2019-12-21Use `exec` instead of `system` in `minirake` for exit statusKOBAYASHI Shuji
#### Before this patch: ```console $ ./minirake --foo; echo $? invalid option: --foo 0 ``` #### After this patch: ```console $ ./minirake --foo; echo $? invalid option: --foo 1 ```
2019-12-21Fix "undefined method `Pathname'"; fix #4895KOBAYASHI Shuji
2019-12-21Merge pull request #4888 from dearblue/shellquoteYukihiro "Matz" Matsumoto
Perform `shellquote` on referenced string
2019-12-21Numbered parameters should not be available in the lambda bodies.Yukihiro "Matz" Matsumoto
`mruby` does not warn like `CRuby` for cases like #4893. Fix #4890, fix #4891, fix #4893.
2019-12-21Add emulating `minirake` that calls real `rake`.Yukihiro "Matz" Matsumoto
2019-12-21Abandon `minirake`. Use `rake` for compilation; fix #4884Yukihiro "Matz" Matsumoto
2019-12-21Merge pull request #4889 from shuujii/_0-is-not-numbered-parameterYukihiro "Matz" Matsumoto
`_0` is not numbered parameter
2019-12-21`_0` is not numbered parameterKOBAYASHI Shuji
#### Before this patch: ```console $ bin/mruby rb -e '_0=:l; p ->{_0}.()' -e:1:13: _0 is not available -e:1:13: syntax error, unexpected $end, expecting '}' ``` #### After this patch (same as Ruby): ```console $ bin/mruby rb -e '_0=:l; p ->{_0}.()' :l ```
2019-12-21Perform `shellquote` on referenced stringdearblue
2019-12-21Fix SEGV from numbered parameters outside of blocks; fix #4862Yukihiro "Matz" Matsumoto
2019-12-21Merge pull request #4885 from ↵Yukihiro "Matz" Matsumoto
shuujii/fix-potentially-crash-in-%n-of-mrb_vformat-with-64-bit-int Fix potentially crash in `%n` of `mrb_vformat()` with 64-bit `int`
2019-12-20Fix potentially crash in `%n` of `mrb_vformat()` with 64-bit `int`KOBAYASHI Shuji
If `mrb_sym` is smaller than `int`, it is promoted to `int`.
2019-12-20Merge pull request #4871 from dearblue/method-in-methodYukihiro "Matz" Matsumoto
Avoid method in method
2019-12-20Merge pull request #4870 from dearblue/unnessesary-branchYukihiro "Matz" Matsumoto
Remove unnessesary branches
2019-12-20Merge pull request #4874 from dearblue/method-listYukihiro "Matz" Matsumoto
Fix for `#methods` to include methods that were `undef`
2019-12-19Enable sanitizer in travis testtake-cheeze
2019-12-19Fix mixed declarations in 429f6deYukihiro "Matz" Matsumoto