summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-09-22Add a comment about why we're checking the finalizer tableAaron Patterson
2020-09-23* 2020-09-23 [ci skip]git
2020-09-22Revert "Pin values in the finalizer table"Aaron Patterson
If an object has a finalizer flag set on it, prevent it from moving. This partially reverts commit 1a9dd31910699c7cd69f2a84c94af20eacd5875c.
2020-09-21Make hash returned by Hash#transform_values not have a defaultJeremy Evans
This sets an explicit default of nil. There is probably a better approach of removing the default. Fixes [Bug #17181] Notes: Merged: https://github.com/ruby/ruby/pull/3563
2020-09-22* 2020-09-22 [ci skip]git
2020-09-21Comply with guide for method doc: string.c (#3528)Burdette Lamar
Methods: ::new #length #bytesize #empty? #+ #* #% Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>
2020-09-21Make Thread#join always convert its argument, as before 70f08f1eedBenoit Daloze
2020-09-21Simplify the implementation of Scheduler#blockBenoit Daloze
* This shows block() with a timeout is similar to #kernel_sleep and also does not need to change `@blocking`.
2020-09-21Make it clear the first field of join_arg is the waiting threadBenoit Daloze
* And not some list of sort.
2020-09-21Fix Thread leak in Thread#join specsBenoit Daloze
2020-09-21Add NEWS about `Fiber#backtrace` and `Fiber#backtrace_locations`.Samuel Williams
Notes: Merged: https://github.com/ruby/ruby/pull/3562
2020-09-21Update NEWS & documentation relating to scheduler.Samuel Williams
Notes: Merged: https://github.com/ruby/ruby/pull/3561
2020-09-21Make `Thread#join` non-blocking.Samuel Williams
Notes: Merged: https://github.com/ruby/ruby/pull/3558
2020-09-21* 2020-09-21 [ci skip]git
2020-09-21When setting current thread scheduler to nil, invoke `#close`.Samuel Williams
Notes: Merged: https://github.com/ruby/ruby/pull/3557
2020-09-20Update heap_pages_himem after freeing pagesPeter Zhu
Notes: Merged: https://github.com/ruby/ruby/pull/3461
2020-09-20Fulfill missing tests and stabilize testsQuang-Minh Nguyen
Notes: Merged: https://github.com/ruby/ruby/pull/3555
2020-09-20Validate name during initializationQuang-Minh Nguyen
Notes: Merged: https://github.com/ruby/ruby/pull/3555
2020-09-20Add status to Ractor#inspectQuang-Minh Nguyen
Notes: Merged: https://github.com/ruby/ruby/pull/3555
2020-09-20* 2020-09-20 [ci skip]git
2020-09-20Remove from waiter in Mutex#lock with ensure when calling rb_scheduler_block()Benoit Daloze
* Previously this could lead to an invalid waiter entry and then trying to wake up that waiter would result in various issues in rb_mutex_unlock_th().
2020-09-19[ruby/io-wait] update required_ruby_versionNobuyoshi Nakada
As d387029f39d976565c955377117103499d47ff09 made io/wait unbuildable with older versions, drop older versions tentatively. Also the change seems to instroduce behavioral incompatibilities, may address them or bump up the version later.
2020-09-19strip trailing spaces [ci skip]Nobuyoshi Nakada
2020-09-18Add assertions when inline caches are copied to MJITAaron Patterson
This is a temporary commit to try to find a GC issue. It seems like mjit is pointing at a moved address in the call cache. I want to assert that they aren't TMOVED or garbage objects at the time they get copied
2020-09-19[ruby/irb] Version 1.2.7aycabta
https://github.com/ruby/irb/commit/0eaa06838b
2020-09-19[ruby/irb] Drop OMIT_ON_ASSIGNMENT and add :truncate option for ↵aycabta
ECHO_ON_ASSIGNMENT https://github.com/ruby/irb/commit/4c89b0775b
2020-09-19* 2020-09-19 [ci skip]git
2020-09-18Pin values in the finalizer tableAaron Patterson
When finalizers run (in `rb_objspace_call_finalizer`) the table is copied to a linked list that is not managed by the GC. If compaction runs, the references in the linked list can go bad. Finalizer table shouldn't be used frequently, so lets pin references in the table so that the linked list in `rb_objspace_call_finalizer` is safe. Notes: Merged: https://github.com/ruby/ruby/pull/3556
2020-09-18Added sync task for bigdecimalHiroshi SHIBATA
2020-09-18The executable file of erb is under the libexec on ruby/erb repoHiroshi SHIBATA
2020-09-18Fix copy/paste error from 5bb5e706f1d310a467075630145d2cc277045765Benoit Daloze
2020-09-18Only interrupt when there is no scheduler in sync_wakeup()Benoit Daloze
* When there is a scheduler, the Fiber that would be blocked has already been rescheduled and there is no point to interrupt something else. That blocked Fiber will be rescheduled as the next call to the scheduler (e.g., IO, sleep, other blocking sync). * See discussion on https://github.com/ruby/ruby/commit/d01954632d
2020-09-18[ruby/rdoc] Add man/ri.1 for distribution filesaycabta
https://github.com/ruby/rdoc/commit/7cb5c3611f
2020-09-18[ruby/rdoc] Fix spelling error in parser commentDorian Marié
https://github.com/ruby/rdoc/commit/f237c9e223
2020-09-18[ruby/rdoc] update all files if any file is newerNobuyoshi Nakada
Cross references need parse all files which define the subject names. This commit makes `--force-update` option enforce to parse all files if any file is newer than the previous parse, not only updated files. https://github.com/ruby/rdoc/commit/13e9a44896
2020-09-18[ruby/rdoc] Support full filename to make a link for a text fileaycabta
https://github.com/ruby/rdoc/commit/41db49c485
2020-09-18sync ruby_global_symbolsKoichi Sasada
ruby_global_symbols can be accessed with multiple ractors so that the accesses should be synchronized. Notes: Merged: https://github.com/ruby/ruby/pull/3548
2020-09-18show object info to debug purpose.Koichi Sasada
Notes: Merged: https://github.com/ruby/ruby/pull/3548
2020-09-18add debug log on enabling multi-ractor modeKoichi Sasada
Notes: Merged: https://github.com/ruby/ruby/pull/3548
2020-09-18rb_obj_info() shows more info for T_SYMBOLKoichi Sasada
Notes: Merged: https://github.com/ruby/ruby/pull/3548
2020-09-18sync fstring_table for deletionKoichi Sasada
Ractors can access this table simultaneously so we need to sync accesses. Notes: Merged: https://github.com/ruby/ruby/pull/3548
2020-09-18* 2020-09-18 [ci skip]git
2020-09-17Cleanup commented codeBenoit Daloze
* Mutex operations no longer disable the Fiber scheduler.
2020-09-17Add missing goto found;Benoit Daloze
* To still remove the lock from the Thread's list of acquired locks. * Also to not wake up other waiters and preserve blocking behavior.
2020-09-17Fix Mutex#unlock with a scheduler and thread contentionBenoit Daloze
* It would hit "[BUG] unexpected THREAD_STOPPED" before.
2020-09-17Document the various scheduler hooksBenoit Daloze
2020-09-17Call scheduler.block instead of scheduler.kernel_sleep for blocking ↵Benoit Daloze
Queue/SizedQueue operations * scheduler.unblock was already already called before but with no corresponding scheduler.block * add test that Queue#pop makes the scheduler wait until it gets an element.
2020-09-17Rename scheduler.{mutex_lock,mutex_unlock} to {block,unblock}Benoit Daloze
* Move #kernel_sleep next to #block as it is similar
2020-09-17Use a similar pattern for waiting and readyBenoit Daloze
2020-09-17Fix typos [ci skip]Kazuhiro NISHIYAMA
s/overriden/overridden/