summaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)Author
2020-10-29The path of the gem should be relative from `MRUBY_ROOT`.Yukihiro "Matz" Matsumoto
It was relative from the directory of the build configuration file, but the document says it's relative from `MRUBY_ROOT`. When the default configuration file was `MRUBY_ROOT/build_config.rb`, it was OK for most of the cases.
2020-10-29Move `build_config.rb` -> `build_config/default.rb`; ref #5098Yukihiro "Matz" Matsumoto
In addition, update the documents referring `build_config.rb` which is no longer used. The new `build_config.rb` describes the new configuration structure in the comment.
2020-10-29Restore original name for default `build_config_name`; ref #5098Yukihiro "Matz" Matsumoto
2020-10-29Use `Dir.glob` instead of `map`.Yukihiro "Matz" Matsumoto
2020-10-29Add beginless/endless ranges tests.Yukihiro "Matz" Matsumoto
2020-10-29Raise exception from `Range#first` with beginless ranges.Yukihiro "Matz" Matsumoto
2020-10-29Implement `Range#last` in `mruby-range-ext` in Ruby.Yukihiro "Matz" Matsumoto
This reduce unnecessary calls of `mrb_funcall()`.
2020-10-29Merge pull request #5098 from shuujii/revert-MRUBY_TARGET-mechanismYukihiro "Matz" Matsumoto
Revert `MRUBY_TARGET` mechanism; ref #5096
2020-10-29Merge pull request #5102 from dearblue/c++-excYukihiro "Matz" Matsumoto
Fixed build with `conf.enable_cxx_exception`
2020-10-29Merge pull request #5103 from shuujii/fix-mrb_obj_id-to-FloatYukihiro "Matz" Matsumoto
Fix `mrb_obj_id` to `Float`
2020-10-28Fix `mrb_obj_id` to `Float`KOBAYASHI Shuji
2020-10-28Fixed build with `conf.enable_cxx_exception`dearblue
The problem was manifested by commit 5069fb15e41998dffef8e0ba566b3a82be369ba3.
2020-10-24Merge pull request #5101 from dearblue/env-newYukihiro "Matz" Matsumoto
Reorganize `env_new()` as `mrb_env_new()`
2020-10-24Reorganize `env_new()` as `mrb_env_new()`dearblue
The `mrb_env_new()` function is a global function, but it is still treated as an internal function.
2020-10-23Merge pull request #5099 from dearblue/getargs-arrayYukihiro "Matz" Matsumoto
Prohibit array changes by "a"/"*" specifier of `mrb_get_args()`
2020-10-23Merge pull request #5100 from dearblue/getargv-arrayYukihiro "Matz" Matsumoto
Prohibit array changes by `mrb_get_argv()`
2020-10-22Prohibit array changes by `mrb_get_argv()`dearblue
The `mrb_get_argv()` function will now return `const mrb_value *`. This is because it is difficult for the caller to check if it is a splat argument (array object) and to write-barrier if necessary.
2020-10-22Prohibit array changes by "a"/"*" specifier of `mrb_get_args()`dearblue
The "a"/"*" specifier of the `mrb_get_args()` function will now return `const mrb_value *`. This is because it is difficult for the caller to check if it is an array object and write-barrier if necessary. And it requires calling `mrb_ary_modify()` on the unmodified array object, which is also difficult (this is similar to #5087).
2020-10-19Revert `MRUBY_TARGET` mechanism; ref #5096KOBAYASHI Shuji
* In explanation of mruby, the expression `build_config.rb` is frequently used including official documents, so I think that it will not make sense if the file is no longer used. * The `MRUBY_TARGET` mechanism seems to have little improvement, so I don't think it should be changed to avoid unnecessary confusion. * `MRUBY_TARGET` and `MRuby.targets` represent somewhat different things, so using the same term "target" is a bit confusing. The mechanism that can be written short when using a file under `build_config` (renamed from `target`) directory remains (`build_config/${MRUBY_CONFIG}.rb` is used if the path specified in `MRUBY_CONFIG` doesn't exist).
2020-10-16Add startless range (another part of #5085)Yukihiro "Matz" Matsumoto
Ref #5093; close #5085
2020-10-16Remove uninitialized local variable warning.Yukihiro "Matz" Matsumoto
Fix for #5093
2020-10-16Turn of `enable_debug` by default; ref #5096Yukihiro "Matz" Matsumoto
It was once turned off by #4045
2020-10-16Typo fixed; ref #5095Yukihiro "Matz" Matsumoto
Thanks to @YunzheZJU
2020-10-16Use `conf.enable_debug`; close #5095Yukihiro "Matz" Matsumoto
According to `doc/guides/compile.md`; thanks to @YunzheZJU
2020-10-16Merge pull request #5094 from mruby-Forum/mruby3-preview3.0.0-previewYukihiro "Matz" Matsumoto
mruby 3.0.0-preview.
2020-10-16mruby 3.0.0-preview.Hiroshi Mimaki
2020-10-15Merge branch 'zubycz-work_for_merge'Yukihiro "Matz" Matsumoto
2020-10-15Merge branch 'work_for_merge' of https://github.com/zubycz/mruby into ↵Yukihiro "Matz" Matsumoto
zubycz-work_for_merge
2020-10-15Fix out of bound access in `parse.y`.Yukihiro "Matz" Matsumoto
2020-10-15Merge pull request #5084 from mruby/mruby3Yukihiro "Matz" Matsumoto
Mruby3
2020-10-14Add indent to `lv` in the C dump.Yukihiro "Matz" Matsumoto
2020-10-14Avoid using C struct dump for test Ruby code.Yukihiro "Matz" Matsumoto
Files under `test/t` and `mrbgem/*/test` are for tests, not for actual execution. So symbols in those files need not to be pre-allocated. This change slightly reduce the memory consumption.
2020-10-13Introduce endless range (a part of #5085)taiyoslime
Co-Authored-By: n4o847 <[email protected]> Co-Authored-By: smallkirby <[email protected]>
2020-10-12Merge pull request #5091 from zubycz/remove_unnecessary_assignmentYukihiro "Matz" Matsumoto
Remove unnecessary assignment in String#upto
2020-10-12Revert "Add a new function `mrb_exc_protect()`."Yukihiro "Matz" Matsumoto
This reverts commit 8746a6fe4e7bda8a0fbc0eaece9314ec51a0c255. We already have `mrb_protect()`, `mrb_ensure()` and `mrb_rescue()` functions. If you need to handle exceptions from C functions, use those functions above.
2020-10-12Add a new function `mrb_exc_protect()`.Yukihiro "Matz" Matsumoto
`mrb_exc_protect()` takes two C functions, `body` to be executed first, and `resc` to be executed when an error happens during `body` execution. Since `mrb_exc_protect()` should be compiled with the proper compiler, we will not see the problem like #5088 that was caused by `setjmp()` and `throw` mixture.
2020-10-12Cause error explicitly from `MRB_TRY()` with `cxx_exception`; ref #5088Yukihiro "Matz" Matsumoto
`MRB_TRY()` does not work when compiled by C compiler with `cxx_exception` configuration. We should explicitly warn.
2020-10-12Revert e2e6554b56 not to use `MRB_TRY()`; close #5088Yukihiro "Matz" Matsumoto
`MRB_TRY()` does not work when compiled by C compiler with `cxx_exception`, due to the mixture of `setjmp()` used by `mirb.c` and `throw` used by the core. The original intension of e2e6554b56 is to protect code from signal interruption, but the signal interruption is not well-defined in mruby anyway.
2020-10-12No need to get the `irep` record size twice.Yukihiro "Matz" Matsumoto
2020-10-12Update `MRB_FLOAT_FMT` to always use double precision.Yukihiro "Matz" Matsumoto
2020-10-12Remove the length of `Float' pool from the binary dump.Yukihiro "Matz" Matsumoto
Also fixed the size calculation of `irep` dump, that could cause memory corruption.
2020-10-12Add `bintest` to `host-m32` target.Yukihiro "Matz" Matsumoto
2020-10-12Remove `DEBUG_ONLY_EXPR()` from `CHECKPOINT_*` macros; ref #5060Yukihiro "Matz" Matsumoto
To allow C++ compilation. Fix suggested by @dearblue.
2020-10-12Unify `mrb_str_to_str` to `mrb_obj_as_string`.Yukihiro "Matz" Matsumoto
Redirect `mrb_str_to_str` to `mrb_obj_as_string` via C macro. Inspired by #5082
2020-10-12Dump/load 16 bits for `ilen` and `slen` in `irep`.Yukihiro "Matz" Matsumoto
Those types are `uint16_t` in definition. Also we no longer need padding for `iseq`.
2020-10-12Clarify the meaning of `MRB_IREP_STATIC`; ref #5084Yukihiro "Matz" Matsumoto
2020-10-12Remove duplicated constant `IREP_TT_SFLAG`; #5084Yukihiro "Matz" Matsumoto
2020-10-12Use Markdown section marker `#`; ref #5084 [ci skip]Yukihiro "Matz" Matsumoto
The fix was proposed by @dearblue
2020-10-12Add `const` modifier to `table` in `mrb_kwargs`; #5084Yukihiro "Matz" Matsumoto
The fix was proposed by @dearblue
2020-10-12Should use `PRId32` to dump `.i32`; ref #5084Yukihiro "Matz" Matsumoto
The fix was proposed by @dearblue