Project

General

Profile

Activity

From 03/10/2026 to 03/16/2026

Today

06:34 AM Revision 9228a130 (git): [ruby/uri] Use `PARSER` instead of `DEFAULT_PARSER` in `URI.join`
I changed to use `PARSER` instead of `DEFAULT_PARSER` with #161,
but I missed to fix `URi.join`. This PR fixes it.
https://github.com/ruby/uri/commit/85e1499b2c
y-yagi (Yuji Yaginuma)
06:33 AM Bug #21934: Prism and parse.y inconsistency in command call used with pattern match
@kddnewton @tompng Can we close this ticket? mame (Yusuke Endoh)
06:29 AM Feature #21929: Add configure script options for instrumenting Rust builds
@alanwu Can we close this? https://github.com/ruby/ruby/pull/15695 is already merged. mame (Yusuke Endoh)
06:21 AM Bug #21918 (Assigned): fiber scheduler: fiber interrupt triggers for IOs that haven't been closed
mame (Yusuke Endoh)
06:19 AM Bug #21883 (Assigned): IO::Buffer can be unlocked and freed by another thread during syscall
mame (Yusuke Endoh)
06:18 AM Bug #21880 (Closed): The ultra_safe mode of pstore bundled with Ruby 4.0 is broken.
mame (Yusuke Endoh)
02:49 AM Revision 2fc3013e (git): Bump the github-actions group across 1 directory with 3 updates
Bumps the github-actions group with 3 updates in the / directory: [ruby/setup-ruby](https://github.com/ruby/setup-ruby), [actions-rust-lang/setup-rust-toolchain](https://github.com/actions-rust-lang/setup-rust-toolchain) and [taiki-e/ins... dependabot[bot]
02:29 AM Revision a0fc03ef (git): [ruby/rubygems] Fix ruby/ruby detection path in bundler spec_helper
The previous path ../../../lib/bundler/bundler.gemspec resolved outside
the repository root in both ruby/ruby and rubygems repos, so the guard
never triggered. Fix to ../../lib/bundler/bundler.gemspec which correctly
detects the ruby/rub...
hsbt (Hiroshi SHIBATA)
02:29 AM Revision 34e34d8f (git): [ruby/rubygems] Disable coverage collection in ruby/ruby repository
Skip SimpleCov setup when running inside the ruby/ruby repository to
avoid interference. Detection uses GEM_COMMAND env var for rubygems
and bundler.gemspec presence for bundler.
https://github.com/ruby/rubygems/commit/48805d47f6
Co-Au...
hsbt (Hiroshi SHIBATA)
02:29 AM Revision c78c9e88 (git): [ruby/rubygems] Always collect code coverage for bundler specs
Configure SimpleCov in spec_helper.rb to collect coverage data for
the bundler test suite, outputting results to the shared coverage
directory.
https://github.com/ruby/rubygems/commit/8af3fe6323
Co-Authored-By: Claude Opus 4.6 <noreply...
hsbt (Hiroshi SHIBATA)
02:29 AM Revision 9e7e9f06 (git): [ruby/rubygems] Use PID in SimpleCov command_name for parallel spec workers
When running bundler specs with parallel_rspec, each worker process
needs a unique command_name to prevent overwriting each other's
coverage results in .resultset.json.
https://github.com/ruby/rubygems/commit/1f3ad726ac
Co-Authored-By:...
hsbt (Hiroshi SHIBATA)
02:29 AM Revision b91e8fbe (git): [ruby/rubygems] Always collect code coverage for rubygems tests
Add coverage_setup.rb loaded via -r flag before rubygems to enable
Coverage tracking of boot files. SimpleCov is configured in helper.rb
to collect coverage data for rubygems test suite.
https://github.com/ruby/rubygems/commit/8eed548e4...
hsbt (Hiroshi SHIBATA)
02:29 AM Revision b6a21d2a (git): [ruby/rubygems] Add simplecov as a development dependency
https://github.com/ruby/rubygems/commit/ca2c5eda12
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
hsbt (Hiroshi SHIBATA)
01:47 AM Revision 64fcb596 (git): [ruby/rubygems] Remove outdated which command isolation workaround
https://github.com/ruby/rubygems/commit/6d4f506390 afurm (Andrii Furmanets)
01:47 AM Revision 62a1ada2 (git): [ruby/rubygems] Fix which command test isolation
https://github.com/ruby/rubygems/commit/0420c70cbf afurm (Andrii Furmanets)

03/15/2026

11:13 PM Revision 8da2777d (git): [ruby/psych] Update SnakeYAML-Engine to 3.0.1
There are two CVEs in Guava, which is a test-scoped dependency of
this library. Guava is not shipped with the library so these CVEs
do not affect users, but the dependency may trigger security tools.
We update to avoid this false positiv...
headius (Charles Nutter)
05:06 PM Feature #21853: Make Embedded TypedData a public API
Eregon (Benoit Daloze) wrote in #note-5:
> also considering there is no safeguard to avoid writing to `DATA_PTR`
One idea to address this (but not the other 2 concerns) would be to raise on `DATA_PTR()` for `RUBY_TYPED_EMBEDDABLE`, a...
Eregon (Benoit Daloze)
02:33 PM Feature #21853: Make Embedded TypedData a public API
One tricky aspect about `RUBY_TYPED_EMBEDDABLE` is if in the `struct` there is a pointer to inside that `struct` then those pointers will become invalid when the object is moved.
Is there a way to handle that correctly to update such poi...
Eregon (Benoit Daloze)
05:06 PM Revision 9e89e5f3 (git): [DOC] Doc for Pathname.new (#16373)
burdettelamar (Burdette Lamar)
02:21 PM Feature #21852: New improved allocator function interface
I'm aware what I propose doesn't solve `Can't support objects of variable width`, i.e. the case for `Thread::Backtrace`.
But AFAIK variable width is only available for core classes (not as public API), and `Thread::Backtrace` is core too...
Eregon (Benoit Daloze)
02:06 PM Feature #21852: New improved allocator function interface
Going further, `Class#safe_initialization` instead of redefining these 3 methods could just set a new `internal_alloc_func` field in RClass (only used by new/dup/clone and can never be read by anything else) + rb_undef_alloc_func().
And...
Eregon (Benoit Daloze)
01:55 PM Feature #21852: New improved allocator function interface
Thinking more about this I think there should be a protocol or an easy way to avoid the allocated-but-uninitialized state completely, which is problematic for classes defined in C but also in Ruby (though Ruby-defined classes will typica... Eregon (Benoit Daloze)
12:47 PM Revision 6297a3bb (git): [DOC] Simplify doc setup (#16393)
* Remove stale entries from `.document` files
`doc/.document` referenced two non-existent directories (`date`, `rdoc`).
`ext/.document` referenced eight extensions that have been moved to
gems: bigdecimal, fiddle, monitor, nkf, racc, r...
st0012 (Stan Lo)
08:53 AM Feature #21953 (Open): Allow accessing unshareable objects within a Ractor-local Ruby Box
### Status
Currently, non-main ractors prohibit access to the following objects to prevent data races:
* Global variables
* Class variables
* Unshareable class instance variables
* Unshareable constants
### Proposal
...
tikkss (Tsutomu Katsube)
08:48 AM Misc #21877: DevMeeting-2026-03-17
* [Feature #21861] C API: expose `ruby_xfree_sized`, `ruby_xrealloc_sized`, etc (byroot)
* C23 added `void free_sized(void *ptr, size_t old_size)`.
* It has both speed and correctness benefits.
* Several common allocators alread...
byroot (Jean Boussier)
05:42 AM Revision ca23c7c4 (git): [ruby/strscan] Do not use C99 style comment [ci skip]
The minimum required ruby version of this library is still 2.4.
C99 has been adopted since ruby 2.7.
https://github.com/ruby/strscan/commit/c50abc95ad
nobu (Nobuyoshi Nakada)
05:42 AM Revision 697eb6d8 (git): [ruby/io-console] Do not use C99 style comment [ci skip]
The minimum required ruby version of this library is still 2.6.
C99 has been adopted since ruby 2.7.
https://github.com/ruby/io-console/commit/f907e5a237
nobu (Nobuyoshi Nakada)
05:36 AM Revision 1e5a4434 (git): [ruby/io-console] Remove no longer used variable
https://github.com/ruby/io-console/commit/d0ee6034a9 nobu (Nobuyoshi Nakada)

03/14/2026

10:19 PM Misc #21877: DevMeeting-2026-03-17
* [Bug #21685] Unnecessary context-switching, especially bad on multi-core machines. (jpl-coconut)
* Ruby exhibits excessive context switching around fast syscalls, which compromises performance. Microbenchmarks (linked from issue and ...
jpl-coconut (Jacob Lacouture)

03/13/2026

11:54 PM Revision 79f7ce74 (git): [DOC] Pathname glob doc
burdettelamar (Burdette Lamar)
07:00 PM Revision 86049a98 (git): [ruby/prism] feat: add `start_line`, `end_line`, `start_column`, `end_column`, and `chop` methods for `Location`
https://github.com/ruby/prism/commit/4258b2ad7e
Co-Authored-By: Kevin Newton <kddnewton@gmail.com>
Seong Yong-ju
05:39 PM Revision ee275b41 (git): Git ignore dump_ast if you are doing an in-place build
kddnewton (Kevin Newton)
04:45 PM Misc #20238 (Closed): Use prism for mk_builtin_loader.rb
Fixed by https://github.com/ruby/ruby/commit/a70dbe1065f58a23a85e576d19e3434e6dd4bb64 kddnewton (Kevin Newton)
04:35 PM Bug #21870: Regexp: Warnings when using slightly overlapping \p{...} classes
I have submitted a patch to Onigmo with the naive strategy (A) as outlined above:
https://github.com/k-takata/Onigmo/pull/175
Contrary to my expectations, it does appear that `/[\p{Word}\p{Alpha}]/` and `/[a-fb-g]/` **do** continue...
jneen (Jeanine Adkisson)
04:03 PM Revision fc16d959 (git): [ruby/prism] Expose parse options to Rust
https://github.com/ruby/prism/commit/0f1500ce92 kddnewton (Kevin Newton)
03:13 PM Revision 17747554 (git): [ruby/prism] Make it possible to lazily deserialize DefNode in Loader.java
* TRUFFLERUBY_METRICS_REPS=5 jt metrics time --experimental-options -e0
For parsing-core:
before: 0.097 0.099 0.092 0.096
after: 0.061 0.063 0.066 0.059
* Remove extra trailing spaces by using `<%-#`.
https://github.com/ruby/pris...
Eregon (Benoit Daloze)
03:00 PM Revision 9246b770 (git): Bump timeout for TestGC#test_finalizer_not_run_with_vm_lock
This test should be redesigned, but increasing the timeout
should probably be good enough for now to not see CI failures related
to it. I can see how this could timeout after 10s.
Failing test after 10s timeout:
https://ci.rvm.jp/result...
Luke Gruber
01:16 PM Revision 30ec9c08 (git): Fix use-after-poison in compile.c and prism_compile.c
Prevent GC from accidentally collecting kddnewton (Kevin Newton)
01:15 PM Revision c0e41097 (git): Speed up memmem on Apple
Apple's libc implementation of memmem is super slow (it is a forked
version of freebsd's that never got vectorized). Instead, we should
fall back to the rolling hash on Apple. In the attached benchmark,
I'm seeing 1.07% slower to 30.34% ...
kddnewton (Kevin Newton)
01:15 PM Revision a70dbe10 (git): Use Prism for mk_builtin_loader.rb
kddnewton (Kevin Newton)
02:39 AM Revision 90f6507e (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.68.26 to 2.68.27
- [Release notes](https://github.com/taiki-e...
dependabot[bot]

03/12/2026

05:00 PM Revision b0754fbd (git): ZJIT: Deduplicate polymorphic send branches by receiver type (#16335)
When lowering polymorphic `opt_send_without_block`, emit at most one branch per receiver type instead of one branch per profile bucket (`class, shape, flags`).
This deduplicates redundant `HasType`/`IfTrue` chains while preserving immed...
Nozomi Hijikata
04:08 PM Revision 1a0e67d3 (git): ZJIT: `::RubyVM::ZJIT.induce_side_exit!` and `induce_compile_failure!`
Tells ZJIT to do a side exit or to fail to compile, useful testing and
for bug reports. We are picky about the syntactic form so we can tell
where the call lands early in the compiler pipeline. The `::` prefix
allows us to interpret it w...
alanwu (Alan Wu)
02:50 PM Revision 3f0e61fe (git): Speed up integer parsing in prism_compile.c
kddnewton (Kevin Newton)
02:50 PM Revision c45f7817 (git): Cache line lookups in prism compiler
kddnewton (Kevin Newton)
02:28 PM Bug #21940: Ruby::Box: `$_` returns stale value due to gvar_tbl caching
I may have another possibly related `Ruby::Box` special-global case.
This may be a separate `$?` / `Process::Status` issue rather than the same
root cause as `$_` or `$~`, since `$?` seems to be thread-local. Still, the
symptom also...
katsyoshi (Katsuyoshi MATSUMOTO)
02:09 PM Bug #21952 (Open): Ruby::Box double free at process exit when `fiddle/import` is required in multiple boxes

I found what looks like a separate `Ruby::Box` bug from the existing `require` and `LoadError` issues such as `#21760`.
This is not a `LoadError` case. I was able to reduce it to a reproducer where requiring `fiddle/import` from mul...
katsyoshi (Katsuyoshi MATSUMOTO)
12:18 PM Feature #21950: Add a built-in CPU-time profiler
> Reducing CPU load can be useful even in tasks containing IO.
Oh absolutely, this is a huge part of my day to day work. But even for this I tend to prefer looking at a WALL report as it include both information. I see no need to ign...
byroot (Jean Boussier)
11:33 AM Feature #21950: Add a built-in CPU-time profiler
Yes, this ticket is about sampling profilers. Sorry for the confusion.
byroot (Jean Boussier) wrote in #note-11:
> Which is an interesting choice, because maybe it's my bias, but I find that CPU-time profiling is really not as common...
osyoyu (Daisuke Aritomo)
10:15 AM Feature #21950: Add a built-in CPU-time profiler
byroot (Jean Boussier) wrote in #note-11:
> But I suspect supporting both isn't that much extra work?
I think it'd be good for this API to be able to say which one it wants (like `StackProf`'s `mode:` kwarg).
Eregon (Benoit Daloze)
10:12 AM Feature #21950: Add a built-in CPU-time profiler
osyoyu (Daisuke Aritomo) wrote in #note-8:
> I don't want the API/output format to restrict what a profiler could emit. I wouldn't say such design is not doable, but careful consideration would be needed.
Careful consideration is exa...
Eregon (Benoit Daloze)
08:41 AM Feature #21950: Add a built-in CPU-time profiler
> it is not about adding a sampling profiler, it is about adding a CPU time profiler that does not sample.
Well, the issue description talk of CPU-time, but it also talk about sampling (`timer_create(3)` etc). So yes, it's a CPU-time ...
byroot (Jean Boussier)
11:46 AM Revision 174b54c4 (git): [ruby/rubygems] Add a Mutex to prevent a bug on Ruby 3.2:
- There are failing tests on Ruby 3.2 due to an expecation that
checks wheter stderr is empty. In this case, stderr outputs a
warning from Ruby "warning: loading in progress, circular require
considered harmful", but this is not tr...
Edouard CHIN
11:46 AM Revision ac3b2377 (git): [ruby/rubygems] Split the download and install process of a gem:
- ### Problem
Bundler awaits for the dependencies of a gem to be download and installed
before it proceeds to downloading and installing the dependency itself.
This creates a bottleneck at the end of the installation process and
...
Edouard CHIN
08:39 AM Revision a3ee27fa (git): Fix `rdoc:%` target for bundled rdoc
nobu (Nobuyoshi Nakada)
08:39 AM Revision 6ba5c3ed (git): outdate-bundled-gems.rb: Keep gemspec files for default gems
nobu (Nobuyoshi Nakada)
08:25 AM Revision 235195f8 (git): [ruby/rubygems] Raise an error when building a gem that has a self reference:
- ### Problem
A gem that has a self-reference in its dependencies would previously
get a warning during `gem build`, saying it's "discouradged".
A gem that includes a self-reference can't be updated due to bundler
filtering it o...
Edouard CHIN
03:56 AM Revision 5c81ba21 (git): [ruby/rubygems] Make SafeYAML.load an alias of safe_load
Using Psych, load was actually more restrictive than safe_load. Using
Gem::YAMLSerializer they were identical. We might as well use the same
path for both methods.
https://github.com/ruby/rubygems/commit/d8d927f889
jhawthorn (John Hawthorn)
03:56 AM Revision d66f8d49 (git): [ruby/rubygems] Update load_yaml test helper to use safe_load
https://github.com/ruby/rubygems/commit/51544ebfd8 jhawthorn (John Hawthorn)
03:56 AM Revision 77507870 (git): [ruby/rubygems] Use safe_load from owner_command
This had been the only user of Gem::SafeYAML.load for a long time. We
might as well be consistent with all other uses and use safe_load.
https://github.com/ruby/rubygems/commit/1b698779f5
jhawthorn (John Hawthorn)
03:56 AM Revision 7db82681 (git): [ruby/rubygems] Unpend owner_command test
https://github.com/ruby/rubygems/commit/227df53bc5 jhawthorn (John Hawthorn)
03:56 AM Revision 0c6972b9 (git): [ruby/rubygems] Restore original SafeYAML.load under Psych
This was changed to unsafe_load with the swap to YAMLSerializer. But
this method did not previously do an unsafe load and we shouldn't
provide that.
https://github.com/ruby/rubygems/commit/37f71c1eac
jhawthorn (John Hawthorn)
03:52 AM Revision 1424201b (git): [ruby/rubygems] Add test for !binary tag in sequence item inline
https://github.com/ruby/rubygems/commit/ba4a4b2b26
Co-authored-by: hsbt <12301+hsbt@users.noreply.github.com>
copilot-swe-agent[bot]
03:52 AM Revision 1c7b2d2b (git): [ruby/rubygems] Support YAML 1.1 !binary tag in YAMLSerializer
Decode base64-encoded values tagged with !binary in mapping keys,
mapping values (both inline and block scalar), and sequence items.
This fixes gem install failures for gems packaged with older RubyGems
that used !binary encoding in chec...
hsbt (Hiroshi SHIBATA)
03:51 AM Revision aab7a55c (git): [ruby/rubygems] Warn when require_relative is used to load compiled extensions during gem build
When a gem has native extensions and uses `require_relative` to load
a path without a corresponding .rb file in the gem, warn that this
will break in RubyGems 4.2, which will stop copying compiled
extensions into the gem's lib directory....
hsbt (Hiroshi SHIBATA)
03:51 AM Revision 93a516dd (git): [ruby/rubygems] Revert DEFAULT_INSTALL_EXTENSION_IN_LIB to true
Many gems created with the default template over the past 6 years use
`require_relative` to load compiled extensions, which breaks when
extensions are not copied into the gem's lib directory. Restore the
default to true for now to mainta...
hsbt (Hiroshi SHIBATA)
02:39 AM Revision f3083308 (git): Bump the github-actions group across 1 directory with 2 updates
Bumps the github-actions group with 2 updates in the / directory: [ruby/setup-ruby](https://github.com/ruby/setup-ruby) and [advanced-security/filter-sarif](https://github.com/advanced-security/filter-sarif).
Updates `ruby/setup-ruby` ...
dependabot[bot]
12:42 AM Revision ad231cdf (git): Windows: Explicitly specify the use of `coreutils` commands
It appears that shims for individual commands are no longer being
created.
nobu (Nobuyoshi Nakada)
12:42 AM Revision efca0f45 (git): Use $LOAD_PATH.replace for safer restoration in test
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> hsbt (Hiroshi SHIBATA)
12:42 AM Revision 9bcd9ba9 (git): Suppress bundled gems warning for subfeatures found outside stdlib [Bug #21828]
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> hsbt (Hiroshi SHIBATA)
12:41 AM Revision 764a245e (git): Fix M:N threads under OpenBSD
OpenBSD requires MAP_STACK for memory regions used as thread stacks.
However it seems to error with "Invalid argument" unless the permissions
include both PROT_READ | PROT_WRITE.
We should be able to satisft this by re-mmapping over our...
jhawthorn (John Hawthorn)
12:38 AM Feature #21700: `IO::Buffer.map`: offset argument is "broken" and needs to be made more useful
I've been using `IO::Buffer.map` on macOS without issues. It's still early days but I wonder why it was failing for you.
https://github.com/socketry/async-utilization/blob/main/lib/async/utilization/observer.rb
ioquatix (Samuel Williams)

03/11/2026

11:49 PM Revision aa604d5a (git): [DOC] Fix indentation in docs for File.path
peterzhu2118 (Peter Zhu)
11:36 PM Revision 943c9cad (git): [DOC] Doc for Pathname.mktmpdir (#16365)
burdettelamar (Burdette Lamar)
07:07 PM Revision 85e434a8 (git): [ruby/prism] Track newlines in character escape sequences
https://github.com/ruby/prism/commit/2e58c52196 kddnewton (Kevin Newton)
07:01 PM Revision da60c907 (git): [ruby/prism] Improve pm_regexp_classify_property perf
https://github.com/ruby/prism/commit/3bdd79257b kddnewton (Kevin Newton)
04:02 PM Feature #21950: Add a built-in CPU-time profiler
The opentelemetry community project includes people from a number of companies building profilers (datadog, google, elastic, polar signals) and it's proposing a new format that's inspired by pprof but tries to solve for some of its short... ivoanjo (Ivo Anjo)
03:56 PM Feature #21950: Add a built-in CPU-time profiler
> conceptually it's like collecting data equivalent to caller_locations efficiently every X milliseconds.
> ...
Unless I've read this issue completely wrong, it is not about adding a sampling profiler, it is about adding a CPU time prof...
headius (Charles Nutter)
02:33 PM Feature #21950: Add a built-in CPU-time profiler
Eregon (Benoit Daloze) wrote in #note-6:
> > I am rather doubtful that CRuby/JRuby/TruffleRuby can share any profiler implementation at all.
> ...
"Profiler implementation" meant (1) the sampling backend and (2) what information would ...
osyoyu (Daisuke Aritomo)
01:40 PM Feature #21950: Add a built-in CPU-time profiler
osyoyu (Daisuke Aritomo) wrote in #note-5:
> I am rather doubtful that CRuby/JRuby/TruffleRuby can share any profiler implementation at all.
They can't share the implementation of gathering backtraces (that's implementation-specific)...
Eregon (Benoit Daloze)
01:37 PM Feature #21950: Add a built-in CPU-time profiler
osyoyu (Daisuke Aritomo) wrote in #note-5:
> I am rather doubtful that CRuby/JRuby/TruffleRuby can share any profiler implementation at all.
I think the opposite, I think it's actually easy to implement such an API on TruffleRuby and...
Eregon (Benoit Daloze)
01:02 PM Feature #21950: Add a built-in CPU-time profiler
Thank you for your comments and input!
Eregon (Benoit Daloze) wrote in #note-4:
> The API should not be under RubyVM, that's CRuby-specific
`RubyVM` being CRuby-specific is actually the exact reason I choosed the place to locate a...
osyoyu (Daisuke Aritomo)
09:30 AM Feature #21950: Add a built-in CPU-time profiler
I think this would be good, and I agree this would avoid several gems reimplementing this in brittle and not portable (e.g. only works on CRuby) ways.
See https://github.com/truffleruby/truffleruby/issues/2044#issuecomment-654848324 for...
Eregon (Benoit Daloze)
08:41 AM Feature #21950: Add a built-in CPU-time profiler
> Any CPU timing in Ruby must also consider JIT improvements over time, and be able to decode things like inlined method calls so that the reported execution time is associated with the correct body of code.
Yes, ZJIT probabaly would ...
osyoyu (Daisuke Aritomo)
01:24 PM Revision d72a0fed (git): Always take th->interrupt_lock in ubf_clear
Patch 08372635f7 fixed a race condition on ubfs, but it's only valid if right after
a call to `ubf_clear`, we assume the ubf function cannot be in the middle of running.
This patch removes an optimization in `ubf_clear` that violates tha...
Luke Gruber
12:22 PM Bug #21828: An incorrect warning message related to `benchmark` is shown when using `benchmark-ips`
Thank you for the quick fix! Eregon (Benoit Daloze)
10:56 AM Bug #21828 (Closed): An incorrect warning message related to `benchmark` is shown when using `benchmark-ips`
Applied in changeset commit:git|679e4069217104f4fe1d887ec48aa8c3537245b2.
----------
Suppress bundled gems warning for subfeatures found outside stdlib [Bug #21828]
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
hsbt (Hiroshi SHIBATA)
09:56 AM Bug #21828: An incorrect warning message related to `benchmark` is shown when using `benchmark-ips`
A main difference between both reproductions are the Gemfile.lock, for the reproduction in the issue description:
```
GEM
remote: https://rubygems.org/
specs:
benchmark-ips (2.14.0)
PLATFORMS
ruby
x86_64-linux
DE...
Eregon (Benoit Daloze)
09:52 AM Bug #21828: An incorrect warning message related to `benchmark` is shown when using `benchmark-ips`
Interestingly it seems fixed for the original reproduction in the issue description, but *not* for the new reproduction of running `benchmark-ips`'s tests. Eregon (Benoit Daloze)
09:46 AM Bug #21828: An incorrect warning message related to `benchmark` is shown when using `benchmark-ips`
Also happens on `4.0-dev` from `ruby-build` (`ruby 4.0.1 (2026-03-10 revision 21f2bbf322) +PRISM [x86_64-linux]`). Eregon (Benoit Daloze)
09:38 AM Bug #21828 (Open): An incorrect warning message related to `benchmark` is shown when using `benchmark-ips`
As I said:
Eregon (Benoit Daloze) wrote in #note-6:
> still a problem on master
I have tried with `ruby 4.1.0dev (2026-03-11T07:46:22Z master c08f977ac7) +PRISM [x86_64-linux]` specifically.
Please try the reproduction before closing.
Eregon (Benoit Daloze)
08:44 AM Bug #21828 (Closed): An incorrect warning message related to `benchmark` is shown when using `benchmark-ips`
The additional changes has been merged. I believe they fixed that.
* https://github.com/ruby/ruby/pull/15908
* https://github.com/ruby/ruby/pull/16154
Please look the merged commit at stable branch at first.
hsbt (Hiroshi SHIBATA)
08:35 AM Bug #21828 (Open): An incorrect warning message related to `benchmark` is shown when using `benchmark-ips`
Re-opening since it's still a problem on master and on 4.0.1, so the fix doesn't seem to work.
Another reproduction from https://github.com/evanphx/benchmark-ips/pull/148 is:
```
git clone git@github.com:evanphx/benchmark-ips.git
cd ...
Eregon (Benoit Daloze)
11:48 AM Feature #21951 (Open): Lazy load error extension gems to speed up boot time
## Summary
I investigate https://github.com/ruby/rubygems/issues/3799 for speed up Ruby's boot time. It depends on the environment, but when gems are included in `GEM_HOME` and user installation. I and Claude found that the most time-...
hsbt (Hiroshi SHIBATA)
10:56 AM Revision 44b99d68 (git): Use $LOAD_PATH.replace for safer restoration in test
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> hsbt (Hiroshi SHIBATA)
10:56 AM Revision 679e4069 (git): Suppress bundled gems warning for subfeatures found outside stdlib [Bug #21828]
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> hsbt (Hiroshi SHIBATA)
09:51 AM Revision 76cca827 (git): Bump v3.4.9
nagachika (Tomoyuki Chikanaga)
07:46 AM Revision c08f977a (git): ZJIT: Add StringEqual HIR and support fold constants (#16106)
Add a `StringEqual` Insn and use it to enable safe constant folding for string equality.
Constant folding uses `chase_insn` to normalize operands. We fold only when it is provably safe:
- both operands resolve to the same SSA value
- bo...
Nozomi Hijikata
06:37 AM Revision 0f2e964e (git): [ruby/rubygems] Configure definitions and YAML status after forked install
https://github.com/ruby/rubygems/commit/80e37bb0a6 hsbt (Hiroshi SHIBATA)
06:37 AM Revision b43c5e99 (git): [ruby/rubygems] bundler/inline: perform installation from a forked child
Unless of course fork isn't available.
Alternate: #7930, #7933
Fix: #7930, #7933
When bundler inline has to install gems, it loads more dependencies than when it
goes through the fast path of all gems being installed.
One of them is `...
byroot (Jean Boussier)
06:37 AM Revision 7132d81d (git): [ruby/rubygems] Reset Gem::Specification and mark inline sources
https://github.com/ruby/rubygems/commit/4ce1510a60 hsbt (Hiroshi SHIBATA)
06:32 AM Revision 944733cc (git): Fix conversion from pointer to integer
`long` and fixnum are not always sufficiently large for pointers. nobu (Nobuyoshi Nakada)
04:58 AM Revision 10cf6f2b (git): Fix up depend
kddnewton (Kevin Newton)
04:45 AM Revision 308afe7c (git): [ruby/prism] Fix reading past end of target names
https://github.com/ruby/prism/commit/1d6a9669dc kddnewton (Kevin Newton)
04:36 AM Revision 5bafa2a8 (git): Added maintainers of embedded core classes
hsbt (Hiroshi SHIBATA)
04:21 AM Revision 99a40509 (git): [ruby/prism] Restructure regexp encoding validation
Move all the logic from prism.c into regexp.c. Now regexp.c does two passes. The first pass scans the raw source to track escape types, non-ASCII literals, and multibyte validity for encoding validation. The second pass scans the unescap... kddnewton (Kevin Newton)
03:54 AM Bug #21856: Massive performance degradation of `rb_obj_free` for `T_CLASS` since Ruby 4.0
I think I've found a solution to this: we can return to the Ruby 3.4 `O(1)` removal, remove box/namespacing from it, and actually make it even simpler by skipping the CLASS -> ICLASS (and ICLASS -> ICLASS) relationship and directly assoc... jhawthorn (John Hawthorn)
02:40 AM Revision 68bf517f (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.68.25 to 2.68.26
- [Release notes](https://github.com/taiki-e...
dependabot[bot]
01:18 AM Revision 7ccd6836 (git): Fix links in globals doc
burdettelamar (Burdette Lamar)

03/10/2026

08:27 PM Bug #21926: Thread#value on popen3 wait thread hangs in finalizer
A note to whoever backports this (which could be me, I'm just waiting ~ 1 week and checking various CIs after the merge):
https://github.com/ruby/ruby/pull/16362 should be backported as well, they are really 1 fix in 2 separate commit...
luke-gru (Luke Gruber)
07:53 PM Revision 3fa74bff (git): ZJIT: Only emit IncrCounter instructions in stats mode (#16330)
* ZJIT: Only emit IncrCounter instructions in stats mode
This cleans up a lot of HIR output when we're not explicitly measuring
counters. They don't generate code when not in stats mode so they are
just HIR clutter.
* ZJIT: Enable stat...
tekknolagi (Maxwell Bernstein)
07:36 PM Feature #21950: Add a built-in CPU-time profiler
Also worth pointing out the ongoing efforts by the JIT team to eliminate artificial stack frames for leaf methods and some core method calls. As more artificial Ruby frames get elided, it will become harder to reconstruct the stack in a ... headius (Charles Nutter)
07:35 PM Feature #21950: Add a built-in CPU-time profiler
> JFR folks have decided to control sampling timing within the runtime to improve accuracy and stability
The other issue with real CPU timing is the heavy responsibility for accurately representing individual methods' CPU times withou...
headius (Charles Nutter)
05:04 PM Feature #21950 (Open): Add a built-in CPU-time profiler
Modern CRuby workloads can consume CPU concurrently across multiple native threads, especially with multiple Ractors and C exts which release the GVL. I'd like to propose the idea of integrating a built-in CPU-time profiler CRuby to enab... osyoyu (Daisuke Aritomo)
01:44 PM Bug #21097 (Closed): `x = a rescue b in c` and `def f = a rescue b in c` parsed differently between parse.y and prism
Applied in changeset commit:git|5b464d079afb4aad88ac9b9e21c6c4a9c3fb5c1d.
----------
[ruby/prism] Fix not binding power in endless methods
[Bug #21097]
Also, parse:
```
x = a rescue b in c
```
as:
```
(x = (a rescue b)) in c
```
a...
kddnewton (Kevin Newton)
01:44 PM Revision 5b464d07 (git): [ruby/prism] Fix not binding power in endless methods
[Bug #21097]
Also, parse:
```
x = a rescue b in c
```
as:
```
(x = (a rescue b)) in c
```
and:
```
def f = a rescue b in c
```
as:
```
(def f = (a rescue b)) in c
```
https://github.com/ruby/prism/commit/7e797f59ae
kddnewton (Kevin Newton)
01:29 PM Revision c1e84dce (git): [ruby/prism] Fix pinned expression binding power
https://github.com/ruby/prism/commit/979251ef06 kddnewton (Kevin Newton)
08:43 AM Revision 78d6c9bf (git): Use sort.exe located in the same directory as comm.exe
Windows does not have comm.exe, but it does have sort.exe. However,
the default Windows sort.exe is always case-insensitive, so its
outputs is not suitable for input to UNIX-like `comm` tool.
nobu (Nobuyoshi Nakada)
07:56 AM Revision 5f725bfa (git): [ruby/rubygems] Treat nil deserialized config as empty
https://github.com/ruby/rubygems/commit/368fc29ce1 hsbt (Hiroshi SHIBATA)
07:56 AM Revision 386ad8b9 (git): [ruby/rubygems] Skip test when Psych unsafe_load is used
https://github.com/ruby/rubygems/commit/2636b4d24a hsbt (Hiroshi SHIBATA)
07:56 AM Revision 83571ba8 (git): [ruby/rubygems] Load rdoc_options and requirements from YAML
https://github.com/ruby/rubygems/commit/20153ebc78 hsbt (Hiroshi SHIBATA)
07:56 AM Revision ca215b76 (git): [ruby/rubygems] bin/rubocop -A
https://github.com/ruby/rubygems/commit/ba8e4ed9ed hsbt (Hiroshi SHIBATA)
07:56 AM Revision f79f6186 (git): [ruby/rubygems] Limit YAML nesting and alias resolutions
https://github.com/ruby/rubygems/commit/d4c5fc58e7 hsbt (Hiroshi SHIBATA)
07:56 AM Revision 92117949 (git): [ruby/rubygems] Restrict platform ivars when deserializing YAML
https://github.com/ruby/rubygems/commit/b8f77e3860 hsbt (Hiroshi SHIBATA)
07:56 AM Revision 9205a6a7 (git): [ruby/rubygems] Add test for gem specification metadata roundtrip
https://github.com/ruby/rubygems/commit/de53449860 hsbt (Hiroshi SHIBATA)
07:56 AM Revision 05dbf2aa (git): [ruby/rubygems] Add YAML roundtrip tests for specs
Cover native extensions and Windows-style paths
Verify files, extensions, and backslash fields are preserved by SafeYAML
https://github.com/ruby/rubygems/commit/5adce1d26d
hsbt (Hiroshi SHIBATA)
07:56 AM Revision c648235e (git): [ruby/rubygems] Handle malformed/unknown YAML Platform fields
https://github.com/ruby/rubygems/commit/e5bcde365f hsbt (Hiroshi SHIBATA)
07:56 AM Revision b84ed328 (git): [ruby/rubygems] Stop normalizing requirements to Array
https://github.com/ruby/rubygems/commit/6b0aa2a2d3 hsbt (Hiroshi SHIBATA)
07:56 AM Revision 01396cd2 (git): [ruby/rubygems] Treat rdoc_options as Hash instead of Array
https://github.com/ruby/rubygems/commit/074e3f7f62 hsbt (Hiroshi SHIBATA)
07:56 AM Revision 5f44db88 (git): [ruby/rubygems] Construct Gem::Platform from cpu/os/version fields
https://github.com/ruby/rubygems/commit/cf566c3079 hsbt (Hiroshi SHIBATA)
07:56 AM Revision cccb275a (git): [ruby/rubygems] Do not sanitize dependency requirements from YAML
https://github.com/ruby/rubygems/commit/cbe57bbbd7 hsbt (Hiroshi SHIBATA)
07:56 AM Revision 009acc74 (git): [ruby/rubygems] Raise on unknown YAML object tags
https://github.com/ruby/rubygems/commit/c29b3b2240 hsbt (Hiroshi SHIBATA)
07:56 AM Revision 25b82e72 (git): [ruby/rubygems] Support YAML 1.2 nulls and fix nil emission
https://github.com/ruby/rubygems/commit/940358f2c2 hsbt (Hiroshi SHIBATA)
07:56 AM Revision f7e6eae3 (git): [ruby/rubygems] Return nil for empty YAML and raise on nil
https://github.com/ruby/rubygems/commit/c091444047 hsbt (Hiroshi SHIBATA)
07:56 AM Revision 56bfa5de (git): [ruby/rubygems] Add yaml_load/yaml_dump helpers and adapt tests
https://github.com/ruby/rubygems/commit/5a422dafb1 hsbt (Hiroshi SHIBATA)
07:29 AM Revision 3071dcf4 (git): Bump zizmorcore/zizmor-action
Bumps the github-actions group with 1 update in the / directory: [zizmorcore/zizmor-action](https://github.com/zizmorcore/zizmor-action).
Updates `zizmorcore/zizmor-action` from 0.5.1 to 0.5.2
- [Release notes](https://github.com/zizmo...
dependabot[bot]
07:05 AM Revision 20c82234 (git): [DOC] Update bundled gems list at ae3ad5e13d8e4a2532c69f251b92a7
git[bot]
06:58 AM Revision 7cdea3bd (git): Merge zlib-3.0.1
hsbt (Hiroshi SHIBATA)
06:58 AM Revision 513ee91b (git): Merge zlib-3.1.2
hsbt (Hiroshi SHIBATA)
06:36 AM Revision ae3ad5e1 (git): Windows: Explicitly specify the use of `coreutils` commands
It appears that shims for individual commands are no longer being
created.
nobu (Nobuyoshi Nakada)
06:02 AM Revision afc684c4 (git): [ruby/rubygems] Prefer system gem path when deps exist
https://github.com/ruby/rubygems/commit/c7bd0c4d5e hsbt (Hiroshi SHIBATA)
06:02 AM Revision 5046b20a (git): [ruby/rubygems] Adjust Sinatra dependency paths
https://github.com/ruby/rubygems/commit/75985f0c77 hsbt (Hiroshi SHIBATA)
06:02 AM Revision 77378641 (git): [ruby/rubygems] Use bundle config set and unset XDG_CACHE_HOME
https://github.com/ruby/rubygems/commit/733d9c9b0b hsbt (Hiroshi SHIBATA)
05:25 AM Revision b012b703 (git): [ruby/strscan] Fix documentation of StringScanner#skip_until
(https://github.com/ruby/strscan/pull/196)
I noticed this while working on #195.
https://github.com/ruby/strscan/commit/3dc627db11
Eregon (Benoit Daloze)
04:00 AM Revision cfb8d5fe (git): [ruby/rubygems] Fix double-quoted YAML escape handling.
This leads installation issue of Windows.
https://github.com/ruby/rubygems/commit/244b38acd7
hsbt (Hiroshi SHIBATA)
02:58 AM Bug #19017: Net::HTTP may block when attempting to reuse a persistent connection
I personally think `eof?` being blocking is extremely confusing.
I use this shim: https://github.com/socketry/io-stream/blob/main/lib/io/stream/shim/readable.rb#L11 to avoid blocking.
I also mentioned the issue here: https://bugs.ruby-...
ioquatix (Samuel Williams)
02:08 AM Revision c8c94ede (git): [ruby/prism] Fix binding for `in`, `not`, and `do` on/after command calls
https://github.com/ruby/prism/commit/fd0a20f8d8 kddnewton (Kevin Newton)
01:14 AM Misc #21877: DevMeeting-2026-03-17
* [Bug #21870] Regexp: Warnings when using slightly overlapping `\p{...}` classes (jneen)
* Warning spam on code that definitely isn't a mistake (`/[\p{Word}\p{S}]/` and other overlapping properties)
* Noted some possible ways forwar...
jneen (Jeanine Adkisson)
 

Also available in: Atom