Project

General

Profile

Activity

From 05/15/2026 to 05/21/2026

Today

02:55 PM Revision 945eab1d (git): ZJIT: Print module name in HIR Type display (#17039)
Go from `ModuleExact[VALUE(0x1008)]` to `ModuleExact[Enumerable@0x1008]` if the module's name isn't `nil`. Max Bernstein
12:47 PM Bug #22077: Endless methods in 3.3.5 allows for endless rescues. 4.0 shows different behaviour
Seems caused by http://github.com/ruby/prism/commit/07202005cbd01e860edb7aa7c93e8fe7d74efcf5 Earlopain (Earlopain _)
09:44 AM Bug #22077 (Open): Endless methods in 3.3.5 allows for endless rescues. 4.0 shows different behaviour

ruby 3.3.5 (2024-09-03 revision ef084cc8f4) [x86_64-linux]
```
irb(main):001> def endless = nil * 1000 rescue raise('surprise') rescue 'please stop'
=> :endless
irb(main):002> endless
=> "please stop"
irb(main):003>
```
...
jerome.paul@gmail.com (Jerome Paul)
11:26 AM Revision 81c68150 (git): [ruby/strscan] Fix call-seq return values
(https://github.com/ruby/strscan/pull/207)
Some `call-seq` comments did not match the actual return values
(documentation only, no behavior change):
* `match?` returns the match size, not a position
* `skip` was missing the `->` arrow
...
zonuexe (Kenta USAMI)
09:04 AM Bug #22076 (Closed): defined? returns nil for protected methods defined in a module even when callable
Applied in changeset commit:git|d1391a000359655f948e16d7f2b0e85890082b5a.
----------
Fix defined? for protected methods defined in a module
me->defined_class is 0 for methods stored on a module, so the
protected visibility check in vm_...
sampokuokkanen (Sampo Kuokkanen)
08:53 AM Bug #22076: defined? returns nil for protected methods defined in a module even when callable
The expectation and the fix seem reasonable both. nobu (Nobuyoshi Nakada)
08:14 AM Bug #22076 (Closed): defined? returns nil for protected methods defined in a module even when callable
Filing this to confirm whether defined? should return "method" here (matching the call check), or whether the current nil behavior is intentional.
### Summary
`defined?` returns `nil` for a protected method defined in a module, eve...
sampokuokkanen (Sampo Kuokkanen)
09:04 AM Revision d1391a00 (git): Fix defined? for protected methods defined in a module
me->defined_class is 0 for methods stored on a module, so the
protected visibility check in vm_defined always failed and defined?
returned nil even when the call would succeed.
Use rb_callable_method_entry_with_refinements (where define...
sampokuokkanen (Sampo Kuokkanen)
07:19 AM Revision bf920ef6 (git): test_thread_join_hang: join leaked inner sleeper (#17068)
SleepingUnblockScheduler#unblock deliberately breaks the join path,
so the inner Thread.new{sleep(0.01)} created inside Fiber.schedule
is abandoned mid-sleep when the outer thread exits. It eventually
wakes and lingers in Thread.list, br...
sorah (Sorah Fukumori)
06:53 AM Revision f562993d (git): Trim tarball-* reusable inputs
Backport of ruby/ruby#17063 to ruby_4_0. All four reusables and the
make-snapshot composite are now blob-identical to master, including
tarball-windows since ruby_4_0 already runs the modern windows-2022 +
windows-2025-vs2026 matrix. tar...
hsbt (Hiroshi SHIBATA)
06:53 AM Revision 1736d89b (git): Call master's make-snapshot composite from tarball-test
The composite is blob-identical across branches after PR #17063 lands
everywhere, so pointing maintenance branches at master removes the
need to re-cherry-pick future fixes. The local copy stays in place
because ruby/actions still calls ...
hsbt (Hiroshi SHIBATA)
06:53 AM Revision d019de2b (git): Trim tarball-* reusable inputs
Backport of ruby/ruby#17063 to ruby_3_4. The reusables and the
make-snapshot composite are now blob-identical to master except for
tarball-windows, which keeps the windows-2022 + vs / vcvars matrix and
the manual vcvars64.bat setup env s...
hsbt (Hiroshi SHIBATA)
06:52 AM Revision 612dcbcc (git): Call master's make-snapshot composite from tarball-test
The composite is blob-identical across branches after PR #17063 lands
everywhere, so pointing maintenance branches at master removes the
need to re-cherry-pick future fixes. The local copy stays in place
because ruby/actions still calls ...
hsbt (Hiroshi SHIBATA)
06:52 AM Revision 099427e1 (git): Trim tarball-* reusable inputs
Backport of ruby/ruby#17063 to ruby_3_3. The reusables and the
make-snapshot composite are now blob-identical to master except for
tarball-windows, which keeps the windows-2022 + vs / vcvars matrix and
the manual vcvars64.bat setup env s...
hsbt (Hiroshi SHIBATA)
05:27 AM Revision 5de4b118 (git): Exclude the extensions for tests when cross-compiling
nobu (Nobuyoshi Nakada)
05:27 AM Revision 43f17f16 (git): Add `--with-ext` and `--without-ext` options to configure-ext.mk
nobu (Nobuyoshi Nakada)
04:39 AM Revision 6759ef4b (git): Drop gem and bundle smoke test from tarball-windows
The bin/gem and bin/bundle scripts in the source tree do not run
cleanly without an install step on Windows. Keep ruby -v only.
hsbt (Hiroshi SHIBATA)
04:39 AM Revision 8e9b2b83 (git): Re-add unconditional rm -rf \$HOME/.gnupg before HOME diff
Without the workaround the snapshot-tarball run leaves
~/.gnupg/{crls.d,private-keys-v1.d,public-keys.d} behind after
test_sync_default_gems, which trips Diff stats of HOME. GPG 2.x's
agent processes ignore GNUPGHOME for these directorie...
hsbt (Hiroshi SHIBATA)
04:39 AM Revision ee7c8df5 (git): Guard inputs.notify-release-channel behind workflow_dispatch check
The inputs context is only populated for workflow_dispatch and
workflow_call, so referencing it on push, pull_request, or merge_group
relies on undefined behaviour. Short-circuit on github.event_name so
non-dispatch runs always pass fals...
hsbt (Hiroshi SHIBATA)
04:39 AM Revision 32aad3f7 (git): Add upload-artifact input to make-snapshot composite action
Lets callers opt out of the Packages and Info uploads. tarball-test
keeps the default true so per-OS reusables can download them, while
upload-tarball in ruby/actions can pass false once it runs the same
composite in a matrix across four...
hsbt (Hiroshi SHIBATA)
04:39 AM Revision 187a056e (git): Route tarball-test failure notifications to two Slack channels
SIMPLER_ALERTS_URL always fires on failure so developer-facing CI
(PR, push, merge_group, manual dispatch) surfaces breakage in the
ruby-core channel. notify-release-channel additionally routes to
SNAPSHOT_SLACK_WEBHOOK_URL for the daily...
hsbt (Hiroshi SHIBATA)
04:39 AM Revision 07b258bd (git): Verify gem and bundle in tarball-macos and tarball-windows
Match the smoke test added to tarball-ubuntu. macos checks the
installed /usr/local/bin/{ruby,gem,bundle}; windows runs the
build-tree ruby against bin/{gem,bundle} from the extracted tarball
because the workflow has no install step.
hsbt (Hiroshi SHIBATA)
04:39 AM Revision aa04c2c4 (git): Drop fixed-dirs-extra and fold its dirs into the main step
ruby_3_3 was the only caller that disabled the extra mkdir step.
Always create $HOME/.local/share and $HOME/.ssh in the main Fixed
world writable dirs step. mkdir -p $HOME/.local/share also covers
$HOME/.local, so the bare mkdir for it g...
hsbt (Hiroshi SHIBATA)
04:39 AM Revision d9b727c5 (git): Verify gem and bundle alongside ruby after make install
Confirms the snapshot tarball ships a working RubyGems and Bundler in
addition to the ruby binary.
hsbt (Hiroshi SHIBATA)
04:39 AM Revision 85e95675 (git): Drop ruby-bin from tarball-ubuntu
Hardcode the post-install smoke test to /usr/local/bin/ruby, matching
the configure default prefix used on master/4_0/3_4. ruby_3_3's `ruby`
override falls away when it aligns with the same install layout.
hsbt (Hiroshi SHIBATA)
04:39 AM Revision 2c3c4f20 (git): Drop apt-mode from tarball-ubuntu
The three apt-mode variants existed to selectively uninstall git (and
sometimes ruby) per test_task. ruby-and-git on ruby_3_3 also pinned an
apt-installed host ruby. With ruby/setup-ruby covering the host ruby
unconditionally and git alw...
hsbt (Hiroshi SHIBATA)
04:39 AM Revision a2cff6ac (git): Drop rebuild-homebrew-ruby input from tarball-macos
The Homebrew Ruby uninstall/reinstall dance was only enabled on
ruby_3_3 to work around macos-15-intel quirks, and the reinstall step
never fired because macos-15-intel only runs the check task. Drop both
steps and the input.
hsbt (Hiroshi SHIBATA)
04:39 AM Revision 633a692a (git): Drop unused patch-url input from tarball-* reusables
No caller passes patch-url: tarball-test.yml never set it, and
ruby/actions draft-release.yml stopped forwarding it once it started
calling these workflows by ref. Remove the input and the Apply patch
step from the ubuntu, macos, and win...
hsbt (Hiroshi SHIBATA)
04:39 AM Revision 1fa99b48 (git): Drop remove-gnupg from tarball-ubuntu
The step force-removed $HOME/.gnupg between Tests and Diff stats of
HOME, but the original cause for the directory persisting was never
identified. Remove it and observe whether the HOME diff still passes.
hsbt (Hiroshi SHIBATA)
04:39 AM Revision 1d76e0fc (git): Drop allow-failures input from tarball-* reusables
power_assert was allowed to fail on master/4_0 by passing it through
this input. The allow-list belongs in tool/test-bundled-gems.rb now
that the tool ships in the same repo as the workflow.
hsbt (Hiroshi SHIBATA)
04:39 AM Revision 53c39788 (git): Drop setup-host-ruby from tarball-ubuntu
Always install Ruby 3.2 via ruby/setup-ruby for test-bundled-gems.
ruby_3_3 will follow once it stops relying on the apt-installed ruby
for its host.
hsbt (Hiroshi SHIBATA)

05/20/2026

11:48 PM Revision eeed9ea3 (git): Move rb_gc_update_set_refs into gc.c
The code is in gc/gc.h but it is not used outside of gc.c, so we can move
it there.
peterzhu2118 (Peter Zhu)
10:20 PM Revision 63c35b40 (git): [DOC] Doc for Pathname#descend
burdettelamar (Burdette Lamar)
10:19 PM Revision dfef7ecd (git): [DOC] Doc for Pathname.directory?
burdettelamar (Burdette Lamar)
10:17 PM Revision 989cbe85 (git): [DOC] Doc for Pathname#ctime
burdettelamar (Burdette Lamar)
09:34 PM Bug #22074: YJIT misaligns locals when there are > 256 local variables
Link to the PR: https://github.com/ruby/ruby/pull/17043 Eregon (Benoit Daloze)
09:32 PM Feature #16012: Add a (small) test-install suite?
That's great! Eregon (Benoit Daloze)
09:02 AM Feature #16012: Add a (small) test-install suite?
I migrated snapshot package tests from ruby/actions to ruby/ruby repository.
Now we test `make install` every pull reqeust with Linux, macOS and Windows.
https://github.com/ruby/ruby/blob/master/.github/workflows/tarball-ubuntu.yml...
hsbt (Hiroshi SHIBATA)
09:26 PM Bug #21844: Inconsistent ArgumentError message for Data::define.new
Concretely allowing Strings means extra checks for unknown or missing members, with only Symbols a `kwargs.size == CLASS_MEMBERS.size` check would be enough.
It also leads to ambiguous cases like:
```ruby
MyData = Data.define(:value)
MyD...
Eregon (Benoit Daloze)
09:14 PM Revision 3002cea4 (git): Fix GC Bug in imemo cdhash creation
It's possible for st_init_existing_table_with_size to trigger GC. If
that happens we need to ensure that the table entries count doesn't
contain garbage data, or we'll try and mark random stuff
eightbitraptor (Matt V-H)
09:14 PM Revision 4c8f0727 (git): Unify gc_counter_t on rbimpl_atomic_uint64_t
eightbitraptor (Matt V-H)
09:14 PM Revision 8b7c4342 (git): Snapshot malloc counters at end of sweep
Snapshotting at start of marking lets sweep-time frees count against the
next epoch, which roughly halves GC frequency on alloc-heavy workloads.
Move the snapshot to end of sweep so the next epoch starts from a clean
baseline.
eightbitraptor (Matt V-H)
09:14 PM Revision ed882010 (git): Make sure we flush the cached count to update heap slots
eightbitraptor (Matt V-H)
09:14 PM Revision cb3b126e (git): Better feature detection for malloc counter locks
eightbitraptor (Matt V-H)
09:14 PM Revision 8f7e07bb (git): Reorder rb_gc_impl_stat to keep heap_live_slots accurate
Several SETs in rb_gc_impl_stat may allocate a T_BIGNUM RVALUE when
the value exceeds FIXNUM_MAX
This is invisible on LP64 but trips on LLP64 Windows and ILP32 Linux
where FIXNUM_MAX ~= 1.07GB.
If those allocations happen *after* setti...
eightbitraptor (Matt V-H)
09:14 PM Revision 672ef432 (git): Expose monotonic malloc/free totals via GC.stat
eightbitraptor (Matt V-H)
09:14 PM Revision ec114e57 (git): Use monotonic add/sub counters for malloc_increase
Replace the single
objspace->malloc_counters.{increase,oldmalloc_increase} size_t fields
with pairs of monotonically-increasing counters. Snapshots of these
counters are taken at each GC, so that the live malloc_increase is computed as
...
eightbitraptor (Matt V-H)
05:20 PM Bug #22075: heap-use-after-free in `rb_vm_ci_lookup` under parallel Ractors
4.0 backport: https://github.com/ruby/ruby/pull/17055 jhawthorn (John Hawthorn)
04:50 PM Bug #22075 (Closed): heap-use-after-free in `rb_vm_ci_lookup` under parallel Ractors
Applied in changeset commit:git|cb9f2ba8046b10de6b4fa0ff364a8e9d09235d00.
----------
Use atomics for kwargs reference count
Fixes [Bug #22075]
jhawthorn (John Hawthorn)
09:54 AM Bug #22075: heap-use-after-free in `rb_vm_ci_lookup` under parallel Ractors
Thank you for the reliable reproduction. I believe the issue is that `super` calls are duplicating callinfos, but the reference count for the kwargs array isn't using atomics.
```ruby
class Base
def foo(a:, b:, c:) = a
end
cla...
jhawthorn (John Hawthorn)
05:34 AM Bug #22075 (Closed): heap-use-after-free in `rb_vm_ci_lookup` under parallel Ractors
## Environment
- `ruby 4.0.5 (2026-05-20 revision 64336ffd0e) +PRISM [aarch64-linux]`
- Also reproduced on `ruby 4.0.4 ... [x86_64-linux]`.
## Summary
Under a parallel Ractor pool, a GC sweep on one Ractor frees a `T_DATA` obje...
zonuexe (Kenta USAMI)
04:48 PM Revision cb9f2ba8 (git): Use atomics for kwargs reference count
Fixes [Bug #22075] jhawthorn (John Hawthorn)
04:25 PM Revision c124d555 (git): ZJIT: Profile all args on stack, including blockarg (#17038)
No need to special-case this in the HIR builder: just profile arguments as they actually come in on the stack.
Don't special case the send opcode with `stack_offset` and stuff. We can handle this in the profiler.
Max Bernstein
10:44 AM Revision 332315a4 (git): Preserve usable slot size when RVALUE_OVERHEAD is non-zero
We made a mistake calculating slot sizes during the heap slot sizes
refactor. Previously BASE_SLOT_SIZE included RVALUE_OVERHEAD, this was
lost during the refactor to use the SLOT macro.
The result of this was that when Ruby was compile...
eightbitraptor (Matt V-H)
08:09 AM Revision 283deaec (git): Pass archname through env to avoid template injection
zizmor flags `cd "${{ inputs.archname }}/"` inside `run:` blocks as
code injection via template expansion: GitHub Actions substitutes the
input value into the shell script verbatim, so a caller passing shell
metacharacters could execute ...
hsbt (Hiroshi SHIBATA)
08:09 AM Revision a1d2f228 (git): Use inputs.archname instead of `snapshot-*` glob in tarball-test
The per-OS tarball-test workflows currently hard-code `cd snapshot-*/`
to enter the extracted tarball directory, which prevents callers from
producing tarballs under any other prefix (for example `ruby-3.4.0-rc1`
emitted by `tool/make-sn...
hsbt (Hiroshi SHIBATA)
07:56 AM Revision 0dc0280b (git): Pass archname through env to avoid template injection
zizmor flags `cd "${{ inputs.archname }}/"` inside `run:` blocks as
code injection via template expansion: GitHub Actions substitutes the
input value into the shell script verbatim, so a caller passing shell
metacharacters could execute ...
hsbt (Hiroshi SHIBATA)
07:56 AM Revision fd6a2534 (git): Use inputs.archname instead of `snapshot-*` glob in tarball-test
The per-OS tarball-test workflows currently hard-code `cd snapshot-*/`
to enter the extracted tarball directory, which prevents callers from
producing tarballs under any other prefix (for example `ruby-3.4.0-rc1`
emitted by `tool/make-sn...
hsbt (Hiroshi SHIBATA)
07:55 AM Revision dafb92d9 (git): Pass archname through env to avoid template injection
zizmor flags `cd "${{ inputs.archname }}/"` inside `run:` blocks as
code injection via template expansion: GitHub Actions substitutes the
input value into the shell script verbatim, so a caller passing shell
metacharacters could execute ...
hsbt (Hiroshi SHIBATA)
07:55 AM Revision d8e25079 (git): Use inputs.archname instead of `snapshot-*` glob in tarball-test
The per-OS tarball-test workflows currently hard-code `cd snapshot-*/`
to enter the extracted tarball directory, which prevents callers from
producing tarballs under any other prefix (for example `ruby-3.4.0-rc1`
emitted by `tool/make-sn...
hsbt (Hiroshi SHIBATA)
07:49 AM Revision 19edfeb3 (git): Pass archname through env to avoid template injection
zizmor flags `cd "${{ inputs.archname }}/"` inside `run:` blocks as
code injection via template expansion: GitHub Actions substitutes the
input value into the shell script verbatim, so a caller passing shell
metacharacters could execute ...
hsbt (Hiroshi SHIBATA)
07:49 AM Revision d62d5118 (git): Use inputs.archname instead of `snapshot-*` glob in tarball-test
The per-OS tarball-test workflows currently hard-code `cd snapshot-*/`
to enter the extracted tarball directory, which prevents callers from
producing tarballs under any other prefix (for example `ruby-3.4.0-rc1`
emitted by `tool/make-sn...
hsbt (Hiroshi SHIBATA)
07:13 AM Revision 27186cc2 (git): [DOC] Add missing colon in IO#seek doc
byroot (Jean Boussier)
06:24 AM Revision 4388dead (git): Inline tarball-windows modern matrix and drop the legacy mode
The legacy mode (vs2022 + vcvars 14.2) is no longer exercised, so
collapse the conditional matrix into the modern 2022 / 2025-vs2026
pair and remove the now-dead setup-env (legacy) step.
hsbt (Hiroshi SHIBATA)
06:17 AM Revision 528f5410 (git): CI: Exclude the test that is very flaky only on mswin [ci skip]
nobu (Nobuyoshi Nakada)
05:51 AM Revision f80b7484 (git): Inline modern Windows configuration in tarball-windows.yml
ruby_4_0 only builds with vssetup.cmd against windows-2022 and
windows-2025-vs2026, so the mode input and the legacy branch are
dead code on this branch. Drop the input, hardcode the modern
matrix and setup-env step, and stop passing mod...
hsbt (Hiroshi SHIBATA)
05:51 AM Revision 966f5524 (git): Dispatch tarball-test from master schedule instead of cron
GitHub Actions schedule triggers only fire on the default branch, so
the daily cron in tarball-test.yml never ran on ruby_4_0. Switch the
trigger to workflow_dispatch so master's tarball-test-schedule.yml
can dispatch it via gh workflow ...
hsbt (Hiroshi SHIBATA)
05:51 AM Revision 353324df (git): Inline legacy Windows configuration in tarball-windows.yml
ruby_3_4 only builds with the vs2022 + vcvars 14.2 toolchain on this
branch because win32/vssetup.cmd has not been backported, so the mode
input and the modern branch are dead code here. Drop the input,
hardcode the legacy matrix and set...
hsbt (Hiroshi SHIBATA)
05:51 AM Revision f4f4c991 (git): Dispatch tarball-test from master schedule instead of cron
GitHub Actions schedule triggers only fire on the default branch, so
the daily cron in tarball-test.yml never ran on ruby_3_4. Switch the
trigger to workflow_dispatch so master's tarball-test-schedule.yml
can dispatch it via gh workflow ...
hsbt (Hiroshi SHIBATA)
05:33 AM Revision c13fe5aa (git): Remove unused generate-tar-bz2
Release packages stopped to include `*.tar.bz2` since 3.0.0.
https://bugs.ruby-lang.org/issues/16483
znz (Kazuhiro NISHIYAMA)
05:22 AM Revision 8b4e5c8d (git): Inline legacy Windows configuration in tarball-windows.yml
ruby_3_3 only builds with the vs2022 + vcvars 14.2 toolchain, so the
mode input and the modern branch are dead code on this branch. Drop
the input, hardcode the legacy matrix and setup-env step, and stop
passing mode: legacy from tarball...
hsbt (Hiroshi SHIBATA)
05:22 AM Revision b2d4ee1d (git): Remove bzip2 from DEFAULT_PACKAGES
Release packages stopped to include `*.tar.bz2` since 3.0.0.
https://bugs.ruby-lang.org/issues/16483
znz (Kazuhiro NISHIYAMA)
05:21 AM Revision 126e120d (git): Dispatch tarball-test from master schedule instead of cron
GitHub Actions schedule triggers only fire on the default branch, so
the daily cron in tarball-test.yml never ran on ruby_3_3. Switch the
trigger to workflow_dispatch so master's tarball-test-schedule.yml
can dispatch it via gh workflow ...
hsbt (Hiroshi SHIBATA)
05:10 AM Bug #22058: {Method,InstanceMethod}#super_method doesn't work correctly for refined method with refinements for method active in the caller's scope
jeremyevans0 (Jeremy Evans) wrote in #note-13:
> ```ruby
> ...
Initially I thought the pre-2.7 behavior was more reasonable, but I now agree that the 2.7+ behavior is more consistent.
I'd like to confirm this with Matz at the next dev...
shugo (Shugo Maeda)
12:19 AM Bug #22058: {Method,InstanceMethod}#super_method doesn't work correctly for refined method with refinements for method active in the caller's scope
I merged commit:cb0cd76a086d2d9423adaa4c5032a5fa149e7ef1 and commit:8f8dd01a93b247f607d927770a2ad09e1e0a1647 to handle address the issues identified in this bug report. I didn't have them auto-close this report, because there is still a ... jeremyevans0 (Jeremy Evans)
04:55 AM Revision 9e925374 (git): Dispatch tarball-test daily across master and maintenance branches
GitHub Actions schedule triggers only fire from the default branch, so
the daily run defined in tarball-test.yml never executed on ruby_3_3,
ruby_3_4, or ruby_4_0. Move the cron into a new dispatcher workflow
that calls workflow_dispatch...
hsbt (Hiroshi SHIBATA)
03:49 AM Revision bc048b50 (git): configure: check some warning options only with clang
GCC doesn't emit any warning when the -Wno- form is used, so we can't
check reliably if the warning option is available:
When an unrecognized warning option is requested (e.g.,
-Wunknown-warning), GCC gives an error stating that the opt...
etienne (Étienne Barrié)
03:32 AM Revision 4e3e8062 (git): [DOC] Update bundled gems list at 7f76cbe86597280313551bfa9609a8
git[bot]
02:09 AM Revision 7f76cbe8 (git): Revert "Hack to update spec/bundler/support/builders.rb"
This reverts commit 3d73cd752f5dbdff4c77c57d011ca7f8d783c8ba, that is
no longer needed since ruby/rubygems#8735.
nobu (Nobuyoshi Nakada)
01:10 AM Revision 8638931d (git): [ruby/mmtk] Fix compiler warnings for noreturn
gc/mmtk/mmtk.c:480:1: warning: function 'rb_mmtk_gc_thread_bug' could be declared with attribute 'noreturn' [-Wmissing-noreturn]
480 | {
| ^
gc/mmtk/mmtk.c:510:1: warning: function 'rb_mmtk_mutator_thread_panic_handle...
peterzhu2118 (Peter Zhu)
12:13 AM Revision 8601f5a4 (git): Fix reading freed memory in rb_getaddrinfo
shioimm (Misaki Shioi)
12:06 AM Revision 8f8dd01a (git): Correctly handle refinements in Method#super_method for bmethods
Bmethods need to use a different approach to find the cref to use
in order to determine the refinements in effect.
jeremyevans (Jeremy Evans)
12:06 AM Revision cb0cd76a (git): Handle refinements correctly in {Method,UnboundMethod}#super_method
A `Method#super_method` chain should return the methods that `super`
would call if the method was called normally. Previously, there were
multiple problems:
* There was an infinite `super_method` loop for refined methods.
* Lookup cons...
jeremyevans (Jeremy Evans)

05/19/2026

11:45 PM Bug #22074 (Open): YJIT misaligns locals when there are > 256 local variables
Hi! We ran into this issue in production with a large Slim template in a Rails app, but we found that it's reproducible in any function with a lot of local variables. It seems like YJIT tracks local variables for register allocation in a... ibrahima (Ibrahim Awwal)
11:23 PM Revision c7a7bc98 (git): Merge branch 'ruby_4_0' into v4.0.5
k0kubun (Takashi Kokubun)
11:22 PM Revision 64336ffd (git): v4.0.5
k0kubun (Takashi Kokubun)
11:22 PM Revision 6f1fa82e (git): Fix reading freed memory in rb_getaddrinfo
shioimm (Misaki Shioi)
11:21 PM Revision 6d7ed5b0 (git): Merge branch 'ruby_4_0' into v4.0.4
k0kubun (Takashi Kokubun)
11:20 PM Revision 57524af8 (git): Merge tag 'v4.0.4' into v4.0.3
k0kubun (Takashi Kokubun)
09:57 PM Revision 3373fcc2 (git): Fix UAF in IO::Buffer#~ when self is an invalidated slice
`io_buffer_not` accessed `buffer->base` directly without validating that the buffer was still live. A slice whose parent had been freed retained its stale base pointer, so calling `~` on it caused a UAF.
Use `io_buffer_get_bytes_for_rea...
himura467 (Akito Shitara)
09:23 PM Bug #22073: Ruby 3.4.9 segfaults when loading native default gems compiled on Ubuntu 26.04 (GCC 15.2); Ruby 4.0.3 unaffected on same system
This sounds like a serious eCryptfs bug to me, could you report it there? (or is there already an open issue about that? If so please link it here).
(IMO eCryptfs is kind of a hack leaking many implementation details, nevertheless it'...
Eregon (Benoit Daloze)
09:08 PM Revision 5ec634bb (git): [DOC] nodoc various classes under `Enumerator`
They are implementation details:
* https://docs.ruby-lang.org/en/4.0/Enumerator/Yielder.html
* https://docs.ruby-lang.org/en/4.0/Enumerator/Producer.html
* https://docs.ruby-lang.org/en/4.0/Enumerator/Generator.html
Earlopain (Earlopain _)
08:26 PM Revision 8267e508 (git): ZJIT: x64: Prefer 7-byte sign extending `mov` over 10-byte `movabs`
Relevant for small negative immediates. Previously:
# Insn: v16 SetLocal l1, EP@3, v10
mov rsi, qword ptr [r13 + 0x20]
mov rsi, qword ptr [rsi - 8]
and rsi, 0xfffffffffffffffc
# call rb_vm_env_write
push rdi
push rdi
mov...
alanwu (Alan Wu)
11:31 AM Revision 3ef48ef9 (git): pathname: Improve `absolute?` tests along with `relative?` tests
Check that these two methods opposite always. nobu (Nobuyoshi Nakada)
11:31 AM Revision 67e14b1a (git): pathname: Refine `del_trailing_separator` tests for the common cases
nobu (Nobuyoshi Nakada)
10:27 AM Revision 6c140117 (git): [ppc64le] Add ELFv2 global entry prologue to coroutine_transfer
The hand-written `coroutine_transfer` in `coroutine/ppc64le/Context.S`
lacks the ELFv2 ABI global entry prologue. When the function is reached
via the PLT (lazy resolution path), r2 (TOC pointer) is left pointing
at whatever the resolver...
Piotr Kubaj
10:21 AM Revision efd35db3 (git): Make `rb_load_entrypoint` accept two arguments directly
`rb_load_entrypoint` is used only by `rb_box_load`; it checks that the
argument has two-elements (implicitly assuming it is an array),
extracts its contents, and then simply discards the argument.
nobu (Nobuyoshi Nakada)
09:40 AM Revision 44faeab7 (git): test-syntax-suggest is not working with mswin environment
hsbt (Hiroshi SHIBATA)
09:40 AM Revision 0f7f4278 (git): Make sync script work correctly with Windows-style newlines
I'm almost certain nobody is actually running this script on Windows,
but the tests for it do run during `nmake check`, and they fail at least
on my git configuration.
The $ anchor doesn't match \r\n with git's -E regex matching, so we ...
KJ Tsanaktsidis
09:40 AM Revision f392576d (git): Add tarball-test workflow for snapshot tarball CI
Port the daily snapshot tarball pipeline from ruby/actions into
ruby/ruby so the tarball build and per-OS tests run on every push and
pull request. The make-snapshot composite action gains a srcdir input so
the same logic can either clon...
hsbt (Hiroshi SHIBATA)
09:08 AM Revision e8f7de2d (git): Add tarball-test workflow for snapshot tarball CI
Port the daily snapshot tarball pipeline from ruby/actions into
ruby/ruby so the tarball build and per-OS tests run on every push and
pull request. The make-snapshot composite action gains a srcdir input so
the same logic can either clon...
hsbt (Hiroshi SHIBATA)
09:08 AM Revision 0afda39a (git): Add tarball-test workflow for snapshot tarball CI
Port the daily snapshot tarball pipeline from ruby/actions into
ruby/ruby so the tarball build and per-OS tests run on every push and
pull request. The make-snapshot composite action gains a srcdir input so
the same logic can either clon...
hsbt (Hiroshi SHIBATA)
08:25 AM Revision 9af2c552 (git): Run test-bundler-parallel on macos-15 and pin macos-15-intel to check
Promote test-bundler-parallel from a macos-14 include entry into the
base test_task list so macos-15 picks it up too, and limit
macos-15-intel to a single check job via include. The Intel runner is
slower and noisier; running only check ...
hsbt (Hiroshi SHIBATA)
08:25 AM Revision 2c8d3e16 (git): Derive archname and branch-label from a single env.BRANCH
Cherry-picking tarball-test.yml to maintenance branches previously
required editing six places (four archname literals, branch-label, and
the Materialize step). Route everything through env.BRANCH on the
tarball job and expose it via out...
hsbt (Hiroshi SHIBATA)
08:25 AM Revision e65d7579 (git): Promote archname to an explicit composite input
The composite action previously read $archname from the caller's job
env, leaving the dependency implicit. Declare archname as a required
input and pass it via with: so the action is self-contained and the
linkage is visible at the call ...
hsbt (Hiroshi SHIBATA)
08:25 AM Revision 540ffb4a (git): Forcely -> Forcibly
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> hsbt (Hiroshi SHIBATA)
08:25 AM Revision 07e79c38 (git): Run tarball-test on a daily schedule and gate Slack on it
Add a daily 18:30 UTC schedule trigger to match the existing ruby/actions
snapshot cron, and limit the Slack failure notifications in the reusable
workflows to schedule runs. PRs and merge_group runs are still gated by
the workflow's CI ...
hsbt (Hiroshi SHIBATA)
08:25 AM Revision 942f45b2 (git): Pass inputs through env to avoid template injection
zizmor flags inline `${{ inputs.X }}` expansions inside run scripts as
template-injection errors. Reusable workflow inputs come from the
in-repo caller and are trusted, but routing them through env avoids the
class of mistake entirely an...
hsbt (Hiroshi SHIBATA)
08:25 AM Revision 11465260 (git): Materialize local master branch before make-snapshot
tool/make-snapshot reads HEAD via tool/lib/vcs.rb#_get_revisions and,
on detached checkouts (pull_request, merge_group), parses
"(HEAD detached at <ref>)" into branch name "pull/N/merge" which then
breaks `git clone -b` in the export ste...
hsbt (Hiroshi SHIBATA)
08:25 AM Revision bc8fc5da (git): Add tarball-test workflow for snapshot tarball CI
Port the daily snapshot tarball pipeline from ruby/actions into
ruby/ruby so the tarball build and per-OS tests run on every push and
pull request. The make-snapshot composite action gains a srcdir input so
the same logic can either clon...
hsbt (Hiroshi SHIBATA)
07:52 AM Revision ed695b61 (git): windows: Use the default vcpkg root
nobu (Nobuyoshi Nakada)
07:52 AM Revision 1e5aa54a (git): windows: Skip installing vcpkg if manifest mode is already available
nobu (Nobuyoshi Nakada)
07:52 AM Revision f0fa0bdd (git): windows: Extract new env lines by pwsh
Stop using uutils-coreutils that fails to install on the arm64-windows
runner.
nobu (Nobuyoshi Nakada)
07:39 AM Revision 399727de (git): Fix duplicate assertion in test_metaclass
The final assertion of test_metaclass was identical to the one on
line 161. Correcting to metametaclass_method_b.
Sampo Kuokkanen
02:42 AM Revision 37fe088e (git): [ruby/strscan] [DOC] Doc for StringScanner#scan_integer
(https://github.com/ruby/strscan/pull/206)
Came here to fix a broken link (second pattern generated a bogus link);
stayed to add examples and generally brighten.
https://github.com/ruby/strscan/commit/32cc23934c
burdettelamar (Burdette Lamar)
01:51 AM Revision 171cb092 (git): Remove assumption that strings are NUL-terminated
nobu (Nobuyoshi Nakada)
01:19 AM Revision e846e51d (git): Fix out-of-bounds read for empty strings
Fix for GH-15898. nobu (Nobuyoshi Nakada)
01:08 AM Revision 90ed85f9 (git): Fix UAF in IO::Buffer#^ when self or mask is an invalidated slice
`io_buffer_xor` accessed `buffer->base` and `mask_buffer->base` directly without validating that the buffers were still live. A slice whose parent had been freed retained its stale base pointer, so calling `^` on it caused a UAF.
Use `i...
himura467 (Akito Shitara)
12:43 AM Revision f0addda2 (git): Revert "Use `type` instead of `cat` on Windows"
This reverts commit 50c5b9a19f4c2851d1ae766b6728ca1ab52d6701.
Commit miss.
nobu (Nobuyoshi Nakada)
12:03 AM Revision 50c5b9a1 (git): Use `type` instead of `cat` on Windows
nobu (Nobuyoshi Nakada)

05/18/2026

10:22 PM Bug #22073 (Third Party's Issue): Ruby 3.4.9 segfaults when loading native default gems compiled on Ubuntu 26.04 (GCC 15.2); Ruby 4.0.3 unaffected on same system
Thanks for reporting back! alanwu (Alan Wu)
08:36 PM Bug #22073: Ruby 3.4.9 segfaults when loading native default gems compiled on Ubuntu 26.04 (GCC 15.2); Ruby 4.0.3 unaffected on same system
Update / Resolution:
After further investigation, I was able to identify the root cause. The issue was not with Ruby 3.4.9, GCC 15.2, or Ubuntu 26.04 itself.
My home directory is mounted with eCryptfs (Ubuntu's home directory encry...
taq (Eustaquio Rangel)
07:15 PM Bug #22073: Ruby 3.4.9 segfaults when loading native default gems compiled on Ubuntu 26.04 (GCC 15.2); Ruby 4.0.3 unaffected on same system
Seems the Ubuntu build system is broken after upgrading. I tried to compile Neovim from sources and it segfaults too. Testing on the fresh VM, it works. taq (Eustaquio Rangel)
05:33 PM Bug #22073: Ruby 3.4.9 segfaults when loading native default gems compiled on Ubuntu 26.04 (GCC 15.2); Ruby 4.0.3 unaffected on same system
I had an idea here and installed a fresh Ubuntu 26.04 copy on a new VM, and it worked!
```
taq@taq2604:~$ rvm use 3.4.9
Using /home/taq/.rvm/gems/ruby-3.4.9
taq@taq2604:~$ ruby -v
ruby 3.4.9 (2026-03-11 revision 76cca827ab) +PRI...
taq (Eustaquio Rangel)
04:03 PM Bug #22073: Ruby 3.4.9 segfaults when loading native default gems compiled on Ubuntu 26.04 (GCC 15.2); Ruby 4.0.3 unaffected on same system
Check this out:
`❯ rvm use ruby-4.0.4
Using /home/taq/.rvm/gems/ruby-4.0.4
❯ irb
4.0.4 :001 > exit
❯ gem install bundler
Fetching bundler-4.0.11.gem
Successfully installed bundler-4.0.11
Parsing documentation for bundler-4....
taq (Eustaquio Rangel)
03:56 PM Bug #22073: Ruby 3.4.9 segfaults when loading native default gems compiled on Ubuntu 26.04 (GCC 15.2); Ruby 4.0.3 unaffected on same system
Uh-oh ... tried to install 4.0.4 and ... same behaviour. taq (Eustaquio Rangel)
03:33 PM Bug #22073 (Third Party's Issue): Ruby 3.4.9 segfaults when loading native default gems compiled on Ubuntu 26.04 (GCC 15.2); Ruby 4.0.3 unaffected on same system
Hello, I'm reporting a reproducible issue on Ruby 3.4.9 on a freshly upgraded Ubuntu 26.04 LTS. Please let me know if you'd prefer this as a comment on #21655 instead.
On Ubuntu 26.04 LTS, Ruby 3.4.9 produces unusable binaries when co...
taq (Eustaquio Rangel)
09:16 PM Revision 7e8d94de (git): [DOC] Remove reference to `F` format specifier
There is no such thing:
```rb
irb(main):001> sprintf("%F", 123)
(irb):1:in 'Kernel#sprintf': malformed format string - %F (ArgumentError)
```
Earlopain (Earlopain _)
09:13 PM Bug #21844: Inconsistent ArgumentError message for Data::define.new
@nobu Was it intentional to keep accepting `String` and `to_str` kwargs in addition to Symbols?
From what matz said above I would expect only Symbols are accepted, which would be valuable to optimize `Data#initialize` better.
Eregon (Benoit Daloze)
05:01 PM Revision 4351ee96 (git): ZJIT: StringExact/NilClass for GetSpecialSymbol and GetSpecialNumber (#17012)
According to `rb_reg_nth_match`, `rb_reg_match_pre(post/last)`,
`GetSpecialSymbol` and `GetSpecialNumber` always returns `StringExact` or `NilClass`.
Fix `infer_type` to `StringExact|NilClass` instead of `BasicObject`.
B6
04:59 PM Revision 87117740 (git): [DOC] Improve docs for Binding#eval
peterzhu2118 (Peter Zhu)
03:57 PM Revision f57fadb5 (git): ZJIT: Split test_dont_inline_integer_xor_with_bignum_or_boolean (#16993)
When a single #[test] function holds multiple assert_snapshot! calls, only
the first one is updated per cargo-insta run, so updating all of them takes
multiple zjit-test -> zjit-test-update cycles. Splitting into one snapshot
per test le...
k0kubun (Takashi Kokubun)
03:53 PM Revision 8d170ee4 (git): ZJIT: Fix a counter name for JITFrame writes (#16994)
k0kubun (Takashi Kokubun)
03:33 PM Revision 143b6529 (git): Remove warning about sequence points in GCC
SIZED_REALLOC_N already assigns to its first argument, and the double
assignment causes two writes to the same struct without a sequence
point, which is undefined behavior.
gc.c: In function 'rb_gc_register_address':
gc.c:3758:3...
etienne (Étienne Barrié)
02:10 PM Revision 26ee2c2e (git): Fix Method/UnboundMethod for refinement psuedo-zsuper methods
fafb55877aaf34592278eb3ef9ba3f61473d0a56 fixed issues with
refinement zsuper methods by converting them to a cfunc that calls
super. This changes Method creation to recognize the cfunc used
and skip those methods just as regular zsuper m...
jeremyevans (Jeremy Evans)
10:06 AM Revision e4e1c92a (git): Fix cdhash induced crash in `iseq_data_to_ary`
Followup: https://github.com/ruby/ruby/pull/17016
`cdhash` is no longer a RHash, also its values are no
longer boxed.
byroot (Jean Boussier)
05:58 AM Revision d036506b (git): Stop boxing cdhash offsets
Now that they're no longer a RHash instance, we don't
have to box the offsets, we can directly srore the raw
values, and stop marking them.
byroot (Jean Boussier)
05:58 AM Revision 99dc513d (git): Use IMEMO to store `cdhash`
RHash isn't a good fit for storing `cdhash` as this force to allow
arbitrary hash types into RHash, which doesn't work with AR tables.
It also cause the cdhash to be larger than needed.
byroot (Jean Boussier)
05:42 AM Revision b38f133c (git): Constify `memory_xor` and `memory_not`
nobu (Nobuyoshi Nakada)
02:08 AM Feature #22060 (Closed): Improve Pathname by migrating internal methods to pathname.c
https://github.com/ruby/ruby/pull/16907 has been merged. hsbt (Hiroshi SHIBATA)
01:31 AM Revision 95626e3a (git): Fix UAF in IO::Buffer#| when self or mask is an invalidated slice
`io_buffer_or` accessed `buffer->base` and `mask_buffer->base` directly without validating that the buffers were still live. A slice whose parent had been freed retained its stale base pointer, so calling `|` on it caused a UAF.
Use `io...
himura467 (Akito Shitara)
12:34 AM Revision 3f51506c (git): [ruby/rubygems] Remove pessimistic versioning in gem command output
Switch examples to use `>=2` instead of `~>2.0.0` (which is really
terrible as you are limited to 2.0.x versions).
For the help output, show a simpler example with a single version
restriction, before an example with multiple version re...
jeremyevans (Jeremy Evans)

05/17/2026

08:54 PM Revision 837f6843 (git): st.c: Store `st_table->bins` at the end of `st_table->entries`
Same optimization that was applied to `set_table` in
85c52079aa35a1d2e063a5b40eebe91701c8cb9e
This saves one pointer per `st_table`.
Now that GC support 64B slots, if we can save another 8B
either in `st_table` or in `struct RHash`, has...
byroot (Jean Boussier)
08:20 PM Revision cfff91a3 (git): [ruby/mmtk] Move rb_gc_obj_suffix to gc.h
https://github.com/ruby/mmtk/commit/40053354bd peterzhu2118 (Peter Zhu)
06:09 PM Revision 84df2383 (git): * remove trailing spaces. [ci skip]
git[bot]
06:09 PM Revision 74c3696d (git): Add missing debug counter for imemo_subclasses
byroot (Jean Boussier)
05:15 PM Revision aed64ade (git): vm_core.h: rb_vm_struct make global_object_list an array
Instead of a linked list. Should be both more compact and
faster to iterate.
Also fix reporting its memory size.
byroot (Jean Boussier)
05:15 PM Revision 5eb42841 (git): Stop using `rb_class_path_cached`, and deprecate it.
That API made sense before b00f280d4b9569e7153365d7e1c522b3d6b3c6cf
as finding a module name was costly, but it now is a very cheap
operation, and that function is now just an outdated alias.
byroot (Jean Boussier)
01:10 PM Bug #22072 (Closed): [BUG] should have cvar cache entry
Applied in changeset commit:git|6bc1aa31ccf39837bb0678da093b82f86a6534eb.
----------
[Bug #22072] Fix rb_cvar_set for multi-Ractor
rb_cvar_set breaks the RCLASS_CVC_TBL because it creates a new cvc_tbl but
forgets to copy the contents ...
peterzhu2118 (Peter Zhu)
02:08 AM Bug #22072: [BUG] should have cvar cache entry
Thank you for this bug report. Using the seed in the crashing runs you have linked, I was able to reliably reproduce the issue. I was able to [create a minimal reproduction and have a fix in this PR](https://github.com/ruby/ruby/pull/170... peterzhu2118 (Peter Zhu)
01:09 PM Revision 6bc1aa31 (git): [Bug #22072] Fix rb_cvar_set for multi-Ractor
rb_cvar_set breaks the RCLASS_CVC_TBL because it creates a new cvc_tbl but
forgets to copy the contents over. This causes the following script to
crash:
r = Ractor.new {}
module Foo
def self.foo = @@foo
end
Foo.c...
peterzhu2118 (Peter Zhu)
11:32 AM Revision c17d5b05 (git): Extract bundled-gem C extensions before configuring exts (#16973)
st0012 (Stan Lo)
05:05 AM Feature #21857: Introduce to_proc pattern
I understand the motivation, but I'm still not fully convinced that this particular use case is enough to justify introducing dedicated syntax.
There are similar requests as well, such as wanting to match based on `respond_to?`. It migh...
ktsj (Kazuki Tsujimoto)
03:47 AM Revision 5037a320 (git): windows: Use the default vcpkg root
nobu (Nobuyoshi Nakada)
03:39 AM Revision 716be73e (git): Add source_ref_or_sha
naruse (Yui NARUSE)
01:14 AM Revision a4a311d1 (git): windows: Skip installing vcpkg if manifest mode is already available
nobu (Nobuyoshi Nakada)
01:14 AM Revision da1bc282 (git): windows: Extract new env lines by pwsh
Stop using uutils-coreutils that fails to install on the arm64-windows
runner.
nobu (Nobuyoshi Nakada)
12:18 AM Revision aa29a6a7 (git): Revert GH-17002
- Skip Windows 11 ARM CI for now
commit:ba43e07c12093273e46630c55e93c7491dbbd372.
- Unlock uutils-coreutils version
commit:ded07a7d929dea4457e1c5c1466f34e7f5a8cd46.
nobu (Nobuyoshi Nakada)

05/16/2026

10:01 PM Revision 71749b88 (git): Always define RB_GC_OBJ_HAS_SUFFIX
peterzhu2118 (Peter Zhu)
10:01 PM Revision 08f2bc1d (git): [DOC] Tweaks for Pathname#children
burdettelamar (Burdette Lamar)
09:49 PM Revision 5db2323f (git): [DOC] Remove information on Set#to_set deprecated arguments
Support for this was removed. jeremyevans (Jeremy Evans)
08:06 PM Revision ba43e07c (git): Skip Windows 11 ARM CI for now
It's failing with:
Get-Command: C:\Users\runneradmin\scoop\apps\scoop\current\lib\install.ps1:191
Line |
191 | $bin = (Get-Command $target).Source
| ~~~~~~~~~~~~~~~~~~~
| The...
peterzhu2118 (Peter Zhu)
08:06 PM Revision ded07a7d (git): Unlock uutils-coreutils version
Version 0.5.0 is failing on CI with the following error. Maybe unlocking
the version will fix it?
Get-Command: C:\Users\runneradmin\scoop\apps\scoop\current\lib\install.ps1:191
Line |
191 | $bin = (Get-Command $...
peterzhu2118 (Peter Zhu)
07:57 PM Feature #18959 (Closed): Handle gracefully nil kwargs eg. **nil
I believe this can be closed now that https://bugs.ruby-lang.org/issues/20064 was implemented Earlopain (Earlopain _)
07:34 PM Revision ec4954c1 (git): [DOC] Tweaks for Pathname#cleanpath
burdettelamar (Burdette Lamar)
07:30 PM Revision fb3a8063 (git): [DOC] Tweaks for Pathname#chown
burdettelamar (Burdette Lamar)
07:26 PM Revision 8f0c2ee8 (git): [DOC] Tweaks for Pathname.chmod
burdettelamar (Burdette Lamar)
07:25 PM Revision c4df75dc (git): Remove trailing space
burdettelamar (Burdette Lamar)
07:25 PM Revision 3fbd1c8b (git): [DOC] Tweaks for Pathname#chardev?
burdettelamar (Burdette Lamar)
07:22 PM Revision 21cee84b (git): [DOC] Tweaks for Pathname#blockdev?
burdettelamar (Burdette Lamar)
05:39 PM Bug #22071 (Closed): super in method in module that is refined results in NoMethodError
Applied in changeset commit:git|9736b7ab56c87b589b8c8a638a019b6bbb19b127.
----------
Prohibit super in refined module method
Before, this super could result in a call to a method in BasicObject
(or a module included in or prepended to ...
jeremyevans (Jeremy Evans)
06:23 AM Bug #22071: super in method in module that is refined results in NoMethodError
shugo (Shugo Maeda) wrote in #note-4:
> It seems reasonable except that `RCLASS_INCLUDER(me->defined_class)` is better than `((struct RClass_and_rb_classext_t*)me->defined_class)->classext.as.iclass.includer`.
Thank you. I updated th...
jeremyevans0 (Jeremy Evans)
12:24 AM Bug #22071: super in method in module that is refined results in NoMethodError
jeremyevans0 (Jeremy Evans) wrote in #note-3:
> ```diff
> ...
Thank you.
It seems reasonable except that `RCLASS_INCLUDER(me->defined_class)` is better than `((struct RClass_and_rb_classext_t*)me->defined_class)->classext.as.iclass.in...
shugo (Shugo Maeda)
05:38 PM Revision 9736b7ab (git): Prohibit super in refined module method
Before, this super could result in a call to a method in BasicObject
(or a module included in or prepended to BasicObject), or a call
to method_missing for the receiver's class.
This explicitly disallows the use of super in such a case,...
jeremyevans (Jeremy Evans)
02:11 PM Revision ad141554 (git): Move GC object suffix to gc.h
peterzhu2118 (Peter Zhu)
02:09 PM Revision 4c0b5717 (git): ZJIT: Remove dead SideExitReasons
a5-stable
01:18 PM Revision 70a976bb (git): [DOC] Tweaks for Pathname#birthtime
burdettelamar (Burdette Lamar)
01:18 PM Revision 1a0bf682 (git): [DOC] Tweaks for Pathname#absolute? (#16980)
burdettelamar (Burdette Lamar)
08:00 AM Bug #22058: {Method,InstanceMethod}#super_method doesn't work correctly for refined method with refinements for method active in the caller's scope
It took a lot of work, but I was able to fix `Method#super_method` to return the same method that `super` would call when refinements are used: https://github.com/ruby/ruby/pull/16997
I'm not positive it handles every case correctly, ...
jeremyevans0 (Jeremy Evans)
12:09 AM Bug #22058: {Method,InstanceMethod}#super_method doesn't work correctly for refined method with refinements for method active in the caller's scope
jeremyevans0 (Jeremy Evans) wrote in #note-10:
> @shugo Thank you, I think I finally understand. After the first refinement method is called, the caller's scope no longer matters, because each `super` call site considers the refinements...
shugo (Shugo Maeda)
06:52 AM Revision 03093ba4 (git): Bundled gem extensions are out of scope of update-deps
Follow up of commit d5c5fcb80a432e2078139c460230dc7952216c35.
`target` may be the basename only, skip all rules under bundled gem.
nobu (Nobuyoshi Nakada)
04:16 AM Revision 3edf47de (git): Fix for zizmor
nobu (Nobuyoshi Nakada)
02:53 AM Bug #21789 (Closed): IO#flush doesn't invoke fiber scheduler io_write hook
The linked PR was merged. ioquatix (Samuel Williams)
02:22 AM Revision 0cebfe94 (git): Use setup/ubuntu action for cross-compiling
nobu (Nobuyoshi Nakada)
02:09 AM Revision a1426029 (git): Extract setup/baseruby
nobu (Nobuyoshi Nakada)
02:09 AM Revision b2db5a9d (git): baseruby does not need tests and docs
nobu (Nobuyoshi Nakada)
02:06 AM Revision 30bb8246 (git): Ignore the previous commit [ci skip]
nobu (Nobuyoshi Nakada)
01:59 AM Revision 7480cd8d (git): Revert "[DOC] Remove unnecessary require" [ci skip]
This reverts commit bf01f6ae89a95d8f5572e050facfe311c8c28aaf, that was
an accidental commit by mistake.
nobu (Nobuyoshi Nakada)
01:34 AM Revision f315ca67 (git): [ruby/mmtk] Respect alignment in rb_mmtk_alloc_fast_path
https://github.com/ruby/mmtk/commit/9772a1d30a peterzhu2118 (Peter Zhu)
01:25 AM Bug #22070: `Thread.each_caller_location(1, 1)` segfaults when called from a cfunc
Thank you for creating PRs. Merged into `ruby_3_4` at https://github.com/ruby/ruby/commit/0dcf36db7b22b0eac26281cb7b9b0f1f1b85f374 nagachika (Tomoyuki Chikanaga)
01:25 AM Revision 0dcf36db (git): [Bug #22070] Fix segfault in `Thread.each_caller_location`
Alexander Momchilov
01:24 AM Bug #22069: Backport openssl 3.2.4/3.3.3/4.0.2
Thank you for creating PR. merged into r`ruby_3_4` at https://github.com/ruby/ruby/commit/b1420a81f92197844ae91fb7e85f1e0fce6f6433 nagachika (Tomoyuki Chikanaga)
01:23 AM Revision b1420a81 (git): Merge openssl-3.3.3
The changes can be found at:
https://github.com/ruby/openssl/compare/v3.3.2...v3.3.3
rhenium (Kazuki Yamaguchi)
01:23 AM Revision 08a3e58c (git): Merge openssl-3.3.2
The changes can be found at:
https://github.com/ruby/openssl/compare/v3.3.1...v3.3.2
rhenium (Kazuki Yamaguchi)
12:14 AM Revision a4c655e2 (git): [DOC] Update refinement documentation
This removes the discussion of included modules in refinements,
since support for that was removed in Ruby 3.2.
This switches the method lookup description to be ancestor-based
instead of class-based, so it better reflects how the proce...
jeremyevans (Jeremy Evans)

05/15/2026

09:45 PM Revision c1f48f4a (git): [DOC] Improve docs for Module#module_eval
peterzhu2118 (Peter Zhu)
09:10 PM Revision 9bd9f262 (git): [DOC] Fix typos and wording in Time RDoc (#16986)
Stefan Friesel
08:04 PM Bug #22058: {Method,InstanceMethod}#super_method doesn't work correctly for refined method with refinements for method active in the caller's scope
@shugo Thank you, I think I finally understand. After the first refinement method is called, the caller's scope no longer matters, because each `super` call site considers the refinements in effect at that `super` call site. You cannot u... jeremyevans0 (Jeremy Evans)
02:38 AM Bug #22058: {Method,InstanceMethod}#super_method doesn't work correctly for refined method with refinements for method active in the caller's scope
jeremyevans0 (Jeremy Evans) wrote in #note-8:
> > > I think option 2 makes more sense, but it requires that Method/InstanceMethod objects for refined methods keep a reference to the scope in which they were created
> ...
`Kernel#method...
shugo (Shugo Maeda)
07:44 PM Revision 985fa1bd (git): ZJIT: Share a single JITFrame across all C method frames (#16988)
* ZJIT: Share a single JITFrame across all C method frames
Replace the per-call JITFrame::new_cfunc allocation in gen_push_frame
with a sentinel value (ZJIT_JIT_RETURN_C_FRAME) stored in cfp->jit_return.
CFP_ZJIT_FRAME now returns a poi...
k0kubun (Takashi Kokubun)
06:28 PM Revision 547a7b8d (git): [ruby/prism] Clarify the documentation of -x, it always searches a
shebang that includes "ruby"
(https://github.com/ruby/prism/pull/4110)
* Clarify the documentation of -x, it always searches a shebang that includes "ruby"
* Update one more occurence
---------
https://github.com/ruby/prism/commit/0c...
Eregon (Benoit Daloze)
06:15 PM Bug #22071: super in method in module that is refined results in NoMethodError
shugo (Shugo Maeda) wrote in #note-1:
> Refinements for modules were initially prohibited, and were allowed in [Feature #12534] while `super` was still prohibited. Supporting `super` in a refinement for a module would go beyond a bug fi...
jeremyevans0 (Jeremy Evans)
04:50 AM Bug #22071 (Assigned): super in method in module that is refined results in NoMethodError
shugo (Shugo Maeda)
04:49 AM Bug #22071: super in method in module that is refined results in NoMethodError
Refinements for modules were initially prohibited, and were allowed in [Feature #12534] while `super` was still prohibited. Supporting `super` in a refinement for a module would go beyond a bug fix, so I think it should be discussed as a... shugo (Shugo Maeda)
05:26 PM Feature #22068: Adding post-quantum cryptography (PQC) support across Ruby standard libraries
hsbt (Hiroshi SHIBATA) wrote in #note-4:
> Thanks for your detailed summary. I will handle rubygems and bundler.
Thanks!
jaruga (Jun Aruga)
05:26 PM Feature #22068: Adding post-quantum cryptography (PQC) support across Ruby standard libraries
> As I heard from my colleagues working for OpenSSL, that SLH-DSA is not ready to be used, we can ignore SLH-DSA for now.
Sorry, the above was wrong or outdated information.
SLH-DSA is ready to use for signature use case (but not for...
jaruga (Jun Aruga)
10:49 AM Feature #22068: Adding post-quantum cryptography (PQC) support across Ruby standard libraries
Thanks for your detailed summary. I will handle rubygems and bundler. hsbt (Hiroshi SHIBATA)
04:58 PM Bug #22059: make -j problem in dtrace build
I've committed the attached patch to pkgsrc, which so far seems to fix the problem for me. wiz (Thomas Klausner)
02:22 PM Bug #22072 (Closed): [BUG] should have cvar cache entry

Hi! I have a CI build for my project that runs on Ruby 4.0.4, and it has recently started _sometimes_ segfaulting with this error: "".
I have seen failures in two different spots:
- In the middle of tests:
```
/home/runne...
rmosolgo (Robert Mosolgo)
10:58 AM Revision 11de89ca (git): Reject `END { next } ` as well
Followup for https://bugs.ruby-lang.org/issues/20409 Earlopain (Earlopain _)
09:11 AM Bug #19172: `ruby_thread_has_gvl_p` is innacurate sometimes -- document or change?
The implementation is still the same as of today:
https://github.com/ruby/ruby/blob/4d87d43b01dbb312eb1ff5fbbc6c9f33218d91a2/thread.c#L2100-L2115
Meanwhile, `ruby_thread_has_gvl_p()` became a public API since #20877 ([commit](https:/...
Eregon (Benoit Daloze)
05:15 AM Revision 4d87d43b (git): Drop rbs require in rdoc-srcdir (#16983)
This is currently blocking Ruby's doc generation:
https://github.com/ruby/actions/actions/runs/25895616458/job/76107951475
We'll need to make rbs work for the process so we can adopt the rbs-integrated
RDoc. But for now let's drop it to...
st0012 (Stan Lo)
03:24 AM Revision 9b747f5e (git): test_box.rb: extend timeout for Windows CI (#16963)
test/ruby/test_box.rb: extend timeout for slow Windows CI
The default 10-second assert_separately timeout is too tight for
test_calling_root_box_methods_does_not_change_user_boxes_newly_created
on Windows CI, where the subprocess comple...
k0kubun (Takashi Kokubun)
02:27 AM Revision b5038ac1 (git): Bump taiki-e/install-action
Bumps the github-actions group with 1 update in the / directory: [taiki-e/install-action](https://github.com/taiki-e/install-action).
Updates `taiki-e/install-action` from 2.77.7 to 2.78.0
- [Release notes](https://github.com/taiki-e/i...
dependabot[bot]
01:35 AM Revision 57a02ad6 (git): ZJIT: Fix C-call preparation for backref/specialobject (#16974)
k0kubun (Takashi Kokubun)
12:58 AM Revision 2552db04 (git): Fix UAF in IO::Buffer#& when self or mask is an invalidated slice
himura467 (Akito Shitara)
 

Also available in: Atom