Commit Graph

15212 Commits

Author SHA1 Message Date
Yukihiro "Matz" Matsumoto 8a3d52f494 mruby-pack/pack.c (read_tmpl): rename PACK_DIR_INVALID
The value is used for spaces and comments, so the term "skip" is more
appropriate than "invalid".
2023-07-24 18:03:38 +09:00
Yukihiro "Matz" Matsumoto e17f3256c6 mruby-pack/pack.c (read_tmpl): support comments in derectives 2023-07-24 18:03:38 +09:00
Yukihiro "Matz" Matsumoto 5d0016186f numeric.c (mrb_float_to_str): avoid memcpy() 2023-07-24 18:03:38 +09:00
Yukihiro "Matz" Matsumoto 0eceadd037 mruby-pack/test/pack.rb: test B/b directives 2023-07-24 18:03:38 +09:00
Yukihiro "Matz" Matsumoto e7021f190a mruby-pack/pack.c (pack_bstr): support B/b directives 2023-07-24 18:03:38 +09:00
Yukihiro "Matz" Matsumoto 05549410d9 mruby-pack/pack.c (read_tmpl): check unknown directives 2023-07-24 18:03:38 +09:00
Yukihiro "Matz" Matsumoto 2a1e3a572c mruby-pack/pack.c (read_tmpl): support J/j template in pack
J/j is available since Ruby 2.3.
2023-07-24 18:03:37 +09:00
Yukihiro "Matz" Matsumoto 663f936ba8 Merge pull request #6030 from jbampton/standardize-dots
Standardize docs to use 3 dots: `...`
2023-07-24 08:21:16 +09:00
Yukihiro "Matz" Matsumoto 0876cf82ff Merge pull request #6028 from jbampton/fix-super-linter-button
Fix Super-Linter button in README
2023-07-24 08:20:06 +09:00
John Bampton 14b4f5953b Standardize docs to use 3 dots: ... 2023-07-23 03:39:03 +10:00
Yukihiro "Matz" Matsumoto 455a5689f3 lib/mruby/build/command.rb: skip mrbgems in parent directory; fix #6029
If `mrbgems` is included in the parent directory path (MRUBY_ROOT), it
confuses gem path and build path.
2023-07-17 13:24:47 +09:00
Yukihiro "Matz" Matsumoto f84f129d65 AUTHORS: update entries [ci skip] 2023-07-17 12:18:10 +09:00
Yukihiro "Matz" Matsumoto 5e7d763e91 variable.c (mrb_obj_iv_set_force): check namespace_p beforehand
To reduce number of assign_class_name() invocation.
2023-07-17 12:09:28 +09:00
John Bampton 95fbacb1dc Fix Super-Linter button in README
Updated the button to the latest format seen here:

https://github.com/marketplace/actions/super-linter#add-super-linter-badge-in-your-repository-readme
2023-07-15 20:49:58 +10:00
Yukihiro "Matz" Matsumoto 82a48bd455 error.c (mrb_bug): avoid formatting in mrb_bug()
Since mrb_bug() would be called under the abnormal situation (and should
not be called if possible), the process should be minimal.
2023-07-14 21:48:11 +09:00
Yukihiro "Matz" Matsumoto d6d434eb3f Inline loop variables everywhere 2023-07-13 08:05:00 +09:00
Yukihiro "Matz" Matsumoto d4a03be96b mruby-string-ext/string.c (str_casecmp): small refactoring 2023-07-12 09:14:45 +09:00
Yukihiro "Matz" Matsumoto 2af0ff52e9 backtrace.c (count_backtrace_i): remove empty callback
Instead specifying NULL as function argument of each_backtrace()
count the number of callbacks.
2023-07-11 07:17:19 +09:00
Yukihiro "Matz" Matsumoto 6f99806d5b backtrace.c (packed_backtrace): remove count_backtrace()
Since we have stop calling mrb_debug_get_position() in each_backtrace(),
we don't need to craft special function count_backtrace(). We just use
each_backtrace() to count the number of backtraces.
2023-07-11 06:59:09 +09:00
Yukihiro "Matz" Matsumoto 316119069d backtrace.c (each_backtrace): skip callinfo without debug_info 2023-07-10 07:57:02 +09:00
Yukihiro "Matz" Matsumoto 7aa914b4d4 cdump.c (cdump_debug): restore arena index at the end of the function 2023-07-10 07:26:19 +09:00
Yukihiro "Matz" Matsumoto c57610ad8a backtrace.c (packed_backtrace): fix broken ciidx
- fix at higher level to remove redundancy
- ciidx should always be smaller than ci stack length
2023-07-10 07:05:27 +09:00
Yukihiro "Matz" Matsumoto 9c61c66045 gc.c (mrb_obj_alloc): clarify the heap initialization 2023-07-09 22:59:58 +09:00
Yukihiro "Matz" Matsumoto eebbc6eaa4 gc.c (mrb_obj_alloc): gc->heaps may be NULL 2023-07-07 06:53:19 +09:00
Yukihiro "Matz" Matsumoto af85b1fbed gc.c (gc_mark_gray_list): cut gcnext link 2023-07-06 22:57:14 +09:00
Yukihiro "Matz" Matsumoto aa5ffb686f mruby-os-memsize: more precise memory size for method tables 2023-07-06 16:12:51 +09:00
Yukihiro "Matz" Matsumoto 0a4473bf64 mruby-socket/socket.c: fix indentation 2023-07-04 17:50:37 +09:00
Yukihiro "Matz" Matsumoto 0558b1abd8 backtrace.c: reorder functions for clarity 2023-07-03 15:26:45 +09:00
Yukihiro "Matz" Matsumoto 97b60e7fb1 backtrace.c (backtrace_location): defer retrieving positions
Instead of calling `mrb_debug_get_position` in the `each_backtrace`, we
just keep `irep` and `idx` information in the backtrace_location, and
get the exact position in `mrb_unpack_backtrace` which may not be called
if exceptions are handled in the `rescue` clauses.
2023-07-03 15:21:16 +09:00
Yukihiro "Matz" Matsumoto 40bdd65ce6 backtrace.c (each_backtrace): return number of traces iterated 2023-07-03 15:20:24 +09:00
Yukihiro "Matz" Matsumoto 70b49eaef2 debug.c (debug_get_line): remove obsolete debug line types
- mrb_debug_line_ary
- mrb_debug_line_flat_map

