summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-03-31Return only captured range in `MatchData` [Bug #18670]Nobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/5740 Merged-By: nobu <nobu@ruby-lang.org>
2022-03-31test/date/test_date_parse.rb: relax the time limitYusuke Endoh
The timeout was very strict for weak CI machines like qemu-riscv. Due to the additional overhead for Regexp.timeout=, it started failing on such machines. http://rubyci.s3.amazonaws.com/debian-riscv64/ruby-master/log/20220330T200018Z.fail.html.gz ``` 1) Error: TestDateParse#test__parse_too_long_year: Timeout::Error: execution expired ```
2022-03-31[ruby/psych] Remove `unknown` vendor for cross-compiling tool prefixNobuyoshi Nakada
https://github.com/ruby/psych/commit/a4ffa06646
2022-03-31Remove CI configuration files from extracted bundled gemsNobuyoshi Nakada
2022-03-31Remove github and git related files from extracted bundled gemsNobuyoshi Nakada
2022-03-31re.c: stop a wrong warning of "flags ignored" on Regexp.new(//)Yusuke Endoh
[Bug #18669]
2022-03-31[DOC] Fix ghcr linkS-H-GAMELINKS
Notes: Merged: https://github.com/ruby/ruby/pull/5734
2022-03-30[Bug #18667] Define RUBY_API_VERSION on WindowsPeter Zhu
On other platforms, RUBY_SO_NAME is defined from RUBY_API_VERSION. ruby_version contains the ABI version, which is not needed. RUBY_API_VERSION is defined as MAJOR.MINOR. Notes: Merged: https://github.com/ruby/ruby/pull/5736
2022-03-30Repair format for What's Here in Dir (#5737)Burdette Lamar
Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>
2022-03-30Repaired What's Here sections for Range, String, Symbol, Struct (#5735)Burdette Lamar
Repaired What's Here sections for Range, String, Symbol, Struct. Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>
2022-03-30Update NEWS for proc autosplat changeJeremy Evans
2022-03-31* 2022-03-31 [ci skip]git
2022-03-30Do not autosplat array in block call just because keywords acceptedJeremy Evans
If the block only accepts a single positional argument plus keywords, then do not autosplat. Still autosplat if the block accepts more than one positional argument in addition to keywords. Autosplatting a single positional argument plus keywords made sense in Ruby 2, since a final positional hash could be used as keywords, but it does not make sense in Ruby 3. Fixes [Bug #18633] Notes: Merged: https://github.com/ruby/ruby/pull/5665 Merged-By: jeremyevans <code@jeremyevans.net>
2022-03-30[ruby/psych] Propagate the host configuration to libyamlNobuyoshi Nakada
https://github.com/ruby/psych/commit/0e37e19707
2022-03-30Decouple incremental marking step from page sizesPeter Zhu
Currently, the number of incremental marking steps is calculated based on the number of pooled pages available. This means that if we make Ruby heap pages larger, it would run fewer incremental marking steps (which would mean each incremental marking step takes longer). This commit changes incremental marking to run after every INCREMENTAL_MARK_STEP_ALLOCATIONS number of allocations. This means that the behaviour of incremental marking remains the same regardless of the Ruby heap page size. I've benchmarked against discourse benchmarks and did not get a significant change in response times beyond the margin of error. This is expected as this new incremental marking algorithm behaves very similarly to the previous one. Notes: Merged: https://github.com/ruby/ruby/pull/5732
2022-03-30Update dependenciesYusuke Endoh
Notes: Merged: https://github.com/ruby/ruby/pull/5703
2022-03-30internal/ractor.h: AddedYusuke Endoh
Currently it has only one function prototype. Notes: Merged: https://github.com/ruby/ruby/pull/5703
2022-03-30re.c: raise Regexp::TimeoutError instead of RuntimeErrorYusuke Endoh
Notes: Merged: https://github.com/ruby/ruby/pull/5703
2022-03-30doc/regexp.rdoc: Add explanation about Regexp timeout configurationYusuke Endoh
Notes: Merged: https://github.com/ruby/ruby/pull/5703
2022-03-30re.c: Add `timeout` keyword for Regexp.new and Regexp#timeoutYusuke Endoh
Notes: Merged: https://github.com/ruby/ruby/pull/5703
2022-03-30re.c: Add Regexp.timeout= and Regexp.timeoutYusuke Endoh
[Feature #17837] Notes: Merged: https://github.com/ruby/ruby/pull/5703
2022-03-30ractor.c: Add a helper function to ensure the context is a main ractorYusuke Endoh
Notes: Merged: https://github.com/ruby/ruby/pull/5703
2022-03-30thread.c: Move double2hrtime and hrtime2double to hrtime.hYusuke Endoh
... to make them available in other places than thread.c Notes: Merged: https://github.com/ruby/ruby/pull/5703
2022-03-30Prefix ccan headers (#4568)Nobuyoshi Nakada
* Prefixed ccan headers * Remove unprefixed names in ccan/build_assert * Remove unprefixed names in ccan/check_type * Remove unprefixed names in ccan/container_of * Remove unprefixed names in ccan/list Co-authored-by: Samuel Williams <samuel.williams@oriontransfer.co.nz> Notes: Merged-By: ioquatix <samuel@codeotaku.com>
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