summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-03-30Fix locations of the second argumentNobuyoshi Nakada
2022-03-30[ruby/psych] Configure libyaml from the original sourceNobuyoshi Nakada
https://github.com/ruby/psych/commit/54a9ba9d10
2022-03-30[DOC] Use simple references to operator methodsNobuyoshi Nakada
Method references is not only able to be marked up as code, also reflects `--show-hash` option. The bug that prevented the old rdoc from correctly parsing these methods was fixed last month.
2022-03-29Update NEWS for TracePoint#enable target_thread default changeJeremy Evans
2022-03-29Fix commentJeremy Evans
Notes: Merged: https://github.com/ruby/ruby/pull/5359
2022-03-29Fix spec descriptionJeremy Evans
Co-authored-by: Benoit Daloze <eregontp@gmail.com> Notes: Merged: https://github.com/ruby/ruby/pull/5359
2022-03-29Update comment for TracePoint#enableJeremy Evans
Co-authored-by: Benoit Daloze <eregontp@gmail.com> Notes: Merged: https://github.com/ruby/ruby/pull/5359
2022-03-29Avoid trace events in implementation of TracePoint#enableJeremy Evans
This is more backwards compatible, and should fix issues with power_assert. Unfortunately, it requires using a sentinel value as the default value of target_thread, instead of the more natural expression used in the original approach. Notes: Merged: https://github.com/ruby/ruby/pull/5359
2022-03-29Make TracePoint#enable with block target current thread by defaultJeremy Evans
If TracePoint#enable is passed a block, it previously started the trace on all threads. This changes it to trace only the current thread by default. To limit the scope of the change, the current thread is only used by default if target and target_line are both nil. You can pass target_thread: nil to enable tracing on all threads, to get the previous default behavior. Fixes [Bug #16889] Notes: Merged: https://github.com/ruby/ruby/pull/5359
2022-03-29Fix multiplex backreferencs near end of string in regexp matchJeremy Evans
Idea from Jirka Marsik. Fixes [Bug #18631] Notes: Merged: https://github.com/ruby/ruby/pull/5710
2022-03-29Make define_singleton_method always define a public methodJeremy Evans
In very unlikely cases, it could previously define a non-public method starting in Ruby 2.1. Fixes [Bug #18561] Notes: Merged: https://github.com/ruby/ruby/pull/5636
2022-03-30* 2022-03-30 [ci skip]git
2022-03-29Refactor test_dump_all to make assertions about the contents of the dumped hashJemma Issroff
Notes: Merged: https://github.com/ruby/ruby/pull/5728
2022-03-29[DOC] Enhanced RDoc for String (#5730)Burdette Lamar
Treats: #start_with? #end_with? #delete_prefix #delete_prefix! #delete_suffix #delete_suffix! Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>
2022-03-29[ruby/psych] Try bundled libyaml source if pre-installed is unavailableNobuyoshi Nakada
https://github.com/ruby/psych/commit/f78e1dba89
2022-03-29[DOC] Repair format of What's Here sections in object.c (#5722)Burdette Lamar
* Repair format of What's Here sections in object.c Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>
2022-03-29Merge psych masterHiroshi SHIBATA
https://github.com/ruby/psych/commit/c386ecb0c24eeb9693cc4ad3b1f263b2622c4f1e Notes: Merged: https://github.com/ruby/ruby/pull/5729
2022-03-28Fix Ractor.receive_if + rb_vm_barrier() deadlockAlan Wu
I have this scripts that deadlocks after about 5 minutes if I repeatedly run it with a shell loop: ```ruby $VERBOSE = nil lamb = ->(main, gc) do gc.verify_internal_consistency gc.verify_internal_consistency main << 1 gc.verify_internal_consistency gc.verify_internal_consistency main << 2 gc.verify_internal_consistency gc.verify_internal_consistency main << 3 gc.verify_internal_consistency gc.verify_internal_consistency end lamb[[], GC] lamb[[], GC] r = Ractor.new Ractor.current, GC, &lamb a = [] a << Ractor.receive_if{|msg| msg == 2} a << Ractor.receive_if{|msg| msg == 3} a << Ractor.receive_if{|msg| msg == 1} ``` Shell loop: ```shell while ./miniruby deadlock.rb; do date; done ``` Once it locks up, CTRL-C doesn't interrupt the process which led me to infer `receive_if` is looping in `ractor_receive_if()` without checking for interrupts. This can be confirmed by attaching a debugger to the deadlocked miniruby. The deadlock has one thread looping in `receive_if` and another waiting in `rb_vm_barrier()`. The barrier relies on interrupt checking to finish. Theoretically speaking the `rb_vm_barrier()` could come from one thread naturally starting GC. We found this while developing YJIT but it dead locks running with YJIT disabled. YJIT currently relies on `rb_vm_barrier()` to synchronize before changing memory protection. This diff adds an interrupt check in the loop in `Ractor#receive_if` which seems to fix the deadlock. In addition, this commit allows interrupting the following single ractor script with CTRL-C. ```shell ruby -e 'Ractor.current.send(3); Ractor.receive_if { false }' ``` Notes: Merged: https://github.com/ruby/ruby/pull/5699 Merged-By: XrXr
2022-03-28[DOC] Enhanced RDoc for String (#5726)Burdette Lamar
Treats: #ljust #rjust #center #partition #rpartition Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>
2022-03-29* 2022-03-29 [ci skip]git
2022-03-28Update to ruby/spec@aaf998fBenoit Daloze
2022-03-28Remove unneeded function declarations in gc.cPeter Zhu
2022-03-28Update zlib version to 1.2.12Nobuyoshi Nakada
2022-03-28Fix a missing commaNobuyoshi Nakada
2022-03-28Use m4 comments outside macros in m4 filesNobuyoshi Nakada
2022-03-28Extract RUBY_REQUIRE_FUNCSNobuyoshi Nakada
2022-03-28[DOC] Move the entry for [Feature #18571]Nobuyoshi Nakada
2022-03-28Fix a link [ci skip]Kazuhiro NISHIYAMA
2022-03-28Added entry of Psych changes for #18571Hiroshi SHIBATA
2022-03-28* 2022-03-28 [ci skip]git
2022-03-27[DOC] Enhanced RDoc for String (#5724)Burdette Lamar
Treats: #scan #hex #oct #crypt #ord #sum Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>
2022-03-27ext/psych/extconf.rb: Fail when libyaml is unavailableYusuke Endoh
WHen libyaml is not installed, make fails with the following cryptic message: ``` gmake[2]: Entering directory '/home/chkbuild/chkbuild-crossruby/tmp/build/20220325T045825Z/ruby/ext/psych' gmake[2]: *** No rule to make target 'yaml/yaml.h', needed by 'psych.o'. Stop. gmake[2]: Leaving directory '/home/chkbuild/chkbuild-crossruby/tmp/build/20220325T045825Z/ruby/ext/psych' ``` I think it should give up building psych with a clear message. Notes: Merged: https://github.com/ruby/ruby/pull/5713
2022-03-27[DOC] Fix references to unary operatorNobuyoshi Nakada
2022-03-27* 2022-03-27 [ci skip]git
2022-03-26Enhanced RDoc for String (#5723)Burdette Lamar
Treats: #lstrip #lstrip! #rstrip #rstrip! #strip #strip! Adds section Whitespace in Strings. Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>
2022-03-26[DOC] Use simple references to operator methodsNobuyoshi Nakada
Method references is not only able to be marked up as code, also reflects `--show-hash` option. The bug that prevented the old rdoc from correctly parsing these methods was fixed last month.
2022-03-26[ruby/psych] Added condition for macOS homebrewHiroshi SHIBATA
https://github.com/ruby/psych/commit/a876de5a82 Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net>
2022-03-25Update NEWS for {Kernel,TracePoint}#binding changeJeremy Evans
2022-03-25[DOC] Fix formatting for What's Here in IO (#5719)Burdette Lamar
* Fix formatting for What's Here in IO * Repair formatting in What's Heres in numeric.c * Fix formatting for What's Here in IO Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>
2022-03-25Fix formatting errors in What's Here for Array, Hash, ENV (#5718)Burdette Lamar
Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>
2022-03-25Fix formatting of What's Here for File (#5717)Burdette Lamar
Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>
2022-03-26* 2022-03-26 [ci skip]git
2022-03-25[DOC] Repair format and links in What's Here sections (#5711)Burdette Lamar
* Repair format and links in What's Here for Comparable and Array * Repair format for What's Here in enum.c Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>
2022-03-25Revert "Finer-grained inline constant cache invalidation"Nobuyoshi Nakada
This reverts commits for [Feature #18589]: * 8008fb7352abc6fba433b99bf20763cf0d4adb38 "Update formatting per feedback" * 8f6eaca2e19828e92ecdb28b0fe693d606a03f96 "Delete ID from constant cache table if it becomes empty on ISEQ free" * 629908586b4bead1103267652f8b96b1083573a8 "Finer-grained inline constant cache invalidation" MSWin builds on AppVeyor have been crashing since the merger. Notes: Merged: https://github.com/ruby/ruby/pull/5715 Merged-By: nobu <nobu@ruby-lang.org>
2022-03-25[ruby/readline-ext] Removed the duplicated dependenciesHiroshi SHIBATA
https://github.com/ruby/readline-ext/commit/324d324427
2022-03-25Disabled cross compile for unknown errors with psych buildHiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/5693
2022-03-25Removed libyaml object files from dependsHiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/5693
2022-03-25Try to remove yaml sources from dependHiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/5693
2022-03-25Added libyaml-dev into BASERUBY checkHiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/5693
2022-03-25Merge psych master: Removed the bundled libyamlHiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/5693