summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-09-05Add check for T_NONE in rb_gc_mark_weakPeter Zhu
This commit adds a check for T_NONE in rb_gc_mark_weak, just like gc_mark_ptr. This will help debugging.
2023-09-05[DOC] Fix up markupNobuyoshi Nakada
2023-09-05[DOC] Fix signal listNobuyoshi Nakada
- Signal names can be symbols, as stated above. - Supported signals and those values are platform dependent. - Key sequences to send signal are configurable. - Fix description of signal 0. Co-authored-by: Peter Zhu <peter@peterzhu.ca> Notes: Merged: https://github.com/ruby/ruby/pull/8367 Merged-By: nobu <nobu@ruby-lang.org>
2023-09-05Prevent "ambiguous first argument" warningsYusuke Endoh
``` /home/chkbuild/chkbuild/tmp/build/20230905T063003Z/ruby/test/yarp/compiler_test.rb:16: warning: ambiguous first argument; put parentheses or a space even after `+' operator /home/chkbuild/chkbuild/tmp/build/20230905T063003Z/ruby/test/yarp/compiler_test.rb:17: warning: ambiguous first argument; put parentheses or a space even after `-' operator /home/chkbuild/chkbuild/tmp/build/20230905T063003Z/ruby/test/yarp/compiler_test.rb:28: warning: ambiguous first argument; put parentheses or a space even after `+' operator /home/chkbuild/chkbuild/tmp/build/20230905T063003Z/ruby/test/yarp/compiler_test.rb:29: warning: ambiguous first argument; put parentheses or a space even after `-' operator ``` http://rubyci.s3.amazonaws.com/debian10/ruby-master/log/20230905T063003Z.log.html.gz
2023-09-05Prevent a warning: method redefined; discarding old includedYusuke Endoh
``` [ 3463/25719] JSONGeneratorTest#test_string_ext_included_calls_super/home/chkbuild/chkbuild/tmp/build/20230905T063003Z/ruby/test/json/json_generator_test.rb:411: warning: method redefined; discarding old included /home/chkbuild/chkbuild/tmp/build/20230905T063003Z/ruby/test/json/json_generator_test.rb:399: warning: previous definition of included was here ``` http://rubyci.s3.amazonaws.com/debian10/ruby-master/log/20230905T063003Z.log.html.gz
2023-09-05[flori/json] Removed code for Ruby 1.8Hiroshi SHIBATA
https://github.com/flori/json/commit/7f9c29038d
2023-09-05Pattern matching has not been experimentalyui-knk
Notes: Merged: https://github.com/ruby/ruby/pull/8360
2023-09-04[DOC] RDoc for process.c (#8366)Burdette Lamar
Notes: Merged-By: peterzhu2118 <peter@peterzhu.ca>
2023-09-05[ruby/rdoc] Remove code for versions older than Ruby 2.6Nobuyoshi Nakada
https://github.com/ruby/rdoc/commit/0d10f460eb
2023-09-05[ruby/rdoc] Remove code for versions older than Ruby 2.3Nobuyoshi Nakada
https://github.com/ruby/rdoc/commit/a61b777df0
2023-09-05[ruby/rdoc] Omit descriptions and parameter lists for methods defined in C ↵Jeremy Evans
not mentioned in call-seq This allows RDoc to better generate documentation for methods following the Ruby core documentation guide (which omits aliases in call-seq in most cases). This makes documentation for methods defined in C more similar to methods defined in Ruby. For methods defined in Ruby, the method description of the aliased method is already not used (you have to explicitly document the alias to use it). Internally, this adds AnyMethod#has_call_seq? and #skip_description?, and updates Darkfish to: * only show the method name if there is a call-seq for the method, but the call-seq omits the method * to omit the method description if the method is an alias or has aliases and has a call-seq that does not include the method See discussion in https://github.com/ruby/ruby/pull/7316 for details. https://github.com/ruby/rdoc/commit/e3688de49b
2023-09-05[ruby/rdoc] handle symbols declared with `%s`theo-squadracer
https://github.com/ruby/rdoc/commit/ed91c4b784
2023-09-04Add debug info for flaky test_warmup_frees_pagesPeter Zhu
This test sometimes fails with: ``` 1) Failure: TestProcess#test_warmup_frees_pages [test/ruby/test_process.rb:2751]: <0> expected but was <1>. ``` I'm not sure why, so add some debug info.
2023-09-04Update to ruby/spec@96d1072Benoit Daloze
2023-09-04Update to ruby/mspec@55d1a62Benoit Daloze
2023-09-04Revert "Don't reset line coverage for evaled code. (#8330)"Yusuke Endoh
This reverts commit 7e0f5df2f99693267d61636d23da47f79924e9d5. https://bugs.ruby-lang.org/issues/19857#note-7
2023-09-04Keep write-barrier status after splicing arrayPeter Zhu
We don't need to remove the write-barrier protected status after splicing an array. We can simply add it to the rememberset for marking during the next GC. The benchmark illustrates the performance impact on minor GC: ``` require "benchmark" arys = 1_000_000.times.map do ary = Array.new(50) ary.insert(1, 3) ary end 4.times { GC.start } puts(Benchmark.measure do 1000.times do GC.start(full_mark: false) end end) ``` This branch: ``` 1.309910 0.004342 1.314252 ( 1.314580) ``` Master branch: ``` 54.376091 0.219037 54.595128 ( 54.742996) ``` Notes: Merged: https://github.com/ruby/ruby/pull/8350
2023-09-04[Bug #18487] [DOC] Remove stale note in `set_trace_func` documentNobuyoshi Nakada
`c-call` and `c-return events no longer pass the nearest Ruby method binding. Notes: Merged: https://github.com/ruby/ruby/pull/8364
2023-09-04[DOC] Update `set_trace_func` documentNobuyoshi Nakada
- Clarify the class of event parameters - Represent event names as strings - Update the example to show the above Notes: Merged: https://github.com/ruby/ruby/pull/8364
2023-09-04[DOC] Fix indent of `set_trace_func` documentNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/8364
2023-09-04Don't reset line coverage for evaled code. (#8330)Samuel Williams
* Add failing test. Notes: Merged-By: ioquatix <samuel@codeotaku.com>
2023-09-03[DOC] Process doc (#8363)Burdette Lamar
Notes: Merged-By: peterzhu2118 <peter@peterzhu.ca>
2023-09-02[DOC] RDoc for process.cBurdetteLamar
Notes: Merged: https://github.com/ruby/ruby/pull/8361
2023-09-03[DOC] Fix layout in documentation of IO#fcntlHerwin
Notes: Merged: https://github.com/ruby/ruby/pull/8359 Merged-By: nobu <nobu@ruby-lang.org>
2023-09-03[DOC] Typo in Hash#key description "so/no such value"Dorian Marié (perso)
Notes: Merged: https://github.com/ruby/ruby/pull/8357 Merged-By: nobu <nobu@ruby-lang.org>
2023-09-03[DOC] FIx typo in description of Hash#hash (regardless or/of order)Dorian Marié (perso)
Notes: Merged: https://github.com/ruby/ruby/pull/8356 Merged-By: nobu <nobu@ruby-lang.org>
2023-09-02[DOC] RDoc for process.c (#8358)Burdette Lamar
Notes: Merged-By: peterzhu2118 <peter@peterzhu.ca>
2023-09-02[ruby/yarp] Fix up template reading with LANG=CKevin Newton
https://github.com/ruby/yarp/commit/1ce1817e84
2023-09-02[DOC] RDoc for process.c (#8353)Burdette Lamar
Notes: Merged-By: peterzhu2118 <peter@peterzhu.ca>
2023-09-01[ruby/yarp] Try ignoring $LANGTakashi Kokubun
because the previous commit did not fix it. https://github.com/ruby/ruby/actions/runs/6054915979/job/16433070185#step:9:155 https://github.com/ruby/yarp/commit/8c9e4c1f15
2023-09-01[ruby/yarp] Support LANG=C environments in template.rbTakashi Kokubun
https://github.com/ruby/yarp/commit/885d731cf5
2023-09-01Use end of char boundary in start_with?John Hawthorn
Previously we used the next character following the found prefix to determine if the match ended on a broken character. This had caused surprising behaviour when a valid character was followed by a UTF-8 continuation byte. This commit changes the behaviour to instead look for the end of the last character in the prefix. [Bug #19784] Co-authored-by: ywenc <ywenc@github.com> Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/8348
2023-09-01Add regression tests for start_with?/delete_prefixywenc
Notes: Merged: https://github.com/ruby/ruby/pull/8348
2023-09-01[ruby/yarp] Provide a better inspectKevin Newton
https://github.com/ruby/yarp/commit/ef14ae66e4
2023-09-01sync_default_gems.rb: Deal with conflicts on ignored filesTakashi Kokubun
that do not exist in the ruby/ruby side. This resurrects a line that had existed prior to #8329.
2023-09-01[ruby/yarp] Add global variables to the constant poolKevin Newton
https://github.com/ruby/yarp/commit/b48067b067
2023-09-01Try to fix flaky test for Process.warmupPeter Zhu
The test sometimes fails with: ``` 1) Failure: TestProcess#test_warmup_frees_pages [test/ruby/test_process.rb:2749]: <0> expected but was <1>. ``` I think there's a page with an object that needs finalization, so run GC to clear that object.
2023-09-01[YARP] Implement Compiling for And / Or / Operator Write Nodes (#8352)Jemma Issroff
Notes: Merged-By: jemmaissroff
2023-09-01[ruby/yarp] Update src/util/yp_string_list.c styleKevin Newton
https://github.com/ruby/yarp/commit/e4af2b3bc2
2023-09-01[ruby/yarp] Update src/util/yp_newline_list.c styleKevin Newton
https://github.com/ruby/yarp/commit/bd7fc2c946
2023-09-01[ruby/yarp] remove reallocs preparing for custom memory managementHParker
https://github.com/ruby/yarp/commit/bd0b421504
2023-09-01Update default gems list at 1c622a6b5818a92ba664c3d8292cf0 [ci skip]git
2023-09-01[ruby/yarp] Bump to v0.10.0Kevin Newton
https://github.com/ruby/yarp/commit/b6164a76d9
2023-09-01Fix flaky test for Process.warmupPeter Zhu
The test sometimes fails with: ``` 1) Failure: TestProcess#test_warmup_run_major_gc_and_compact [test/ruby/test_process.rb:2712]: <2> expected but was <3>. ```
2023-09-01[YARP] Implement BackReferenceReadNode, NumberedReferenceReadNode (#8344)Jemma Issroff
Notes: Merged-By: jemmaissroff
2023-09-01[ruby/yarp] Print information about type, flags on AST templatedJemma Issroff
code (https://github.com/ruby/yarp/pull/1380) This commit adds the node type and the node flags as comments to the AST templated code. https://github.com/ruby/yarp/commit/f603f2037c
2023-09-01[ruby/yarp] fix: report syntax error for invalid hex escapeMike Dalessio
Closes https://github.com/ruby/yarp/pull/1367 https://github.com/ruby/yarp/commit/b1ab54f526
2023-09-01[ruby/yarp] fix: double-counting of errors in parsing escaped stringsMike Dalessio
Essentially, this change updates `yp_unescape_calculate_difference` to not create syntax errors, and we rely entirely on `yp_unescape_manipulate_string` to report syntax errors. To do that, this PR adds another (!) parameter to `unescape`: `yp_list_t *error_list`. When present, `unescape` reports syntax errors (and otherwise does not). However, an edge case that needed to be addressed is reporting syntax errors in this case: ?\u{1234 2345} In a string context, it's possible to have multiple codepoints by doing something like `"\u{1234 2345}"`; however, in the character literal context, this is a syntax error -- only a single codepoint is allowed. Unfortunately, when `yp_unescape_manipulate_string` is called, there's nothing to indicate that we are in a "character literal" context and that only a single codepoint is valid. To make this work, this PR: - introduces a new static utility function in yarp.c, `yp_char_literal_node_create_and_unescape`, which is called when we're parsing `YP_TOKEN_CHARACTER_LITERAL` - introduces a new (unexported) function, `yp_unescape_manipulate_char_literal` which does the same thing as `yp_unescape_manipulate_string` but tells `unescape` that only a single codepoint is expected https://github.com/ruby/yarp/commit/f6a65840b5
2023-09-01Incrementally mark even if we have free pagesPeter Zhu
We move all pooled pages to free pages at the start of incremental marking, so we shouldn't run incremental marking only when we have run out of free pages. This causes incremental marking to always complete in a single step. Notes: Merged: https://github.com/ruby/ruby/pull/8230
2023-09-01Fix YARP compiled send for popping (#8345)Jemma Issroff
Prior to this commit, we were incorrectly popping callers and receivers on CallNodes. We shouldn't pop any of these as they might have side effects. Notes: Merged-By: jemmaissroff