Those two are no longer used, so we can safely remove the support.
2023-07-03 15:16:29 +09:00
Yukihiro "Matz" Matsumoto ea649e70b8 mruby-pack/pack.c (mrb_pack_pack): use direct array buffer access
We don't need index wrap-around not boundary check here, so we can use
faster direct array access.
2023-06-29 22:54:58 +09:00
Yukihiro "Matz" Matsumoto 0c4f5a4093 backtrace.c (mrb_unpack_backtrace): make the function static 2023-06-29 22:54:09 +09:00
Yukihiro "Matz" Matsumoto e563a3cb2c backtrace.c (packed_backtrace): reduce unnecessary calls
Instead of calling each_backtrace() twice, use a new function
count_backtrace().
2023-06-28 21:53:17 +09:00
Yukihiro "Matz" Matsumoto f1d6af08cf gc.c: inline heap page linkage 2023-06-27 15:48:33 +09:00
Yukihiro "Matz" Matsumoto 38b9a25e83 gc.c (mrb_obj_alloc): remove free_next,free_prev from heap pages
It used to be maintain heap pages with allocatable objects (free_heaps)
but we can save two words (16 bytes) per page by scanning live heap pages.
2023-06-27 15:48:25 +09:00
Yukihiro "Matz" Matsumoto 695ad6ea95 gc.c (incremental_sweep_phase): freed need not to be smaller than page size 2023-06-26 17:14:43 +09:00
Yukihiro "Matz" Matsumoto b2110c23a1 Merge pull request #6023 from dearblue/expose-headers
"expose_header_files" task split per build
2023-06-24 15:35:31 +09:00
Yukihiro "Matz" Matsumoto a3365d8b3f gc.c (obj_free): need not to unshare env object when freeing fibers
Since when env objects reference the context, we no longer need to
unshare (stack reallocate) env objects. Currently all env objects
referenced from fibers are already recycled, so we removed unnecessary
code altogether.
2023-06-23 23:06:15 +09:00
Yukihiro "Matz" Matsumoto fc9fffc5b5 kernel.rb (_inspect): _inspect method no longer needed 2023-06-22 23:32:31 +09:00
Yukihiro "Matz" Matsumoto 6ae6b63aaf mruby-struct: add recursive inspect check instead of _inspect hack 2023-06-22 12:53:51 +09:00
Yukihiro "Matz" Matsumoto 849963b81e variable.c (mrb_obj_iv_inspect): support recursion detection 2023-06-21 23:36:59 +09:00
Yukihiro "Matz" Matsumoto 0713f2a840 mruby-set/set.rb (inspect): add recursive inspect check to Set#inspect 2023-06-20 11:25:49 +09:00
Yukihiro "Matz" Matsumoto 113565a1c5 hash.c (mrb_hash_to_s): add recursive inspect check to Hash#inspect 2023-06-20 11:18:38 +09:00
Yukihiro "Matz" Matsumoto 5cb0c7463b array.c (mrb_ary_to_s): add recursive check to Array#inspect 2023-06-20 07:06:33 +09:00
Yukihiro "Matz" Matsumoto e2bbf75d58 kernel.c: prepare for new recursive inspect check
Like previous recursive `<=>` check, scan call stack to detect recursive
`inspect` calls. We no longer need incomplete `_inspect` hack to pass
around a hash table to record objects currently inspecting.
2023-06-20 07:04:28 +09:00
Yukihiro "Matz" Matsumoto 75c8ffddf5 object.c (mrb_equal) move mrb_equal() back to object.c 2023-06-20 06:45:05 +09:00
Yukihiro "Matz" Matsumoto 89a1719a13 compar.rb: use equal?() instead of ==
To avoid unnecessary infinite recursion.
2023-06-19 15:33:13 +09:00
dearblue fdec32a8f2 "expose_header_files" task split per build
If there are multiple build targets, it should be preferable to have the task processed at each of them.
2023-06-18 21:22:31 +09:00
Yukihiro "Matz" Matsumoto 7f85ae2c48 Merge pull request #6022 from chasonr/msdos-build
Build configuration for MS-DOS and DJGPP
2023-06-18 18:13:24 +09:00