| Age | Commit message (Collapse) | Author |
|
`mruby 2.0.1 (2019-4-4)`
|
|
The addresses for packed inline symbols reference `mrb->symbuf` that
could be overridden by the later call of `mrb_sym2name_len`. Since
file names in call stack information are kept as symbols, keeping the
address in the C structures could cause problems like #4342.
This changes small incompatible changes in function prototypes:
* `mrb_parser_get_filename`: return value changed to `mrb_sym`.
* `mrb_debug_get_filename`: add `mrb_state*` as a first argument.
* `mrb_debug_get_line`: ditto.
I believe above functions are almost internal, and no third-party
mrbgem use them.
|
|
Fix warning: '*' interpreted as argument prefix
|
|
|
|
Add `pass` and `flunk` to `test/assert.rb`
|
|
|
|
Fix missing assertions in `mruby-math` test
|
|
fixes build on OpenBSD.
|
|
fixes build on OpenBSD.
|
|
|
|
|
|
|
|
|
|
shuujii/use-mrb_sym2str-in-implementation-of-symbol-to_s
Use `mrb_sym2str` in implementation of `Symbol#to_s`
|
|
|
|
* rename `sym2name` to `sym2name_len`.
* `MRB_API` -> `static`
|
|
Remove unused variable in `each_backtrace()`
|
|
|
|
For short symbols with alpha numeric characters, `mrb_sym2name_len()`
returns the same buffer `mrb->symbuf`. Some occasion, we forget the fact
that the second call could overwrite the result of first call of the
function.
We have prepared the static function `sym2name()` which specifies the
buffer region for inline packed symbols and use the function in
`mrb_sym_to_s`.
|
|
|
|
shuujii/fix-dealing-with-infinity-and-NaN-in-assert_float
Fix dealing with infinity and NaN in `test/assert.rb:assert_float`
|
|
`assert_float` is always passed when expected value and/or actual value are
infinity or NaN. This behavior seems unintentional.
Before this patch:
assert_float(Float::INFINITY, 1.0) #=> pass
assert_float(-Float::INFINITY, 1) #=> pass
assert_float(1, 1/0) #=> pass
assert_float(1, -1/0) #=> pass
assert_float(1.0, Float::NAN) #=> pass
assert_float(Float::NAN, 1) #=> pass
After this patch:
assert_float(Float::INFINITY, 1.0) #=> fail: Expected 1.0 to be Infinity.
assert_float(-Float::INFINITY, 1) #=> fail: Expected 1 to be -Infinity.
assert_float(1, 1/0) #=> fail: Expected Infinity to be 1.
assert_float(1, -1/0) #=> fail: Expected -Infinity to be 1.
assert_float(1.0, Float::NAN) #=> fail: Expected NaN to be 1.0.
assert_float(Float::NAN, 1) #=> fail: Expected 1 to be NaN.
|
|
Functions to add prototypes to headers:
* mrb_ary_splice()
* mrb_notimplement()
* mrb_vformat()
* mrb_cstr_to_dbl()
* mrb_cstr_to_inum()
Functions to be made `static` (`MRB_API` was not needed):
* mrb_mod_module_function()
* mrb_obj_hash()
* mrb_str_len_to_inum()
Functions to remove `MRB_API` from definitions (referenced from within `libmruby`):
* mrb_mod_cv_defined()
* mrb_mod_cv_get()
* mrb_f_send()
|
|
|
|
Remove implementation of `Symbol#===`
|
|
For reducing program size.
|
|
|
|
|
|
|
|
Fix arguments spec in `src/proc.c`
|
|
Refactor `t_print` for test
|
|
|
|
|
|
Simplify `assert_step` in `test/t/numeric.rb`
|
|
|
|
shuujii/remove-redundant-content-in-assertion-failure-message-and-diff
Remove redundant content in assertion failure message and diff
|
|
Fix `Float#eql?`
|
|
|
|
Based on minitest RubyGem.
Example of before this patch:
- Assertion[1] Failed: Expected 1 to be 2
Expected: 2
Actual: 1
- Assertion[2] Failed: Expected [1, 3] to include 2
Collection: [1, 3]
Object: 2
Example of after this patch:
- Assertion[1]
Expected: 2
Actual: 1
- Assertion[2]
Expected [1, 3] to include 2.
|
|
shuujii/use-FrozenError-instead-of-RuntimeError-in-frozen-obj-mod-test
Use `FrozenError` instead of `RuntimeError` in frozen object modification test
|
|
Use Rake instead of MiniRake on AppVeyor
|
|
|
|
1. Reduce build time
Build time becomes less than half. In MiniRake, a way of using fiber may not be good.
2. Synchronize standard output
No synchronized:
mrbtest - Embeddable Ruby Test
...........................
Total: 1165
(snip)
Time: 1.19 seconds
bintest - Command Binary Test
.....................
Total: 21
(snip)
Time: 0.39 seconds
mrbtest - Embeddable Ruby Test
...........................
Total: 1165
(snip)
Skip: 23
Time: 1.15 seconds
(snip)
>>> Test cxx_abi <<<
>>> Bintest host <<<
>>> Test host <<<
>>> Test full-debug <<<
>>> Bintest cxx_abi <<<
Synchronized:
>>> Test full-debug <<<
mrbtest - Embeddable Ruby Test
...........................
Total: 1165
(snip)
Time: 1.25 seconds
>>> Test host <<<
mrbtest - Embeddable Ruby Test
...........................
Total: 1165
(snip)
Time: 1.16 seconds
>>> Bintest host <<<
bintest - Command Binary Test
.....................
Total: 21
(snip)
Time: 0.41 seconds
>>> Test cxx_abi <<<
mrbtest - Embeddable Ruby Test
(snip)
|
|
shuujii/fix-class-instance-variable-name-validation
Fix class/instance variable name validation
|
|
- `@@?` etc are invalid class variable name.
- `@1` etc are invalid instance variable name.
|
|
Refine `appveyor.yml`
|
|
- Add Visual Studio 2017.
- Enable `shallow_clone` for saving build time.
- Cache extracted WinFlexBison.
|
|
Use `FrozenError` instead of `RuntimeError` in `String#rstrip!`
|
|
|
|
Fix constant name validation
|