Yukihiro "Matz" Matsumoto
ba3541bbc4
mruby-set/set.rb (reset): add reset method defined in Ruby 2.5
2022-12-14 07:38:38 +09:00
Yukihiro "Matz" Matsumoto
ddefcea151
mruby-eval/eval.c (f_instance_eval): skip mrb_value to get singleton
...
Use mrb_singleton_class_ptr() instead of mrb_instance_class(), because
the former returns NULL, when the latter raises error for immediate
objects.
```
1.instance_eval <<END
def foo
:foo
end
END
```
2022-12-13 10:51:44 +09:00
Yukihiro "Matz" Matsumoto
3bd2c56dae
vm.c (check_target_class): raise error if target_class is NULL
...
It fixes a bug that instance_eval for immediate objects defines methods
in Object, instead of raising error.
```ruby
1.instance_eval do
def foo
p :foo
end
end
```
2022-12-13 10:49:14 +09:00
Yukihiro "Matz" Matsumoto
7ad657b532
mrb_kwargs numbers changed to mrb_int from uint32_t
...
They are unsigned but `mrb_int` is more common among mruby
implementation, e.g. length of strings and arrays.
2022-12-12 14:42:38 +09:00
Yukihiro "Matz" Matsumoto
cc8ce1b5c7
Merge pull request #5868 from boatrite/2022-12-10-path-with-spaces-fix
...
Fix cloning gem when destination path contains spaces
2022-12-12 14:42:26 +09:00
Gwendolyn Boatrite
8b728e4056
Fix cloning gem when destination path contains spaces
...
This was how clone command was previously being generated, for example:
```
git clone --recursive --branch "master" --depth 1 https://github.com/mattn/mruby-onig-regexp.git /path/to mruby with spaces/mruby-3.1.0/build/repos/wasm/mruby-onig-regexp
```
Now it's changed so the path is quoted and will work when containing
spaces:
```
git clone --recursive --branch "master" --depth 1 https://github.com/mattn/mruby-onig-regexp.git "/path/to mruby with spaces/mruby-3.1.0/build/repos/wasm/mruby-onig-regexp"
```
Similar for the other commands.
2022-12-11 17:18:29 -06:00
Yukihiro "Matz" Matsumoto
dc508eafe8
Merge pull request #5867 from dearblue/gha-ci
...
Combine gcc/clang jobs with matrix
2022-12-11 15:14:05 +09:00
dearblue
9068a157c7
Combine gcc/clang jobs with matrix
2022-12-10 23:37:52 +09:00
Yukihiro "Matz" Matsumoto
38c50b3094
mruby-struct (struct_index): avoid direct array indexing
...
Caused crash probably due to the combination of C++ UB & optimizer.
2022-12-10 08:00:31 +09:00
Yukihiro "Matz" Matsumoto
990d41f9f7
mruby-class-ext: new method attached_object introduced in Ruby3.2
2022-12-09 17:30:17 +09:00
Yukihiro "Matz" Matsumoto
6fecea1a7d
AUTHORS: update entries [ci skip]
2022-12-09 07:38:42 +09:00
Yukihiro "Matz" Matsumoto
a7e304a51c
mruby-struct (struct_index): unify indexing access code
2022-12-08 08:01:53 +09:00
Yukihiro "Matz" Matsumoto
de0ed25fbf
mruby-struct (struct_corrupted): unify error raising code
2022-12-07 17:07:33 +09:00
Yukihiro "Matz" Matsumoto
0c1d6c5d1b
Merge pull request #5866 from jbampton/md-fix-c-code-block
...
docs: fix start of `C` code block
2022-12-07 08:01:13 +09:00
Yukihiro "Matz" Matsumoto
672495555b
mruby-data (mrb_data_init_copy): use data_corrupted() for errors
2022-12-07 07:49:19 +09:00
John Bampton
8eee3ce150
docs: fix start of C code block
2022-12-06 21:48:28 +10:00
Yukihiro "Matz" Matsumoto
38098ddf2a
class.c (prepare_singleton_class): remove unnecessary write barrier
...
Since sc (singleton class) is a newly created object so it's not needed
to call write barrier.
2022-12-06 15:45:39 +09:00
Yukihiro "Matz" Matsumoto
375d22b412
gc.c (clear_all_old): avoid calling GC twice in the function
2022-12-06 15:26:24 +09:00
Yukihiro "Matz" Matsumoto
b3c95f3851
Merge pull request #5863 from dearblue/doc/OP_CALL
...
Update semantics comment for `OP_CALL`
2022-12-06 14:20:16 +09:00
Yukihiro "Matz" Matsumoto
94b3d48df2
Merge pull request #5862 from dearblue/doc/update-opcode.md
...
Update `opcode.md` to match the latest implementation
2022-12-06 14:20:03 +09:00
Yukihiro "Matz" Matsumoto
a7232ecf8d
mruby-sprintf (mrb_str_format): fixed integer size confusion
...
Declared as int, checked as mrb_int.
2022-12-06 08:31:30 +09:00
Yukihiro "Matz" Matsumoto
4295a8c560
gc.c (final_marking_phase): mark gray objects after marking
...
If pre-allocate object is modified (e.g. singleton class added) in
certain timing, some objects may be swept even if it's alive.
The problem was reported by Denis Kasak via private communication.
2022-12-05 22:34:15 +09:00
Yukihiro "Matz" Matsumoto
d4fb67a1a0
Merge pull request #5864 from dearblue/doc/escape-pipe
...
Escaping pipes in the code of table elements
2022-12-05 10:51:51 +09:00
Yukihiro "Matz" Matsumoto
841bf6a270
mruby-data: update a comment (there's no Data.new) [ci skip]
2022-12-05 10:49:40 +09:00
Yukihiro "Matz" Matsumoto
0d261aff6b
mruby-data: freeze Data object after initialize
2022-12-04 22:45:36 +09:00
Yukihiro "Matz" Matsumoto
9992de5a4f
Rename MRB_TT_DATA to MRB_TT_CDATA
...
`TT_DATA` is too confusing with `Data` objects (which is immutable
Struct like objects introduced in Ruby 3.2).
2022-12-04 22:45:36 +09:00
Yukihiro "Matz" Matsumoto
0ef4796dfb
mruby-data: improve comment description
2022-12-04 22:45:35 +09:00
Yukihiro "Matz" Matsumoto
951caa8f42
mruby-data: rename some internal functions and a macro
2022-12-04 22:45:35 +09:00
Yukihiro "Matz" Matsumoto
25faa74d23
array.c (mrb_ary_unshift_m): small refactoring
...
Unify size error by `ary_too_big()` function.
2022-12-04 22:45:35 +09:00
Yukihiro "Matz" Matsumoto
6d8e025901
Merge pull request #5865 from dearblue/errno-to-stdlib-io
...
Move `mruby-errno` to `stdlib-io.gembox`
2022-12-04 22:45:24 +09:00
dearblue
392033fb6b
Move mruby-errno to stdlib-io.gembox
...
This is because GEMs that use errno are currently limited to `mruby-io` and `mruby-socket`.
2022-12-04 18:33:12 +09:00
Yukihiro "Matz" Matsumoto
5deb8c7894
Merge pull request #5861 from dearblue/doc/addfiles.2
...
Additional document files for doxygen
2022-12-03 15:27:04 +09:00
dearblue
32d48a5f0e
Escaping pipes in the code of table elements
...
ref. https://github.github.com/gfm/#example-200
2022-12-03 14:40:30 +09:00
dearblue
478fd615af
Update semantics comment for OP_CALL
2022-12-03 14:26:05 +09:00
dearblue
13d8804d88
Update opcode.md to match the latest implementation
2022-12-03 13:59:35 +09:00
dearblue
4bd3e0e20b
Additional document files for doxygen
...
Complements #5802 .
2022-12-03 13:37:32 +09:00
Yukihiro "Matz" Matsumoto
5f3aed7413
mruby-data (mrb_data_new): Data#new to accept keyword arguments
2022-12-01 15:38:06 +09:00
Yukihiro "Matz" Matsumoto
a40fdfde5c
mruby-data: cosmetic changes regarding for loop variables
2022-11-30 21:51:52 +09:00
Yukihiro "Matz" Matsumoto
c7f1195ccb
mruby-random: fix size of kw symbol arrays
2022-11-30 21:50:08 +09:00
Yukihiro "Matz" Matsumoto
138adbe282
mruby-data (mrb_data_initialize): update argument error conditions
...
- raise ArgumentError if arguments size differs from data size.
Previously it accepted smaller argument size.
- the message is updated to "wrong number of arguments". It's not
"struct" any longer.
2022-11-30 21:47:31 +09:00
Yukihiro "Matz" Matsumoto
fce2c5131f
mruby-data: new gem for Data class introduced in Ruby 3.2
2022-11-29 15:58:05 +09:00
Yukihiro "Matz" Matsumoto
3fa029b079
mruby-io (mrb_fd_cloexec): instead of assertion call mrb_sys_fail()
...
Should provide system call failure information to the user.
2022-11-29 08:16:22 +09:00
Yukihiro "Matz" Matsumoto
551d603d9c
mruby-sprintf: remove unnecessary format specifier
2022-11-26 23:22:50 +09:00
Yukihiro "Matz" Matsumoto
16ed467266
mruby-struct: avoid using mrb_bug(); ref #5852
...
Use mrb_assert() instead.
2022-11-25 16:17:29 +09:00
Yukihiro "Matz" Matsumoto
855e63e17c
parse.y: avoid using mrb_bug(); ref #5852
2022-11-25 16:17:29 +09:00
Yukihiro "Matz" Matsumoto
eb988c9025
cdump.c (cdump_pool): simplify IREP_TT_FLOAT dump.
2022-11-25 16:17:29 +09:00
Yukihiro "Matz" Matsumoto
c39ee489e1
Remove non formatting fprintf().
2022-11-25 16:17:29 +09:00
Yukihiro "Matz" Matsumoto
260c2b60df
Merge pull request #5859 from dearblue/rake/opcode.md
...
Add task `rake doc:update-opcode.md`
2022-11-23 18:00:52 +09:00
Yukihiro "Matz" Matsumoto
ffb6b2243b
Merge pull request #5858 from dearblue/mrb_print_backtrace
...
Print errors by calling `mrb_print_backtrace()` without backtrace
2022-11-21 08:37:01 +09:00
dearblue
5e62990748
Add task rake doc:update-opcode.md
...
Allow to update `doc/internal/opcode.md` file mechanically from `include/mruby/ops.h` file.
At the same time, the `doc/internal/opcode.md` file has been updated.
Consecutive hyphens at the end of the table were removed as they would have created noise as markdown flavours.
2022-11-20 21:58:13 +09:00