Skip to content

[pull] master from ruby:master#1175

Merged
pull[bot] merged 7 commits into
turkdevops:masterfrom
ruby:master
Jul 3, 2026
Merged

[pull] master from ruby:master#1175
pull[bot] merged 7 commits into
turkdevops:masterfrom
ruby:master

Conversation

@pull

@pull pull Bot commented Jul 3, 2026

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

jhawthorn and others added 7 commits July 2, 2026 13:04
These are all simple getters which don't allocate or raise exceptions.
We can declare them as a leaf and skip pushing frames inside YJIT/ZJIT.
Set RUBY_TEST_GC_VERIFY to call GC.verify_internal_consistency after each
test. An integer >= 2 samples once every N tests; any other non-empty value
verifies every test. Useful for pinning down which test corrupts the heap.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
ThreadSanitizer cannot follow Ruby's userspace coroutine stack switches, so
its per-thread shadow stack leaks across a switch and eventually faults
inside libtsan. Create a TSan fiber per coroutine and switch to it at each
transfer, mirroring the existing AddressSanitizer annotations. The main
context borrows the OS thread's implicit fiber and must not destroy it.

Only amd64 is annotated here.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-authored-by: Jeremy Evans <code@jeremyevans.net>
Co-authored-by: Jeremy Evans <code@jeremyevans.net>
Co-authored-by: Jeremy Evans <code@jeremyevans.net>
@pull pull Bot locked and limited conversation to collaborators Jul 3, 2026
@pull pull Bot added the ⤵️ pull label Jul 3, 2026
@pull pull Bot merged commit 3548065 into turkdevops:master Jul 3, 2026
1 of 2 checks passed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants