Activity
From 01/07/2026 to 01/13/2026
Today
-
01:34 AM Ruby Revision 910fcfad (git): mk_builtin_loader: Count local variable definition lines
-
01:19 AM Ruby Bug #21824 (Closed): performance regression in regexp matching after update to 4.0
- Applied in changeset commit:git|5de4cc56086493689701e86aa0ccf6a4a4a87d75.
----------
Fix regexp performance regression for patterns starting with s/k
Commit 981ee02c7c ("Fix performance problem with /k/i and /s/i") was
merged for Ruby ... -
01:19 AM Ruby Revision 5de4cc56 (git): Fix regexp performance regression for patterns starting with s/k
- Commit 981ee02c7c ("Fix performance problem with /k/i and /s/i") was
merged for Ruby 4.0 to enable partial Boyer-Moore optimization for
patterns containing 's' or 'k' by using the prefix before those
characters.
However, when 's' or 'k'... -
01:15 AM Ruby Bug #21828: An incorrect warning message related to `benchmark` is shown when using `benchmark-ips`
- ruby_4_0 commit:8d764da35768073c2e21ffeffa27ff2f3ab589b0.
-
01:15 AM Ruby Bug #21812: Kernel#sleep without arguments returns immediately when subprocess exits in another thread (regression in Ruby 4.0)
- ruby_4_0 commit:ac596948d4008c6e117449786c62de4e45e434bf merged revision(s) commit:7e81bf5c0c8f43602e6d901f4253dca2f3d71745.
-
01:14 AM Ruby Revision ac596948 (git): merge revision(s) 7e81bf5c0c8f43602e6d901f4253dca2f3d71745: [Backport #21812]
- [PATCH] Fix sleep spurious wakeup from sigchld (#15802)
When sleeping with `sleep`, currently the main thread can get woken up from sigchld
from any thread (subprocess exited). The timer thread wakes up the main thread w... -
01:13 AM Ruby Bug #21819: A Data object should be frozen even if it has no members
- ruby_4_0 commit:6273c59a6e1f8587e549d5a5f44fd9363e6eb018 merged revision(s) commit:d7a6ff8224519005d2deeb3f4e98689a8a0835ad.
-
01:13 AM Ruby Revision 6273c59a (git): merge revision(s) d7a6ff8224519005d2deeb3f4e98689a8a0835ad: [Backport #21819]
- [PATCH] [Bug #21819] Data objects without members should also be frozen
-
01:11 AM Ruby Bug #21815: Backport GH-15737
- ruby_4_0 commit:3601b6c2c1226482a001b98863fe6f79cd84ad35 merged revision(s) commit:9824724b2ffe583302e9318c6eff7a440478125f.
-
01:11 AM Ruby Revision 3601b6c2 (git): merge revision(s) 9824724b2ffe583302e9318c6eff7a440478125f: [Backport #21815]
- [PATCH] Skip test_write_binary(GemSingletonTest) at rbs tests
```
Errno::EACCES: Permission denied @ rb_file_s_rename
...
D:/a/ruby/ruby/src/lib/rubygems/util/atomic_file_writer.rb:42:in 'File.rename'
... -
01:05 AM Ruby Bug #21814: 0.pow(2,-9999999999999999990) should be zero
- ruby_4_0 commit:893dcb5f25cbb0574ae73aa8fc926fd26750a27f merged revision(s) commit:19e539c9ee1701b34189fa0c1feb942adeb0e326.
-
01:05 AM Ruby Revision 893dcb5f (git): merge revision(s) 19e539c9ee1701b34189fa0c1feb942adeb0e326: [Backport #21814]
- [PATCH] [Bug #21814] Fix negative bignum modulo
If modulo is zero, do not apply bias even if the divisor is zero.
`BIGNUM_POSITIVE_P` is true even on bignum zero. -
01:03 AM Ruby Bug #21811: Backport GH-15763
- ruby_4_0 commit:b170f02e0f2a7831b51a9279ee2d35a5e4ecace9 merged revision(s) commit:4e0bb58a0a374b40b7691e7b7aa88e759a0fc9f2.
-
01:02 AM Ruby Revision b170f02e (git): merge revision(s) 4e0bb58a0a374b40b7691e7b7aa88e759a0fc9f2: [Backport #21811]
- [PATCH] fix underflow
-
01:01 AM Ruby Revision cc4ce48f (git): Remove ruby-bench excludes
- These benchmarks should be working fine now.
-
12:59 AM Ruby Revision e52aee68 (git): redmine-backporter.rb: Check remote-tracking branch
- on `has_commit` check for the `backport` command.
I don't maintain local "master" branch on my ruby repository for stable
branch maintenance. I want just running `git fetch origin` to make it
work. It should work for those who pull orig... -
12:55 AM Ruby Revision 09cd1311 (git): redmine-backporter.rb: Check remote-tracking branch
- on `has_commit` check for the `backport` command.
I don't maintain local "master" branch on my ruby repository for stable
branch maintenance. I want just running `git fetch origin` to make it
work. It should work for those who pull orig...
01/12/2026
-
11:28 PM Ruby Revision 7c91db9e (git): ZJIT: Check arg limit before pushing SendWithoutBLockDirect insn (#15854)
- This reduces some processing and makes the HIR more accurate.
-
10:23 PM Ruby Revision 2daed3c0 (git): [ruby/mmtk] Clear slot when object is freed
- https://github.com/ruby/mmtk/commit/87290e45b2
- 10:11 PM Ruby Revision 32865563 (git): ZJIT: Optimize Integer#[]
- This is used a lot in optcarrot.
-
10:08 PM Ruby Revision ee1aa78b (git): [ruby/prism] Correctly expose ripper state
- It is for example used by `irb`, `rdoc`, `syntax_suggest`
https://github.com/ruby/prism/commit/255aeb2485 -
09:50 PM Ruby Revision d81a11d4 (git): ZJIT: Snapshot FrameState with reordered args before direct send
- You can see the reordered args in the new Snapshot right before the
DirectSend insn:
v14:Any = Snapshot FrameState { pc: 0x00, stack: [v6, v11, v13], locals: [] }
PatchPoint MethodRedefined(Object@0x00, a@0x00, cme:0x00)
... -
09:50 PM Ruby Revision 351616af (git): ZJIT: Add snapshot tests for direct send
- 09:43 PM Ruby Revision 41d9eb78 (git): ZJIT: Inline Array#empty?
-
09:43 PM Ruby Revision 5cec11f4 (git): ZJIT: Inline Array#length
-
09:39 PM Ruby Bug #19378: Windows: Use less syscalls for faster require of big gems
- Hello, thank you for your attention to this issue. We have a large Ruby project using windows and after upgrading from v2.1.4 to v3.4.7 we are noticing the slowness with `require`.
This is not an issue under v2.1.4. Looking at the sysca... -
08:20 PM Ruby Misc #21833: Switch default hash from SipHash13 to XXH3?
- bdewater (Bart de Water) wrote in #note-6:
> FWIW
> ...
I can give rapidhash a try. It's based on wyHash which Go uses (at least sometimes): https://github.com/golang/go/blob/cbe153806e67a16e362a1cdbbf1741d4ce82e98a/src/runtime/hash64.go -
08:10 PM Ruby Misc #21833: Switch default hash from SipHash13 to XXH3?
- FWIW
- https://github.com/Nicoshev/rapidhash claims to be even faster and passes the SMHasher tests
- Since Rust 1.36 they switched from SipHash13 to https://github.com/rust-lang/hashbrown for hashmaps -
03:09 PM Ruby Misc #21833: Switch default hash from SipHash13 to XXH3?
- byroot (Jean Boussier) wrote in #note-2:
> Well, the main concern is HashDOS, but looking at your branch, it seems you seed the hash function, so it's fine on that front.
I did note the HashDOS conversation on https://bugs.ruby-lang.... -
03:00 PM Ruby Misc #21833: Switch default hash from SipHash13 to XXH3?
- The same benchmarks on an M4 Pro:
```
benchmark-driver ~/Downloads/hash_strings.yml -e "ruby-master::~/.rubies/ruby-master/bin/ruby" -e "ruby-xxhash::~/.rubies/ruby-xxhash/bin/ruby"
<snip>
Comparison:
tiny_hash_crea... -
09:15 AM Ruby Misc #21833: Switch default hash from SipHash13 to XXH3?
- > Has there been any consideration switching to some other hash implementation?
There has been a few in the past, e.g. [Feature #16851]
> ...
Well, the main concern is HashDOS, but looking at your branch, it seems you seed the hash... -
03:34 AM Ruby Misc #21833 (Open): Switch default hash from SipHash13 to XXH3?
- Has there been any consideration switching to some other hash implementation?
I've searched through the issues and haven't found anything related to switching the default hash from SipHash13 to anything else.
I created a [branch](... -
04:22 PM Ruby Bug #21824: performance regression in regexp matching after update to 4.0
- Hey - see the two links to the git repo on tangled.org in the bug description, it includes a test script.
-
10:08 AM Ruby Bug #21824: performance regression in regexp matching after update to 4.0
- Could you share how you measured the performance?
-
04:13 PM Ruby Revision a1ba9f57 (git): [ruby/prism] Use one file for versioned `parser` classes
- One per version seems excessive.
Do note that `rubocop-ast` used to require individual parser files. I wouldn't consider that to be part of the API since everything is autoloaded.
From a GitHub code search, I didn't find anyone else doi... -
11:24 AM Ruby Revision f3429760 (git): Remove a direct call of `rb_raise` in Onigmo
-
11:24 AM Ruby Revision aaf47cca (git): Now onigenc_single_byte_code_to_mbclen checks out-of-bound
-
11:01 AM Ruby Revision 76b1d4a4 (git): [k-takata/Onigmo] Disable error message for capture history when not needed
- Add `#ifdef USE_CAPTURE_HISTORY`.
https://github.com/k-takata/Onigmo/commit/8217be2c3a -
11:01 AM Ruby Revision 81c13349 (git): [k-takata/Onigmo] Fix out-of-bounds read in parse_char_class()
- (Close
https://github.com/k-takata/Onigmo/pull/139)
/[\x{111111}]/ causes out-of-bounds read when encoding is a single byte
encoding. \x{111111} is an invalid codepoint for a single byte encoding.
Check if it is a valid codepoint.
http... -
11:01 AM Ruby Revision 16086128 (git): [k-takata/Onigmo] Suppress warning on 64-bit builds
- https://github.com/k-takata/Onigmo/commit/ced209d5e9
-
11:01 AM Ruby Revision ac379278 (git): [k-takata/Onigmo] Fix stack overflow with X+++++++++++++++++++…
- Imported the fix from:
https://github.com/kkos/oniguruma/commit/4097828d7cc87589864fecf452f2cd46c5f37180
https://github.com/k-takata/Onigmo/commit/786b4849c1 -
11:01 AM Ruby Revision f0b31a58 (git): [k-takata/Onigmo] Fix SEGV in onig_error_code_to_str() (Fix
- https://github.com/k-takata/Onigmo/pull/132)
When onig_new(ONIG_SYNTAX_PERL) fails with ONIGERR_INVALID_GROUP_NAME,
onig_error_code_to_str() crashes.
onig_scan_env_set_error_string() should have been used when returning
ONIGERR_INVALID_... -
11:01 AM Ruby Revision 496e74d0 (git): [k-takata/Onigmo] Fix that onig_new() may crash
- When onig_reg_init() returns an error, onig_free_body() which is called
via onig_new() may crash because some members are not properly
initialized. Fix it.
https://github.com/k-takata/Onigmo/commit/d2a090a57e -
11:01 AM Ruby Revision ad150e90 (git): [k-takata/Onigmo] Update version number (6.2.0)
- * Update the version number to 6.2.0
* Update LTVERSION to 6:5:0.
https://github.com/k-takata/Onigmo/commit/9e0f7ceee0 -
11:01 AM Ruby Revision a097878e (git): [k-takata/Onigmo] Comment out unused errors
- https://github.com/k-takata/Onigmo/commit/5555ee4c81
-
11:01 AM Ruby Revision 916fbf10 (git): [k-takata/Onigmo] Update copyright information
- * Update our copyright information.
* Import the latest information from oniguruma.
Related: #95
https://github.com/k-takata/Onigmo/commit/0d8662b500 -
11:01 AM Ruby Revision 85a7171b (git): [k-takata/Onigmo] Add USE_CASE_MAP_API config
- The case_map API is mainly (only?) used in Ruby.
Make it possible to disable the API.
https://github.com/k-takata/Onigmo/commit/80e289d6bb -
11:01 AM Ruby Revision f9131412 (git): [k-takata/Onigmo] Revise set_bm_skip()
- https://github.com/k-takata/Onigmo/commit/6875da50f7
-
11:01 AM Ruby Revision bbf9bf3f (git): [k-takata/Onigmo] Remove code for backward BM search
- The code has not been used for long.
(Oniguruma also removed this code.)
https://github.com/k-takata/Onigmo/commit/8796781fdd -
11:01 AM Ruby Revision fb7f344b (git): [k-takata/Onigmo] Remove code for reg->int_map
- https://github.com/k-takata/Onigmo/commit/6c58de82d2
-
11:01 AM Ruby Revision 6484a71a (git): Add Onigmo to sync_default_gems.rb
-
08:53 AM Ruby Misc #21834: Extract `yaml/store` into it's own gem that depends on the `pstore` gem
- Note, while `pstore` is still available in Ruby 4.0.0 as a bundled gem, Bundler will refuse to load it unless it is explicitly listed in the `Gemfile` or gemspec. This means that if one's project uses any other gem which requires `yaml/s...
-
08:44 AM Ruby Misc #21834 (Open): Extract `yaml/store` into it's own gem that depends on the `pstore` gem
- Ruby 4.0.0 removed the `pstore` gem from the set of default stdlib libraries. However, `yaml/store` is still available from the `yaml` library, but relies on the `pstore` gem which is now no longer part of stdlib. It is odd that a file w...
-
07:44 AM Ruby Revision bf36ad9c (git): ZJIT: remove unused rb_RSTRUCT_LEN()
-
07:44 AM Ruby Revision 916c0a81 (git): ZJIT: remove unused rb_RSTRUCT_SET()
-
02:28 AM Ruby Revision d57c3296 (git): Re-fix `VCS::GIT#branch_beginning`
- Count the last release date from the whole working directory, not
only the version headers. -
12:09 AM Ruby Bug #21832: segfault with argument forwarding, when combined with splat & positional arg
- Very likely related to the `VM_CALL_FORWARDING` optimization introduced in commit:cdf33ed5f37f9649c482c3ba1d245f0d80ac01ce.
01/11/2026
-
10:01 PM Ruby Bug #21832: segfault with argument forwarding, when combined with splat & positional arg
- please ignore where the longer test case comment says "foo" instead of "--verbose" ;-)
-
09:51 PM Ruby Bug #21832 (Open): segfault with argument forwarding, when combined with splat & positional arg
- A crash occurs when combining (...) arg forwarding, a positional argument, and an array splat. Found with 4.0.0 release, verified on 3.4.8 and 4.1.0dev, does not occur on 3.3.10. One-line crash test:
``` ruby
./ruby -e 'def target(*a... -
03:46 PM Ruby Revision 61c372a1 (git): [DOC] Improve docs for ObjectSpace.count_symbols
-
03:46 PM Ruby Revision 1267a3ab (git): [DOC] Improve docs for ObjectSpace.count_imemo_objects
-
03:46 PM Ruby Revision cf5c5abe (git): [DOC] Improve docs for ObjectSpace.count_tdata_objects
-
02:25 PM Ruby Bug #21831 (Closed): Prism doesn't count underscores in the fraction part of rational float
- Applied in changeset commit:git|8baaece6d9a64e8cc51d8d0c9839546e3d039eee.
----------
[ruby/prism] [Bug #21831] Fix denominator of rational float literal
Denominators can contain underscores in fraction part as well as other
numeric lit... -
01:30 PM Ruby Bug #21831 (Closed): Prism doesn't count underscores in the fraction part of rational float
- Good.
```console
$ ruby3.3 -e 'p 0.1_2r.to_f'
0.12
$ ruby3.4 --parser=parse.y -e 'p 0.1_2r.to_f'
0.12
```
Wrong.
```console
$ ruby3.4 -e 'p 0.1_2r.to_f'
0.012
``` -
01:53 PM Ruby Revision 8baaece6 (git): [ruby/prism] [Bug #21831] Fix denominator of rational float literal
- Denominators can contain underscores in fraction part as well as other
numeric literals.
[Bug #21831]: https://bugs.ruby-lang.org/issues/21831
https://github.com/ruby/prism/commit/e247cb58c7 -
12:42 PM Ruby Revision a071078e (git): pack.c: remove wasted allocation in BER integer packing
- The 'w' format (BER compressed integer) was allocating an empty
string with rb_str_new(0, 0) then immediately overwriting it with
the correctly-sized allocation. Remove the wasted first allocation.
~50% improvement on BER pack benchmarks. - 12:06 PM Ruby Revision 3363861a (git): Remove RUBY_API_VERSION check in cxxanyargs.hpp
- The version check used undefined macros, causing -Wundef warnings.
The conditional is no longer needed as Ruby is past version 3.1. -
12:03 PM Ruby Revision 73be9992 (git): Disambiguate private and public RSTRUCT_ helpers
- RSTRUCT_LEN / RSTRUCT_GET / RSTRUCT_SET all existing in two
versions, one public that does type and frozens checks
and one private that doesn't.
The problem is that this is error prone because the public version
is always accessible, bu... -
08:09 AM Ruby Revision 6a630d99 (git): Push the commits to the origin at `make matz` [ci skip]
-
06:12 AM Ruby Revision 463a806f (git): Fix `VCS::GIT#branch_beginning` to search since the last relase
- The ChangeLog in ruby-4.0.0 did not contain entries for 3.5.0.
-
05:51 AM Ruby Revision acd0c68a (git): Relax the flaky test threshold on RHEL 10.0 x86_64
01/10/2026
-
02:31 PM Ruby Revision 0d4538b5 (git): [DOC] Improve docs for Module#>=
-
02:31 PM Ruby Revision f0f4a683 (git): [DOC] Improve docs for Module#<=
-
02:31 PM Ruby Revision 0b83346f (git): [DOC] Improve docs for Module#<
-
02:31 PM Ruby Revision 98c414a6 (git): [DOC] Improve docs for Module#>
-
12:35 PM Ruby Misc #21777: DevMeeting-2026-01-14
- * [Misc #21804] Getting setup-ruby Earlier (eregon)
* To get it out earlier, we need release managers (@hsbt @nagachika @k0kubun) to also run the relevant steps for setup-ruby: https://github.com/ruby/setup-ruby/pull/848#issuecomment-3... -
11:32 AM Ruby Misc #21804: Getting setup-ruby Earlier
- You can add me as a ruby-setup releaser, if that helps. I did some PRs already and know roughly how it works for Windows releases.
But the RubyInstaller releases will not come out earlier. It's a project I care about, but it's still a... -
08:21 AM Ruby Bug #21685: Unnecessary context-switching, especially bad on multi-core machines.
- I have a much better solution here: https://github.com/ruby/ruby/pull/15840
It's simpler than my original PR. It dispenses with the additional thread and the magic number (sleep time). And in addition to bringing multi-core perf into li... - 07:20 AM Ruby Revision 0b69f7fa (git): [ruby/openssl] Fix test_cipher.rb in FIPS.
- https://github.com/ruby/openssl/commit/11bd2efb2a
01/09/2026
-
11:05 PM Ruby Revision c3f6fcc4 (git): Skip ObjectSpaceTest#test_count_nodes for RBS
-
11:05 PM Ruby Revision e8c61f51 (git): Remove ObjectSpace.count_nodes
- ObjectSpace.count_nodes has been a no-op and returning an empty hash since
Ruby 2.5 because parser nodes are not GC managed. -
11:05 PM Ruby Revision ef488bff (git): [DOC] Doc for Enumerator.new
-
10:36 PM Ruby Revision 77cad87d (git): [DOC] Doc for Enumerator class
-
10:36 PM Ruby Revision 3d242a82 (git): [DOC] Harmonize #> methods
-
09:39 PM Ruby Feature #16848: Allow callables in $LOAD_PATH
- BTW, the contract could be to return a file handle (which could be a StringIO) or `nil`.
-
03:13 PM Ruby Feature #16848: Allow callables in $LOAD_PATH
- Hey, just saw this ticket.
I wanted to share as a curiosity that Perl has this: You can store coderefs in `@INC`. That gives you plenty of flexibility.
For example, the Perl Archive Toolkit provides a way to ship projects in one si... -
07:25 PM Ruby Revision e08f316f (git): YJIT: Add frozen guard for struct aset (#15835)
- We used to just skip this check (oops), but we should not allow
modifying frozen objects. -
04:31 PM Ruby Revision 51ab7b04 (git): YJIT: gen_struct_aset check for frozen status
-
04:31 PM Ruby Revision 7379b9ed (git): Optimize rb_mark_generic_ivar for T_DATA and T_STRUCT
- T_DATA and T_STRUCT could have ivars but might not use the generic_fields_tbl.
This commit skips lookup in the generic_fields_tbl for those cases. -
03:13 PM Ruby Misc #21804: Getting setup-ruby Earlier
- > > > #844 got merged the same day, what would you expect?
> ...
Of course not. I can see that you're feeling attacked here, and that was not my intention, and I apologize. I'm thankful for all the work that you do.
But the fact of... -
03:00 PM Ruby Feature #21826: Deprecating RubyVM::AbstractSyntaxTree
- Note that any usage of `RubyVM::AbstractSyntaxTree` in a gem is, by the documentation of that class and `RubyVM`, invalid (not debugging, prototyping, and research).
That doesn't mean we should break them carelessly, but I think that doe... -
02:55 PM Ruby Feature #6012: Proc#source_location also return the column
- mame (Yusuke Endoh) wrote in #note-50:
> Also, Ruby's grammar will certainly continue to change, and I have no doubt that the instances of overlapping Nodes, beyond just `StatementsNode` and `CallNode`, can increase accordingly.
Mayb... -
02:46 PM Ruby Feature #6012: Proc#source_location also return the column
- mame (Yusuke Endoh) wrote in #note-50:
> "I don't know exactly what users are using the `method_source` gem for, but since it's used so much, we should provide equivalent functionality as a built-in feature"
> ...
Of course there is nuan... -
02:07 PM Ruby Bug #21830: Ruby::Box and Kernel#require
- Just in case it matters, let me also add that it is assumed that `Module#autoload` invokes `Kernel#require` as introduced in [cd465d5](https://github.com/ruby/ruby/commit/cd465d552c3a00341f4cb7f1d7a793d0ebcb6cde).
Zeitwerk relies on thi... -
09:48 AM Ruby Bug #21830 (Open): Ruby::Box and Kernel#require
- If you enable `Ruby::Box`, decorations to `Kernel#require` do not work.
For example, given _foo.rb_:
```ruby
module M
def require(_path)
puts 'decorated'
super
end
end
Kernel.prepend(M)
p require 'tsort'
``... -
11:02 AM Ruby Revision c794a979 (git): Rename `alloca_overflow` to `stack_overflow`
- `alloca` is an implementation detail to raise a stack overflow.
-
08:16 AM Ruby Revision e01e13c2 (git): Use `assert_ruby_status` if no assertion
-
08:16 AM Ruby Revision fc0c67de (git): Make `assert_separately` to count assertions in forked processes
-
07:06 AM Ruby Revision 364e25b1 (git): Make `assert_separately` tolerant to core method redefinitions
- And split `TestRubyOptimization#test_objtostring` for each target
class. - 06:04 AM Ruby Revision 31857868 (git): Fix integer overflow checks in enumerator
-
02:36 AM Ruby Revision b61e18d7 (git): Win32: configure without an intermediate makefile
- This batch file used `nmake` on the old `command.com` to extract the
parent directory name of this file and to get around the command line
argument length limit. However, Windows 9X support as a build host
ended over a decade ago, and t... -
01:33 AM Ruby Revision e89db856 (git): [ruby/mmtk] Assert that objects are not T_NONE in the write barrier
- https://github.com/ruby/mmtk/commit/59d27203e2
-
01:33 AM Ruby Revision aa7eb97d (git): [ruby/mmtk] Add MMTK_ASSERT
- https://github.com/ruby/mmtk/commit/e34d5cf32f
-
12:33 AM Ruby Revision b3216bc1 (git): Fix Ripper::Lexer::State#[] for to_s
- The instance variable is called `to_s`, not `event`.
01/08/2026
-
11:07 PM Ruby Revision 50b71911 (git): Remove ruby-bench excludes (#15828)
- These benchmarks should be working fine now.
-
10:33 PM Ruby Revision c6f9a4d3 (git): Remove check for rb_obj_gen_fields_p in rb_hash_dup
- rb_copy_generic_ivar already checks for it, so we don't need to call
rb_obj_gen_fields_p twice. -
10:01 PM Ruby Feature #6012: Proc#source_location also return the column
- Eregon (Benoit Daloze) wrote in #note-49:
> In any case I don't think it's our place to judge whether each usage is "valid" or "correct" or not, it's definitely useful functionality since it's used so much.
"I don't know exactly what... -
07:59 PM Ruby Misc #21804: Getting setup-ruby Earlier
- mdalessio (Mike Dalessio) wrote in #note-4:
> A counter-example, though, is that the PR for windows support ([https://github.com/ruby/setup-ruby/pull/847](https://github.com/ruby/setup-ruby/pull/847)) took 3 days to get merged.
Windo... -
07:55 PM Ruby Misc #21804: Getting setup-ruby Earlier
- If people care about getting an answer from release maintainers, they can add this ticket to the dev meeting.
-
07:57 PM Ruby Revision 523857bf (git): ZJIT: Replace GuardShape with LoadField+GuardBitEquals (#15821)
- GuardShape is just load+guard, so use the existing HIR instructions for load+guard. Probably makes future analysis slightly easier.
-
06:35 PM Ruby Revision 16863f2e (git): [ruby/prism] Decouple ripper translator from ripper library
- Ripper exposes Ripper::Lexer:State in its output, which is a bit of a problem. To make this work, I basically copy-pasted the implementation.
I'm unsure if that is acceptable and added a test to make sure that these values never go out ... -
06:35 PM Ruby Revision fc66de3e (git): [ruby/prism] Remove unneeded `ripper` requires
- Ripper is either not used or loaded where it is actually needed
https://github.com/ruby/prism/commit/a73a4fb00c -
06:35 PM Ruby Revision 3bfc8655 (git): [ruby/prism] Move `LexRipper` into its own file
- It has a hard dependency on ripper that can't be removed.
This makes it so that ripper can be loaded only when the class is actually used.
https://github.com/ruby/prism/commit/3b5b4a8a6d -
05:08 PM Ruby Revision 8d764da3 (git): Fix incorrect bundled gems warning for hyphenated gem names
- When requiring a file like "benchmark/ips", the warning system would
incorrectly warn about the "benchmark" gem not being a default gem,
even when the user has "benchmark-ips" (a separate third-party gem)
in their Gemfile.
The fix check... -
09:49 AM Ruby Feature #21442 (Closed): Make tsort to bundled gems
- https://github.com/ruby/ruby/pull/15825
- 09:48 AM Ruby Revision dcfbbdc3 (git): Update bundled gems list as of 2026-01-08
-
09:48 AM Ruby Revision 19d3f2da (git): Skip collection install test
-
09:48 AM Ruby Revision eaa9902c (git): Exclude ruby-lsp benchmark because released version of rbs didn't have tsort dependency
-
09:48 AM Ruby Revision 4a988b7f (git): Inject tsort path before rdoc
-
09:48 AM Ruby Revision 9c49084a (git): Update tsort entries under the doc
-
09:48 AM Ruby Revision 9580c7d0 (git): Migrate tsort as bundled gems
-
08:58 AM Ruby Feature #21826: Deprecating RubyVM::AbstractSyntaxTree
- I reserve my opinion on the proposal itself, but just about `node_id_for_backtrace_location`:
Earlopain (Earlopain _) wrote in #note-2:
> But I don't know of something for `node_id_for_backtrace_location` (https://bugs.ruby-lang.org/... -
08:03 AM Ruby Feature #21826: Deprecating RubyVM::AbstractSyntaxTree
- `RubyVM::AbstractSyntaxTree` is not only used for parsing. I don't think there are proper replacements for `of` and `node_id_for_backtrace_location` yet. `error_highlight` for example uses both `of` (under parse.y) and `node_id_for_backt...
-
04:52 AM Ruby Bug #21634 (Assigned): Combining read(1) with eof? causes dropout of results unexpectedly on Windows.
-
04:51 AM Ruby Bug #21691 (Assigned): On Windows some of binary read functions of IO are not functional
-
04:51 AM Ruby Bug #21763 (Assigned): Windows: output IO pipe ignores crlf newline conversion specified by set_encoding
-
04:51 AM Ruby Bug #21765 (Assigned): stop using the C runtime _read() on Windows
-
04:41 AM Ruby Revision 946b1c1b (git): Move parentheses around macro arguments
-
04:30 AM Ruby Revision 1852ef43 (git): Fail if the Ruby specified with `--with-baseruby` is too old
- If the baseruby is explicitly specified, fail because the option is
not accepted if it does not meet the requirements. If the option is
not specified, just display the warning and continue, in the hope that
it is not needed.
Follow up ... -
04:29 AM Ruby Revision 725e3d0a (git): Fluent and/or is supported by Prism too now
-
04:19 AM Ruby Bug #21828: An incorrect warning message related to `benchmark` is shown when using `benchmark-ips`
- https://github.com/ruby/ruby/pull/15824
-
04:15 AM Ruby Bug #21828 (Closed): An incorrect warning message related to `benchmark` is shown when using `benchmark-ips`
- Applied in changeset commit:git|768862868472fb1800e556effb0e37be2fbaec52.
----------
Fix incorrect bundled gems warning for hyphenated gem names
When requiring a file like "benchmark/ips", the warning system would
incorrectly warn abou... -
12:22 AM Ruby Bug #21828 (Assigned): An incorrect warning message related to `benchmark` is shown when using `benchmark-ips`
-
04:15 AM Ruby Revision 76886286 (git): Fix incorrect bundled gems warning for hyphenated gem names
- When requiring a file like "benchmark/ips", the warning system would
incorrectly warn about the "benchmark" gem not being a default gem,
even when the user has "benchmark-ips" (a separate third-party gem)
in their Gemfile.
The fix check... -
03:02 AM Ruby Misc #17376 (Closed): Reduce number of GitHub Actions
- The current job number is 94 each commit and GitHub improved their UI of GitHub Actions.
I'm closing this. -
02:47 AM Ruby Feature #17210 (Closed): More readable and useful `Set#inspect`
- ```
❯ ruby -ve "puts Set[1,2,3]"
ruby 4.1.0dev (2026-01-06T23:05:30Z master b2ed4cdced) +YJIT +MN +PRISM [arm64-darwin25]
Set[1, 2, 3]
```
Ruby 4.0 introduced this feature request. -
02:42 AM Ruby Feature #16989 (Closed): Sets: need ♥️
- `Set` is promoted to Core class at Ruby 4.0.
- 12:41 AM Ruby Revision 080d66be (git): Avoid flaky test failures by retrying on local port conflicts (#15818)
- This test obtains an available port number by calling `TCPServer.new`,
then closes it and passes the same port number as `local_port` to `TCPSocket.new`.
However, `TCPSocket.new` could occasionally fail with `Errno::EADDRINUSE`
at the b...
01/07/2026
- 11:24 PM Ruby Revision 950ffa90 (git): ZJIT: Add ArrayAset instruction to HIR (#15747)
- Inline `Array#[]=` into `ArrayAset`.
-
11:05 PM Ruby Bug #21828 (Closed): An incorrect warning message related to `benchmark` is shown when using `benchmark-ips`
- ## Descrition
When using `benchmark-ips` gem with Ruby 4.0.0, the warning related to `benchmark` gem is shown.
## Step to reproduce
```ruby
# Gemfile
# frozen_string_literal: true
source "https://rubygems.org"
gem "bench... -
11:02 PM Ruby Revision 3ea6ec83 (git): [DOC] Harmonize #=~ methods (#15814)
-
11:01 PM Ruby Revision 5230f835 (git): [DOC] Harmonize #[] methods
-
07:44 PM Ruby Feature #13683: Add strict Enumerable#single
- zverok (Victor Shepelev) wrote in #note-39:
> > How about #one! or similar to indicate it must be one element?
> ...
Ruby also uses it other places, like `exit!` and `kill!`, OpenSSL's `generate_key!`, Date's `new!`. It's also in Engli... -
04:23 PM Ruby Feature #13683: Add strict Enumerable#single
- > How about #one! or similar to indicate it must be one element?
I think Ruby's core agreement is `!` indicates the methods that change the receiver (`strip`/`strip!`), so unless we plan to introduce Rails-y agreement with it designat... -
02:32 PM Ruby Feature #13683: Add strict Enumerable#single
- I don't like #sole as the method name but I can't quite explain why. I'd rather have #single or #singleton (The mathematical term for a set of one) or a two word #single_element or #one_only.
How about #one! or similar to indicate it ... -
12:08 PM Ruby Feature #13683: Add strict Enumerable#single
- +1 for `sole` (given Matz didn't like `single` and `only`).
It's clear and obvious what it does.
We could also allow it to take a block to address #18135 too:
```ruby
enumerable.sole { condition(it) }
# same as
enumerable.select ... -
12:33 AM Ruby Feature #13683: Add strict Enumerable#single
- I've only just learned that ActiveSupport introduced `Enumerable#sole` back in 2020.
https://github.com/rails/rails/pull/40914
I wish this were available in the core too. -
07:09 PM Ruby Feature #21827: Deprecating Ripper
- I don't think we're going to be able to deprecate in 4.1, Ripper is still very much used in the ecosystem. I think we can do the work over the next couple of years to remove it, but 4.1 is quite a tight timeline.
-
06:17 PM Ruby Feature #21827: Deprecating Ripper
- Ripper is at least used in these default/bundled gems:
- `irb`
- `rdoc`
- `rbs`
- `power_assert`
- `syntax_suggect`
While I agree that we should deprecate it, I also would like to avoid showing the deprecation message when user... -
03:37 PM Ruby Feature #6012: Proc#source_location also return the column
- mame (Yusuke Endoh) wrote in #note-48:
> A "use case" is the ultimate goal that the examples aim to achieve via `Method#source`.
The above snippets show examples of source transformation, instrumentation of code by adding extra code ... -
02:18 PM Ruby Feature #6012: Proc#source_location also return the column
- > A quick search shows some examples which do not use an AST:
A "use case" is the ultimate goal that the examples aim to achieve via `Method#source`.
By the way, I tried the `method_source` gem, and I noticed that it includes hered... -
12:44 PM Ruby Feature #6012: Proc#source_location also return the column
- mame (Yusuke Endoh) wrote in #note-45:
> First, I suspect that what many users of `method_source` gem actually need is the AST.
Many yes but not all, maybe even only a minority (see below).
The fact there is `Method#source` indicates th... -
12:07 PM Ruby Feature #6012: Proc#source_location also return the column
- Note that there is also an idiom like `foo(*obj.source_location)`, not just `source_location.last`. By checking the result of "gem-codesearch", we see not only `@binding.source_location` but also `@proc.source_location`. I am not sure if...
-
11:54 AM Ruby Feature #6012: Proc#source_location also return the column
- Eregon (Benoit Daloze) wrote in #note-44:
> mame (Yusuke Endoh) wrote in #note-43:
> ...
First, I suspect that what many users of `method_source` gem actually need is the AST. The proposal #21005 itself demonstrates this.
I recogniz... -
11:31 AM Ruby Feature #6012: Proc#source_location also return the column
- mame (Yusuke Endoh) wrote in #note-43:
> However, we should consider the fact that code like `source_location.last` actually exists in the wild, as RSpec fixed in advance. It seems this idiom is used in quite a few gems.
This change ... -
12:17 AM Ruby Feature #6012: Proc#source_location also return the column
- Eregon (Benoit Daloze) wrote in #note-41:
> @mame Matz explicitly approved it: https://github.com/ruby/ruby/pull/15580#issuecomment-3691058342
Ah, I missed that the PR had already been approved. Sorry about that.
However, we should con... -
03:24 PM Ruby Feature #21795: Methods for retrieving ASTs
- Thanks @mame for the detailed reply! I appreciate your thoughtfulness here.
With regard to the implementation approach problem, I love your solution of keeping a source hash on the iseq. I think that makes a lot of sense, and could be... -
11:41 AM Ruby Feature #21795: Methods for retrieving ASTs
- One idea to make it work with `--parser=parse.y` until universal parser supports the Prism API (#21825) would be to:
* Get the `RubyVM::AST::Node` of that object, then extract the start/end line & start/end columns. Or do the same inter... -
01:13 PM Ruby Misc #21777: DevMeeting-2026-01-14
- I plan to attend this meeting, though I will only be able to join from 15:30PM JST (= 7:30AM CET).
Would it possible to discuss the topics I added, as well as #6012 (https://bugs.ruby-lang.org/issues/21777#note-7) after that time so I c... -
11:45 AM Ruby Misc #21777: DevMeeting-2026-01-14
- * [Feature #21826] Deprecating RubyVM::AbstractSyntaxTree (eregon)
* OK to deprecate now/for 4.1? If not, when?
* And maybe remove it in 4.2?
* [Feature #21827] Deprecating Ripper (eregon)
* Removing Ripper would remove a signi... -
11:42 AM Ruby Misc #21777: DevMeeting-2026-01-14
- * [Feature #21795] Methods for retrieving ASTs (eregon)
* This seems very useful and convenient, and abstract over implementation details like `node_id` (which I think make little sense to expose to users).
* To address @mame's conce... -
12:51 AM Ruby Misc #21777: DevMeeting-2026-01-14
- * [Feature #13683] Add strict Enumerable#single (mame)
* ActiveSupport now has `Enumerable#sole`. https://github.com/rails/rails/pull/40914
* I want this on the core too. It's good that the intention of having only one is explicitly ... -
12:44 AM Ruby Misc #21777: DevMeeting-2026-01-14
- * [Feature #6012] Proc#source_location also return the column (mame)
* Quite a few gems are using the idiom `source_location.last`.
* The idiom will return a column number (of the end of the code range) instead of a line number.
... -
08:49 AM Ruby Revision 7d498380 (git): [ruby/rubygems] bin/rubocop -A
- https://github.com/ruby/rubygems/commit/e3f418aa11
- 08:49 AM Ruby Revision 3657700c (git): [ruby/rubygems] Bundler: validate more options for add sub-command
- Signed-off-by: Takuya Noguchi <[email protected]>
https://github.com/ruby/rubygems/commit/6ca2e28680 - 07:44 AM Ruby Revision 88467996 (git): [ruby/rubygems] Update custom errors with Exception#full_message
- The use of `Exception#full_message` makes more sense as it shows
the cause and the backstrace.
https://github.com/ruby/rubygems/commit/62a92c3f5e -
07:30 AM Ruby Revision e1087c12 (git): [ruby/rubygems] Fix dependency source bug in bundler
- I stumbled across a bundler bug that had me scratching my head for
awhile, because I hadn't experienced it before.
In some cases when changing the source in a gemfile from a
`Source::Gemspec` to either a `Source::Path` or `Source::Git` ... -
04:55 AM Ruby Revision 25c72b0e (git): Support customizable rustc_flags for rustc builds.
- Add `rustc_flags` option for configure that appends to RUSTC_FLAGS
flags used when compiling with rustc for customizable build flags.
It appends to existing defaults in RUSTC_FLAGS.
Co-authored-by: Alan Wu <[email protected]> -
03:20 AM Ruby Bug #21803: `Addrinfo#connect_internal` should raise `IO::TimeoutError` on user-specified timeouts
- As you pointed out, changing the exception classes raised by `TCPSocket.new` and `Socket.tcp` does have user-facing impact, and perhaps this change should have been approached more carefully.
However, I believe that the fact that Socket... -
12:58 AM Ruby Revision 1abb609d (git): [ruby/mmtk] Check that a and b are valid objects in write barrier
- https://github.com/ruby/mmtk/commit/350625ebb3
-
12:58 AM Ruby Revision 08f6b867 (git): [ruby/mmtk] Set MMTK_DEBUG in C compiler for debug builds
- https://github.com/ruby/mmtk/commit/12a3904b04
-
12:26 AM Ruby Revision a024dca3 (git): Remove `in_masgn` field from `struct iseq_compile_data`
- `in_masgn` has not been used since fb6e3a80009a744a4e0b75660f1ce6da65e20e6c.