Skip to content

[pull] master from ruby:master - #1403

Merged
pull[bot] merged 11 commits into
turkdevops:masterfrom
ruby:master
Sep 13, 2026
Merged

pull[bot] merged 11 commits into
turkdevops:masterfrom
ruby:master

Conversation

@pull

@pull pull Bot commented Sep 13, 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 : )

eregon and others added 11 commits September 12, 2026 22:47
Cover constant &&=, constant path writes and operator assignments
failing on the namespace, bare constant operator assignments failing in
the operator or on the value, instance and class variable operator
assignments, index and attribute ||= and &&=, safe navigation attribute
operator assignments, multiple assignment targets and values, and
attribute targets in for loops and rescue clauses.

Four of these still differ with parse.y and are skipped there:
class variable reads in operator assignments, parenthesized nested
multiple assignment and block parameter targets, and rescue targets.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
rb_w32_pread() has existed for a while, so the reason these four gave
was stale.  Three of them pass as they are; the fourth needs fork(),
which is what it was really waiting for.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
It signals its own process, which kill() turns into a plain raise(), so
nothing here depends on the console control events that the other two
signal tests in this file need.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Windows builds with USE_MN_THREADS 0, so this no longer covers the M:N
path it is named for, but IO#wait(IO::PRIORITY) waking on an OOB byte is
worth asserting there too, and it does.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
What it hit was not a timeout but a shutdown crash in require "openssl"
under RUBY_BOX=1, and that is gone.  Give it the same 60 second timeout
box_1 needed, since the 10 second default is what parallel CI runs out
of.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
nonblock= works there; what does not happen is the write failing.  The
peer being closed leaves the next write on an AF_UNIX socket succeeding
instead of raising EPIPE.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
RUBY_THREAD_MACHINE_STACK_SIZE does reach CreateThread there, and the
recursion depth it buys moves with it.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
AF_UNIX/SOCK_STREAM has been there since Windows 10, and Ruby has built
UNIXSocket, UNIXServer and Socket.pair on it for a while now.  Nothing in
these four files needs anything else.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@pull pull Bot locked and limited conversation to collaborators Sep 13, 2026
@pull pull Bot added the ⤵️ pull label Sep 13, 2026
@pull
pull Bot merged commit 7463f4d into turkdevops:master Sep 13, 2026
1 of 3 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