Project

General

Profile

Activity

From 07/08/2025 to 07/14/2025

Today

07:22 PM Revision e288a866 (git): ZJIT: Restore SP register after JIT-to-JIT call (#13882)
Co-authored-by: Alan Wu <alansi.xingwu@shopify.com>
Co-authored-by: Stan Lo <stan.lo@shopify.com>
Takashi Kokubun
05:42 PM Feature #21346: Introduce `String#ensure_suffix`
I've updated the documentation examples to reflect the typical use:
```rb
"script".ensure_suffix(".rb") # => "s...
matheusrich (Matheus Richard)
03:34 PM Bug #21512: Socket.tcp_with_fast_fallback('example.com', 80, '127.0.0.1') fails with unknown socket domain: ipv4 (SocketError)
I have opened a pull request: https://github.com/ruby/ruby/pull/13878
This bug is around from Ruby 3.4 when HEv2 w...
osyoyu (Daisuke Aritomo)
03:33 PM Bug #21512 (Open): Socket.tcp_with_fast_fallback('example.com', 80, '127.0.0.1') fails with unknown socket domain: ipv4 (SocketError)
The following code is expected to open a socket bound to the local IPv4 interface, but raises an SocketError.
```r...
osyoyu (Daisuke Aritomo)
03:11 PM Revision b2a7b769 (git): Remove dead rb_cc_table_free
peterzhu2118 (Peter Zhu)
03:11 PM Revision 127cc425 (git): Remove dead rb_cc_table_mark
peterzhu2118 (Peter Zhu)
02:05 PM Revision 64d4e772 (git): [DOC] Tweaks for String#delete_suffix! (#13872)
burdettelamar (Burdette Lamar)
01:58 PM Revision 07a3ab53 (git): [DOC] Tweaks for String#delete_suffix
burdettelamar (Burdette Lamar)
01:58 PM Revision 55dd2022 (git): [DOC] Tweaks for String#delete_prefix!
burdettelamar (Burdette Lamar)
01:57 PM Revision d38bb4ad (git): [DOC] Tweaks for String#delete_prefix
burdettelamar (Burdette Lamar)
12:25 PM Bug #21029: Prism behavior for `defined? (;x)` differs

I agree that consistent behavior between both cases would be ideal.
Given the current structure of `parse.y`, wr...
S_H_ (Shun Hiraoka)
10:01 AM Bug #19154: Specify require and autoload guarantees in ractors
Awesome John! Thanks very much! fxn (Xavier Noria)
09:29 AM Bug #21511: Use-after-free of the execution context after the fiber object carrying it is freed in GC
using ruby 3.5.0dev (2025-07-14T05:11:58Z master 8f54b5bb93) +PRISM [x86_64-linux]
``` shell
# this is currently ...
tuonigou (tianyang sun)
07:33 AM Bug #21511: Use-after-free of the execution context after the fiber object carrying it is freed in GC
nobu (Nobuyoshi Nakada) wrote in #note-3:
> 3.4.1 is outdate.
> Could you try with more recent version?
>
> BTW,...
tuonigou (tianyang sun)
07:26 AM Bug #21511 (Open): Use-after-free of the execution context after the fiber object carrying it is freed in GC
3.4.1 is outdate.
Could you try with more recent version?
BTW, 3.4.1 tarball is not listed there, but still exist...
nobu (Nobuyoshi Nakada)
07:10 AM Bug #21511: Use-after-free of the execution context after the fiber object carrying it is freed in GC
nobu (Nobuyoshi Nakada) wrote in #note-1:
> I can't reproduce it with ruby_3_4 (commit:1e3d24a0f47) on aarch64-linux...
tuonigou (tianyang sun)
06:56 AM Bug #21511 (Feedback): Use-after-free of the execution context after the fiber object carrying it is freed in GC
I can't reproduce it with ruby_3_4 (commit:1e3d24a0f47) on aarch64-linux.
What version is commit:de8de51182?
nobu (Nobuyoshi Nakada)
04:39 AM Bug #21511 (Open): Use-after-free of the execution context after the fiber object carrying it is freed in GC
In bootstraptest/test_thread.rb,
``` ruby
assert_equal 'ok', %{
File.write("zzz_t1.rb", <<-END)
begin
...
tuonigou (tianyang sun)
05:11 AM Revision 8f54b5bb (git): [ruby/uri] [DOC] Update old use of `URI::Parser`
https://github.com/ruby/uri/commit/d2a79c6343 nobu (Nobuyoshi Nakada)
05:11 AM Revision d1470914 (git): [ruby/uri] [DOC] Document private visibility too
For the references to URI::RFC2396_Parser private methods.
https://github.com/ruby/uri/commit/372fbb455d
nobu (Nobuyoshi Nakada)
05:11 AM Revision 1a03270a (git): [ruby/uri] [DOC] Fix references
These are instance methods, not class methods. And `URI::Parser` was
moved to URI::RFC2396_Parser at [r46491]
[r464...
nobu (Nobuyoshi Nakada)
02:52 AM Revision 7a03a02b (git): [rubygems/rubygems] Fix more warnings when running old Bundler with latest RubyGems
Also fix platform warnings when Bundler's entrypoint is bundler's
binstub.
https://github.com/rubygems/rubygems/comm...
deivid (David Rodríguez)
02:52 AM Revision c3d41492 (git): [rubygems/rubygems] Avoid more warnings when using RubyGems with old Bundler
We were only avoiding them when the RUBYGEMS_GEMDEPS variable is used.
Avoid the warnings in general, whenever the en...
deivid (David Rodríguez)
02:52 AM Revision a93c6840 (git): [rubygems/rubygems] Change helper to load only Bundler extensions to RubyGems
We'll want to reuse this helper in other situations where we don't want
all Bundler loaded.
https://github.com/rubyg...
deivid (David Rodríguez)
02:52 AM Revision 1c48aa6f (git): [rubygems/rubygems] Move loading Bundler without platform warnings to a method
https://github.com/rubygems/rubygems/commit/e068f0649a deivid (David Rodríguez)
02:52 AM Revision 4651d235 (git): [rubygems/rubygems] No need to detect ancient binstubs either
https://github.com/rubygems/rubygems/commit/346d491a11 deivid (David Rodríguez)
02:52 AM Revision 15751af9 (git): [rubygems/rubygems] Improve some heredoc indentations
https://github.com/rubygems/rubygems/commit/6ee3a33048 deivid (David Rodríguez)
02:52 AM Revision f1cbd58a (git): [rubygems/rubygems] Stop generating binstubs with support for RubyGems before 2.6.2
RubyGems generated binstubs still provide support for this ancient
version. This makes no sense since we prevent down...
deivid (David Rodríguez)
02:52 AM Revision 51e89003 (git): [rubygems/rubygems] Reset tmp directories before spec suite
If you abort running test suite with a quick double Ctrl-C, tmp files
will be left around, and they will interfere wi...
deivid (David Rodríguez)
02:52 AM Revision 7dc28418 (git): [rubygems/rubygems] Load RubyGems extensions in the first place
This is not currently causing any issues, but I think the most correct
thing to do is that Bundler loads the extensio...
deivid (David Rodríguez)
02:19 AM Revision 55baf026 (git): Fix an indent [ci skip]
nobu (Nobuyoshi Nakada)

07/13/2025

04:37 AM Revision f03cc0b5 (git): [ruby/uri] Repeat matching to reduce deviations
https://github.com/ruby/uri/commit/fa49e5b8ae nobu (Nobuyoshi Nakada)
04:37 AM Revision 9c166d26 (git): [ruby/uri] Test in exponential scale with rehearsal
https://github.com/ruby/uri/commit/be35e0b4d8 nobu (Nobuyoshi Nakada)

07/12/2025

06:22 PM Revision b438915f (git): [DOC] TWeaks for String#delete!
burdettelamar (Burdette Lamar)
05:08 PM Revision e1bc92d0 (git): [DOC] Tweaks for String#delete
burdettelamar (Burdette Lamar)
02:55 PM Revision b0db93c0 (git): [DOC] Tweaks for String#count
burdettelamar (Burdette Lamar)
02:49 PM Bug #21510 (Closed): Rails server crashes on Mac M2 with Bus Error at 0x0000000109946aac
Thank you for the bug report. You appear to be running on Ruby 2.6, which was EOL in 2022. As such, I'll be closing t... peterzhu2118 (Peter Zhu)
02:24 PM Bug #21510: Rails server crashes on Mac M2 with Bus Error at 0x0000000109946aac
Although the issue seems related to `pg` gem, I can run activerecord statements on a rails console session and they w... jkvithanage (Janaka Vithanage)
02:18 PM Bug #21510 (Closed): Rails server crashes on Mac M2 with Bus Error at 0x0000000109946aac
I have been struggling to setup a Rails 5.1.7 application on my Macbook M2 for months.
I installed Rosetta, x86_64 b...
jkvithanage (Janaka Vithanage)
01:34 PM Revision 9e7a985c (git): [Bug #21509] [DOC] Correct `IO#wait` description
nobu (Nobuyoshi Nakada)
01:32 PM Bug #21509 (Closed): io/wait: IO#wait raises error when passed nil as timeout
Applied in changeset commit:git|dbf7a0c713c39bdfd22c24e69f4bb0b89c9cab65.
----------
[ruby/io-wait] [Bug #21509] [DO...
nobu (Nobuyoshi Nakada)
01:32 PM Revision dbf7a0c7 (git): [ruby/io-wait] [Bug #21509] [DOC] Correct `IO#wait` description
https://github.com/ruby/io-wait/commit/c65af887a1 nobu (Nobuyoshi Nakada)
01:25 PM Revision 753e3b7a (git): [ruby/openssl] asn1: align UTCTime year range with RFC 5280
ASN.1 UTCTime uses two-digit years. While X.680 does not specify how to
map them as far as I can tell, X.509/PKIX use...
rhenium (Kazuki Yamaguchi)
10:32 AM Bug #20686 (Closed): URI::HTTPS can build URI with blank, invalid host
Applied in changeset commit:git|22b81b5bf56d7c5053008697d9e6b2a9c4eb79f4.
----------
[ruby/uri] Do not allow empty h...
jeremyevans (Jeremy Evans)
10:32 AM Revision cf7b871a (git): [ruby/uri] Improve performance of `URI::MailTo::EMAIL_REGEXP`
Fix the performance regression at #172 for valid emails.
``` yml
prelude: |
require 'uri/mailto'
n = 1000
re =...
nobu (Nobuyoshi Nakada)
07:07 AM Revision 22b81b5b (git): [ruby/uri] Do not allow empty host names, as they are not allowed by RFC 3986
Pointed out by John Hawthorn.
Fixes [Bug #20686]
https://github.com/ruby/uri/commit/c0cfa04a66
jeremyevans (Jeremy Evans)
07:07 AM Revision 1add45e2 (git): [ruby/uri] Prohibit successive dots in email
https://github.com/ruby/uri/commit/32335923bf nobu (Nobuyoshi Nakada)
07:07 AM Revision 859d7427 (git): [ruby/uri] More tests for `check_to`
https://github.com/ruby/uri/commit/b1b5f9a476 nobu (Nobuyoshi Nakada)
03:31 AM Revision c97eba9b (git): [ruby/uri] lib/uri/mailto.rb (EMAIL_REGEXP): use assertions surrounding the local part instead of a character class
https://github.com/ruby/uri/commit/2d7d2d9988 Nikita Levchuk
03:31 AM Revision 0685e8ca (git): [ruby/uri] lib/uri/mailto.rb (EMAIL_REGEXP): the local part should not contain leading or trailing dots
https://github.com/ruby/uri/commit/618e2bb640 Nikita Levchuk
03:24 AM Revision f1764623 (git): [ruby/uri] Make URI::regexp schemes case sensitive
(https://github.com/ruby/uri/pull/38)
https://github.com/ruby/uri/commit/0c2b6468fa
nobu (Nobuyoshi Nakada)
03:05 AM Revision c47a92b6 (git): [ruby/uri] Fix the message for unexpected argument
Use just `self` instead of `self.class`, in `URI::Generic.build`.
Since this is a class method, `self.class` is alway...
nobu (Nobuyoshi Nakada)

07/11/2025

08:24 PM Revision 3ec46aad (git): ZJIT: Mark objects baked in JIT code (#13862)
Takashi Kokubun
06:07 PM Revision c592cbd6 (git): [DOC] Fix links to RDoc in documentation_guide.md
Since RDoc's documentation is built separately now, the references will
no longer work.
peterzhu2118 (Peter Zhu)
06:07 PM Revision 482eeb7d (git): [DOC] Remove doc/rdoc/markup_reference.rb
RDoc has been moved from a default gem to a bundled gem, which means that
the source code is no longer in the ruby/ru...
peterzhu2118 (Peter Zhu)
05:20 PM Revision 1582bd93 (git): Add Timeout message when bootstraptest times out
jhawthorn (John Hawthorn)
04:55 PM Revision b0b1712b (git): ZJIT: Use Vec instead of HashMap for profiling (#13809)
This is notably faster: no need to hash indices.
Before:
```
plum% samply record ~/.rubies/ruby-zjit/bin/ruby --zji...
tekknolagi (Maxwell Bernstein)
04:49 PM Revision b760afe2 (git): ZJIT: Improve asm comments for side exits (#13853)
* ZJIT: Improve asm comments for side exits
* Use GuardType(Type) and GuardBitEquals(VALUE)
Takashi Kokubun
04:41 PM Revision 77de6b4e (git): [DOC] Add ZJIT glossary table
Stan Lo
04:41 PM Revision c0b9480b (git): [DOC] Add a few new terms to Ruby glossary
Stan Lo
04:30 PM Revision bd162dc0 (git): ZJIT: Run validation between compiler passes in debug mode
Max Bernstein
04:30 PM Revision e53bfe21 (git): ZJIT: Fix missing find!() for SetIvar
Max Bernstein
04:30 PM Revision 0d7d87b4 (git): ZJIT: Gracefully handle iseq_name with NULL ISEQ
Max Bernstein
04:30 PM Revision e3456d61 (git): ZJIT: Don't stringify Function in ValidationError
That's not the validator's responsibility; the caller can choose to
later.
Max Bernstein
04:13 PM Bug #18903: Stack overflow signal handling seems to be triggered once and then not working after
One observation I have is that there are ways to prevent this in application code:
```ruby
require 'json'
circular_r...
soulcutter (Bradley Schaefer)
02:04 PM Bug #21509 (Closed): io/wait: IO#wait raises error when passed nil as timeout
The [documentation of the method](https://ruby-doc.org/3.4.1/exts/io/wait/IO.html#method-i-wait) goes:
wait(ti...
chucke (Tiago Cardoso)
10:45 AM Revision 12d44dbc (git): Use an invariant condition
Cannot rule out the possibility that `crr->silent` is modified during
`func`.
nobu (Nobuyoshi Nakada)
09:04 AM Feature #21501: Include native filenames in backtraces as sources for native methods
> The underlying premise is that a bug is far more likely to be in the user's Ruby code [...]
Yup, I can very very...
ivoanjo (Ivo Anjo)
02:43 AM Feature #21501: Include native filenames in backtraces as sources for native methods
Let me clarify why the current behavior is generally preferred.
The underlying premise is that a bug is far more l...
mame (Yusuke Endoh)
08:32 AM Revision 9760ec6f (git): [DOC] Move document only source to doc
nobu (Nobuyoshi Nakada)
06:26 AM Feature #21459 (Closed): Add Set C-API
Feature added in commit:2ab38691a2683c992bf2886159094afd5e461233 jeremyevans0 (Jeremy Evans)
06:24 AM Revision 0b23a8db (git): Update dependencies for addition of set.h to public headers
jeremyevans (Jeremy Evans)
06:24 AM Revision 2ab38691 (git): Add Set C-API
This should be a minimal C-API needed to deal with Set objects. It
supports creating the sets, checking whether an el...
jeremyevans (Jeremy Evans)
06:24 AM Revision 08d4f789 (git): Rename some set_* functions to set_table_*
These functions conflict with the planned C-API functions. Since they
deal with the underlying set_table pointers and...
jeremyevans (Jeremy Evans)
06:19 AM Bug #21507 (Closed): Regexp considers variable repetition quantifiers invalid in lookbehind
Applied in changeset commit:git|b2fdd26417d1539014c7af499ab1f9b398eca4c0.
----------
Lookbehind regexp must be fixed...
mame (Yusuke Endoh)
03:36 AM Bug #21507 (Open): Regexp considers variable repetition quantifiers invalid in lookbehind
mame (Yusuke Endoh)
03:36 AM Bug #21507 (Feedback): Regexp considers variable repetition quantifiers invalid in lookbehind
This is currently an intended implementation limitation.
This behavior comes from the specifications of Onigmo, wh...
mame (Yusuke Endoh)
02:48 AM Bug #21507 (Closed): Regexp considers variable repetition quantifiers invalid in lookbehind
This is my first bug subscription, please feel free to tell me if I can do anything better.
# Description
Attem...
tiago-macedo (Tiago Macedo)
06:19 AM Revision b2fdd264 (git): Lookbehind regexp must be fixed-length
Fixes [Bug #21507] mame (Yusuke Endoh)
06:08 AM Revision 1317377f (git): ZJIT: A64: Have add/sub to SP be single-instruction
Previously a missed optimization for add followed by mov. While we're
at it, have Add and Sub share the same match ar...
alanwu (Alan Wu)
05:47 AM Revision 0058bee5 (git): Fix `heap-use-after-free` in `rb_getaddrinfo` (#13856)
This change addresses the following ASAN error:
```
==1973462==ERROR: AddressSanitizer: heap-use-after-free on addre...
Misaki Shioi
05:45 AM Feature #21039: Ractor.make_shareable breaks block semantics (seeing updated captured variables) of existing blocks
The followings are also approved; changing an existing proc object to shareable should be prohibited.
> * raise on...
mame (Yusuke Endoh)
05:43 AM Feature #21039: Ractor.make_shareable breaks block semantics (seeing updated captured variables) of existing blocks
https://github.com/ruby/dev-meeting-log/blob/master/2025/DevMeeting-2025-07-10.md#feature-21039-ractormake_shareable-... mame (Yusuke Endoh)
05:09 AM Misc #21399 (Closed): DevMeeting-2025-07-10
mame (Yusuke Endoh)
05:09 AM Misc #21508 (Open): DevMeeting-2025-08-21
# The next dev meeting
**Date: 2025/08/21 13:00-17:00** (JST)
Log: *TBD*
- Dev meeting *IS NOT* a decision-mak...
mame (Yusuke Endoh)
01:15 AM Revision a02dcbfd (git): Remove accidentally committed method Module.gccct_clear_table
This was probably meant to be only for debugging. It was introduced in
the big namespace on read commit: 382645d440d
Luke Gruber
01:12 AM Revision 0e2bae82 (git): ZJIT: Print a message about ZJIT_RB_BUG when unused (#13852)
Takashi Kokubun
12:26 AM Bug #21503 (Closed): \p{Word} does not match on \p{Join_Control} while docs say it does
https://github.com/ruby/ruby/pull/7711 has been merged hsbt (Hiroshi SHIBATA)

07/10/2025

10:57 PM Bug #21505 (Closed): [Ractor] calling exit from non-main ractor will hang if main ractor waits on it
Applied in changeset commit:git|6c66458070e2de45213f473ac30b431ebea81b9b.
----------
Fix rb_eSystemExit raised in Ra...
jhawthorn (John Hawthorn)
10:57 PM Revision 6c664580 (git): Fix rb_eSystemExit raised in Ractor
[Bug #21505]
Previously `Ractor.new { exit }.join` would hang because SystemExit was
special cased.
This commit upd...
jhawthorn (John Hawthorn)
09:10 PM Revision 470e11a4 (git): ZJIT: Mark Snapshot as having an output
Other instructions use it as an operand and #13814 especially needs it
to have an output for validation.
Max Bernstein
09:10 PM Revision 45be0e99 (git): ZJIT: Validate that each IR instruction appears at most once
Max Bernstein
08:40 PM Revision b1828cbb (git): ZJIT: Implement patch points on BOP redefinition (#13850)
Co-authored-by: Max Bernstein <max@bernsteinbear.com> Takashi Kokubun
07:11 PM Revision 214983bd (git): ZJIT: Add def-use validator via dataflow analysis (#13814)
This PR adds a validator based on dataflow analysis to ZJIT. It checks that all uses are dominated by a GEN-DEF prior... Ken Jin
07:08 PM Revision 9ab80a74 (git): ZJIT: Avoid optimizing locals on eval (#13840)
* ZJIT: Avoid optimizing locals on eval
* Maintain the local state for eval
Takashi Kokubun
03:56 PM Revision 9d41541b (git): Fix unused variable warnings in default.c in modular GC
The asan and valgrind macros when BUILDING_MODULAR_GC don't use the variables
which could the compiler to emit unused...
peterzhu2118 (Peter Zhu)
03:18 PM Revision 1fb4929a (git): Make `rb_enc_autoload_p` atomic
Using `encoding->max_enc_len` as a way to check if the encoding
has been loaded isn't atomic, because it's not atomic...
byroot (Jean Boussier)
02:40 PM Revision 51252ef8 (git): [DOC] Tweaks for String#concat (#13836)
burdettelamar (Burdette Lamar)
02:02 PM Revision a1acba6d (git): [DOC] Tweaks for String#codepoints
burdettelamar (Burdette Lamar)
12:42 PM Revision 800de989 (git): [Bug #19417] Update version guard
nobu (Nobuyoshi Nakada)
12:35 PM Bug #21506 (Closed): Fix timeout in `Addrinfo.getaddrinfo` to actually take effect
Applied in changeset commit:git|cdeb9c4d7020d36f157fde57eb12108c2515f031.
----------
Fix timeout in Addrinfo.getaddr...
Anonymous
12:35 PM Revision cdeb9c4d (git): Fix timeout in Addrinfo.getaddrinfo to actually take effect (#13803)
[Bug #21506] Fix timeout in Addrinfo.getaddrinfo to actually take effect
This change fixes an issue where the timeou...
Misaki Shioi
12:28 PM Revision bd18238a (git): [Bug #19417] Make word prop match join_control ...
... to conform to UTS 18 as mentioned in https://bugs.ruby-lang.org/issues/19417#note-3
https://unicode.org/reports/...
janosch-x (Janosch Müller)
12:02 PM Feature #21454: "undefined method 'break' for an instance of Binding"
nobu (Nobuyoshi Nakada) wrote in #note-1:
> Use no-dbg.rb with `RUBYOPT=-rno-dbg` when you run without `rdbg`.
>
...
vo.x (Vit Ondruch)
09:04 AM Feature #21454 (Feedback): "undefined method 'break' for an instance of Binding"
In today's dev meeting, we emphasized that it's important to ensure `binding.break` (or `debugger`) is removed before... ko1 (Koichi Sasada)
08:57 AM Feature #21454: "undefined method 'break' for an instance of Binding"
Use no-dbg.rb with `RUBYOPT=-rno-dbg` when you run without `rdbg`.
```ruby
class Binding
def break = nil
end
...
nobu (Nobuyoshi Nakada)
09:39 AM Bug #21503: \p{Word} does not match on \p{Join_Control} while docs say it does
It looks `\p{Word}` is updated in TR#18 Version 15.
https://www.unicode.org/reports/tr18/tr18-15.html
The fix looks...
naruse (Yui NARUSE)
09:23 AM Bug #21456 (Rejected): IO.close does not work in a rescue IO::TimeoutError block.
dE (dE Techno) wrote:
> not sure what signal it sends, it's undocumented
No signal is sent.
Send a signal by y...
nobu (Nobuyoshi Nakada)
08:56 AM Feature #21435 (Rejected): Kernel#then_try as a conditional #then
From my point of view, it doesn't make the code clearer. Besides that, the core Ruby does not provide even `#try`.
M...
matz (Yukihiro Matsumoto)
08:53 AM Bug #21452 (Rejected): ARGS_SPLAT bytecode regression between 3.3 and 3.4
I agree with @jeremyevans0 here. I consider this as an optimization.
Matz.
matz (Yukihiro Matsumoto)
08:51 AM Feature #21386: Introduce `Enumerable#join_map`
FWIW, this function is called `mapconcat` in Emacs: https://www.gnu.org/software/emacs/manual/html_node/elisp/Mapping... knu (Akinori MUSHA)
08:38 AM Feature #21386 (Rejected): Introduce `Enumerable#join_map`
I reject this proposal. Simply combine join and map at the moment.
I hope JIT inlining will remove intermediate obje...
matz (Yukihiro Matsumoto)
02:54 AM Feature #21386: Introduce `Enumerable#join_map`
https://github.com/ruby/dev-meeting-log/blob/master/2019/DevMeeting-2019-03-11.md
> [Feature #15323] Proposal: Add...
mame (Yusuke Endoh)
08:51 AM Feature #20205: Enable `frozen_string_literal` by default
Probably we would have Ruby4.0 in 2025, but I am not going to make frozen-string-literal default this year.
Matz.
matz (Yukihiro Matsumoto)
08:45 AM Feature #21455 (Rejected): Add a block argument to Array#join
It's fundamentally `join_map` we have rejected. Array#join should join, not mapping.
We are not going to add every e...
matz (Yukihiro Matsumoto)
08:33 AM Feature #4539 (Rejected): Array#zip_with
I don't think it's worth adding a new method.
Matz.
matz (Yukihiro Matsumoto)
08:30 AM Feature #21346: Introduce `String#ensure_suffix`
I don't think other candidates are better. Probably typical usage `str.ensure_suffix(".rb")` helps you understand the... matz (Yukihiro Matsumoto)
08:19 AM Feature #21039: Ractor.make_shareable breaks block semantics (seeing updated captured variables) of existing blocks
I'd like to have `Ractor.shareble_proc` and `Ractor.sharable_lambda`. See the agenda from 20250710 developer meeting.... matz (Yukihiro Matsumoto)
08:17 AM Feature #21459: Add Set C-API
I accept the proposal.
Matz.
matz (Yukihiro Matsumoto)
08:15 AM Feature #21442 (Assigned): Make tsort to bundled gems
I got the approval from @akr at https://bugs.ruby-lang.org/issues/21399
I added warning for this at commit:65a0f46...
hsbt (Hiroshi SHIBATA)
07:48 AM Revision 65a0f468 (git): Warn to use tsort for Ruby 3.6 that will be released at 2026
hsbt (Hiroshi SHIBATA)
06:45 AM Revision bec1ff62 (git): Sort `COMMONOBJS` alphabetically
nobu (Nobuyoshi Nakada)
06:40 AM Revision 8cc109a8 (git): [rubygems/rubygems] Update vendored resolv to 0.6.2
https://github.com/rubygems/rubygems/commit/afbbc02763 hsbt (Hiroshi SHIBATA)
05:16 AM Feature #17473: Make Pathname to embedded class of Ruby
Regarding the original proposal, I'd accept making Pathname built-in, considering its wide accepting among the commun... matz (Yukihiro Matsumoto)
03:44 AM Bug #19473: can't be called from trap context (ThreadError) is too limiting
We know that signal handlers run in a trap context, but are there other ways this can happen? I was under the impress... ioquatix (Samuel Williams)
12:28 AM Revision 581da51c (git): Fix whitespace on some RB_VM_LOCKING calls
jhawthorn (John Hawthorn)

07/09/2025

11:03 PM Revision f5085c70 (git): ZJIT: Mark profiled objects when marking ISEQ (#13784)
Takashi Kokubun
09:51 PM Revision 1e3d24a0 (git): [ruby/prism] Accept a newline after the defined? keyword [Backport #21197] (#13327)
* [ruby/prism] Accept a newline after the defined? keyword
[Bug #21197]
https://github.com/ruby/prism/commit/22be95...
Takashi Kokubun
09:50 PM Revision 1df94aaf (git): ZJIT: Name side-exit test cases correctly
Stan Lo
09:50 PM Revision e2a81c73 (git): ZJIT: Optimize `opt_and` and `opt_or` instructions for Fixnum
Stan Lo
09:50 PM Revision 10b582da (git): ZJIT: Profile `opt_and` and `opt_or` instructions
Stan Lo
09:01 PM Bug #21505: [Ractor] calling exit from non-main ractor will hang if main ractor waits on it
I opened https://github.com/ruby/ruby/pull/13838 which fixes this
```
./miniruby -e 'Ractor.new { exit }.join'
-...
jhawthorn (John Hawthorn)
06:42 PM Revision b146eae3 (git): [DOC] Tweaks for String#clear
burdettelamar (Burdette Lamar)
06:41 PM Revision 6c77a0c6 (git): [DOC] Tweaks for String#chop
burdettelamar (Burdette Lamar)
06:41 PM Revision 3baed2ea (git): [DOC] Tweaks for String#chr
burdettelamar (Burdette Lamar)
06:41 PM Feature #21386: Introduce `Enumerable#join_map`
I am against this.
Ergonomics: Adding a special "X_Y" method for every common pattern of "X followed by Y" is truly ...
Dan0042 (Daniel DeLorme)
05:38 PM Revision 94e702b0 (git): [DOC] Tweaks for String#chop
burdettelamar (Burdette Lamar)
05:38 PM Revision 54f28c1d (git): Avoid concurrently overflowing of shape_id
Previously it was possible for two atomic increments of next_shape_id
running concurrently to overflow MAX_SHAPE_ID. ...
jhawthorn (John Hawthorn)
05:38 PM Revision cfc006d4 (git): Always use atomics to get the shape count
When sharing between threads we need both atomic reads and writes. We
probably didn't need to use this in some cases ...
jhawthorn (John Hawthorn)
05:38 PM Revision 5dfd86cf (git): Fix off-by-one in shape_tree_mark/shape_tree_compact
This was using < so subtract one from the last shape id would have us
miss the last inserted shape. I think this is u...
jhawthorn (John Hawthorn)
04:40 PM Revision fd8a67fc (git): Re-ordered vcpkg related steps. It may be affected with VsDevCmd.bat
hsbt (Hiroshi SHIBATA)
04:40 PM Revision 942d64b4 (git): Use the latest version of Visual Studio with windows-2022 runner image
hsbt (Hiroshi SHIBATA)
03:54 PM Revision 1de0b28c (git): [DOC] Tweaks for String#chomp
burdettelamar (Burdette Lamar)
03:54 PM Revision f17e5c4d (git): [DOC] Tweaks for String#chomp!
burdettelamar (Burdette Lamar)
01:11 PM Revision 08738779 (git): Update to ruby/spec@ed254ba
andrykonchin (Andrew Konchin)
11:18 AM Revision ba246c5a (git): [ruby/io-wait] Revert "Fix dependency for ruby 2.6"
This reverts commit https://github.com/ruby/io-wait/commit/2eb3841e9c8f.
Ruby 2.6 support has been dropped.
https:/...
nobu (Nobuyoshi Nakada)
10:54 AM Bug #21506 (Closed): Fix timeout in `Addrinfo.getaddrinfo` to actually take effect
### Description
This change fixes an issue where the timeout option in `Addrinfo.getaddrinfo` was not functioning as...
shioimm (Misaki Shioi)
10:40 AM Bug #19473: can't be called from trap context (ThreadError) is too limiting
> Yes, for example gems like webservers like Puma set trap handlers.
The trap handler code that has already been w...
mame (Yusuke Endoh)
08:37 AM Bug #19473: can't be called from trap context (ThreadError) is too limiting
mame (Yusuke Endoh) wrote in #note-25:
> Indeed, creating a new thread for each signal arrival is extremely simple.
...
Eregon (Benoit Daloze)
12:28 AM Bug #19473: can't be called from trap context (ThreadError) is too limiting
> Run signal handlers not on the main thread but another thread.
While I don't have a strong opinion on this, I pe...
mame (Yusuke Endoh)
10:34 AM Revision 0c1c3ffa (git): [ruby/io-wait] Revert https://github.com/ruby/io-wait/pull/9 "Make
the gem a noop on Rubies older than
2.6"
This reverts commit https://github.com/ruby/io-wait/commit/75fcb74c327f.
T...
nobu (Nobuyoshi Nakada)
10:34 AM Revision ddeefa2e (git): [ruby/io-wait] Bump up the required ruby version
io-wait became a default gem at ruby 3.0.
Even it can be installed on earlier versions, but the standard library
will...
nobu (Nobuyoshi Nakada)
08:56 AM Revision 25afe7ef (git): Rename variables to suit each method
nobu (Nobuyoshi Nakada)
08:56 AM Revision cd10afed (git): Removed a left over from c71a60c1dd02
0a0eb2807ed7 has already replaced most of that code. nobu (Nobuyoshi Nakada)
08:12 AM Bug #21396: Set#initialize should call Set#add on items passed in
Regarding thread-safety, for `add?` the only thing is the return value where the old implementation might potentially... Eregon (Benoit Daloze)
06:35 AM Bug #21396: Set#initialize should call Set#add on items passed in
knu (Akinori MUSHA) wrote in #note-10:
> Jeremy, thanks for the reply.
>
> Your point about thread-safety is well...
jeremyevans0 (Jeremy Evans)
04:57 AM Bug #21396: Set#initialize should call Set#add on items passed in
Jeremy, thanks for the reply.
Your point about thread-safety is well taken. It is an important advantage. As a p...
knu (Akinori MUSHA)
12:41 AM Bug #21396: Set#initialize should call Set#add on items passed in
knu (Akinori MUSHA) wrote in #note-8:
> Considering the feedback we've received about compatibility in the new exper...
jeremyevans0 (Jeremy Evans)
06:59 AM Revision 3f0e0d5c (git): [ruby/io-nonblock] Bump up the required ruby version
io-nonblock became a default gem at ruby 3.0.
Even it can be installed on earlier versions, but the standard library
...
nobu (Nobuyoshi Nakada)
04:48 AM Revision 4ed27575 (git): [rubygems/rubygems] Update gemspec based on provided github username when exists
* Conditionally set changelog_url if gh username passed
and enabled
* conditionally set homepage, source code uri, ho...
Sweta Sanghavi
04:48 AM Revision 3feba181 (git): [rubygems/rubygems] Let s3_uri_signer accept the HTTP method
https://github.com/rubygems/rubygems/commit/35fc7f9547 Peteris Rudzusiks
04:48 AM Revision 5d880b75 (git): [rubygems/rubygems] Correctly sign S3 HEAD requests
We sometimes send HEAD requests. The s3_uri_signer.rb code allways assumed GETs.
This lead to consistently getting 40...
Peteris Rudzusiks
04:48 AM Revision af6012b9 (git): [rubygems/rubygems] Fix date format in S3 URI signer
%M is minute of the hour.
%m is month of year.
We want the former, not the latter.
https://github.com/rubygems/rubyg...
Peteris Rudzusiks
04:48 AM Revision c6da0197 (git): [rubygems/rubygems] Add blank line after every question
To try make output a bit less messy.
https://github.com/rubygems/rubygems/commit/92c8bc6769
deivid (David Rodríguez)
04:48 AM Revision 9942ff7c (git): [rubygems/rubygems] Use shorter questions as prompts in `bundle gem`
If we use long explanations as prompts, sometimes the prompt gets
printed twice due to a (I think) reline/readline bu...
deivid (David Rodríguez)
04:48 AM Revision 9b0f9f81 (git): [rubygems/rubygems] Reword MIT explanation to make sense after reordering
Previous wording assumed explanation was displayed after the question,
not before.
https://github.com/rubygems/rubyg...
deivid (David Rodríguez)
03:56 AM Revision e9cd3060 (git): ZJIT: Support guarding *Exact types (#13797)
ZJIT already can generate guard type instructions for *Exact types.
For example:
```
def test(strings)
strings.ma...
Stan Lo

07/08/2025

09:26 PM Revision 5aaedc05 (git): Re-ordered vcpkg related steps. It may be affected with VsDevCmd.bat
hsbt (Hiroshi SHIBATA)
09:26 PM Revision 80bf0744 (git): Use the latest version of Visual Studio with windows-2022 runner image
hsbt (Hiroshi SHIBATA)
09:18 PM Revision 9f00b887 (git): Bump up resolv-0.2.3 for Ruby 3.2
hsbt (Hiroshi SHIBATA)
09:12 PM Bug #21505: [Ractor] calling exit from non-main ractor will hang if main ractor waits on it
Yeah fair enough. It's probably not as complicated to fix as I initially thought. luke-gru (Luke Gruber)
08:54 PM Bug #21505: [Ractor] calling exit from non-main ractor will hang if main ractor waits on it
`Kernel#exit` is basically just `raise SystemExit`, does it mean any exception in a Ractor hangs?
IOW, I don't think ...
Eregon (Benoit Daloze)
07:58 PM Bug #21505 (Closed): [Ractor] calling exit from non-main ractor will hang if main ractor waits on it
```ruby
r = Ractor.new do
exit
end
r.join # hangs
```
Should `exit` be allowed in ractors? It would be ea...
luke-gru (Luke Gruber)
08:52 PM Feature #21501: Include native filenames in backtraces as sources for native methods
ivoanjo (Ivo Anjo) wrote in #note-6:
> I must admit I'm a bit torn on this. As I mentioned above, often the `.c` fil...
Eregon (Benoit Daloze)
08:41 PM Feature #21501: Include native filenames in backtraces as sources for native methods
matz (Yukihiro Matsumoto) wrote in #note-5:
> In my opinion, the typical Ruby user is not interested in line numbers...
Eregon (Benoit Daloze)
08:33 AM Feature #21501: Include native filenames in backtraces as sources for native methods
For me the usefulness is in understanding both what and where something is happening even without needing to go into ... ivoanjo (Ivo Anjo)
03:04 AM Feature #21501: Include native filenames in backtraces as sources for native methods
I didn't quite understand what makes you happy with this proposal. Could you explain a little more how it would be us... matz (Yukihiro Matsumoto)
08:33 PM Bug #19473: can't be called from trap context (ThreadError) is too limiting
OK, thank you all 3 for clarifying.
I understand that point of view, even though I don't fully agree with it.
One...
Eregon (Benoit Daloze)
11:24 AM Bug #19473: can't be called from trap context (ThreadError) is too limiting
Locking multiple mutex with a fixed order is considered to be deadlock-safe, but permitting mutex in signal_handler, ... tompng (tomoya ishida)
08:38 AM Bug #19473: can't be called from trap context (ThreadError) is too limiting
If `Mutex#lock` were permitted inside a trap handler, a program like the following would have a very hard-to-reproduc... mame (Yusuke Endoh)
05:10 AM Bug #19473: can't be called from trap context (ThreadError) is too limiting
Eregon (Benoit Daloze) wrote in #note-20:
> I think a simple way to look at this issue is to analyze all cases:
> 1...
ko1 (Koichi Sasada)
07:57 PM Revision c691095f (git): ZJIT: Use BitSet in HIR
tekknolagi (Maxwell Bernstein)
07:57 PM Revision e59f404b (git): ZJIT: Add a BitSet type
tekknolagi (Maxwell Bernstein)
07:51 PM Revision 342ada15 (git): ZJIT: Use nil? optimization to test guard generation against different types
Stan Lo
07:51 PM Revision 79915e6f (git): ZJIT: Profile `nil?` calls
This allows ZJIT to profile `nil?` calls and create type guards for
its receiver.
- Add `zjit_profile` to `opt_nil_p...
Stan Lo
06:50 PM Bug #21504 (Open): [Ractor] Process.waitpid blocks ractor, new NT doesn't pick up other ractors
The following code hangs when run with `RUBY_MAX_CPU=2 make run`:
Note: `RUBY_MAX_CPU` is set to 2 so that only 1 ...
luke-gru (Luke Gruber)
05:26 PM Revision b1604708 (git): [DOC] Tweaks for String#chars
burdettelamar (Burdette Lamar)
05:26 PM Revision 14971e75 (git): [DOC] Tweaks for String#center
burdettelamar (Burdette Lamar)
04:32 PM Revision 5cd408a5 (git): Bump up resolv-0.6.2 for Ruby 3.4 (#13818)
hsbt (Hiroshi SHIBATA)
04:28 PM Revision 9e4157a0 (git): ZJIT: Make type definition code more consistent
Stan Lo
04:28 PM Revision af892c1b (git): ZJIT: More accurately model Class types
Stan Lo
04:28 PM Revision 6c200828 (git): ZJIT: Support inference of ModuleExact type
Stan Lo
03:10 PM Bug #21375: Set[] does not call #initialize
I'm leaning toward making Set subclass-friendly again. That's how I've always wanted Set to be (unlike Array and Has... knu (Akinori MUSHA)
02:57 PM Bug #21396: Set#initialize should call Set#add on items passed in
Considering the feedback we've received about compatibility in the new experimental Set implementation, it may be in ... knu (Akinori MUSHA)
02:34 PM Bug #21029: Prism behavior for `defined? (;x)` differs
@S_H_ I agree, I think the overhead is not worth it in this case and we should pretend the `;` do not exist on both c... kddnewton (Kevin Newton)
02:23 PM Bug #21029: Prism behavior for `defined? (;x)` differs
I've fixed that `defined? (x;)` returns an `expression` when using parse.y.
https://github.com/ruby/ruby/pull/13821
...
S_H_ (Shun Hiraoka)
10:30 AM Revision f5acefca (git): [ruby/uri] Prefer dedicated assertion methods
https://github.com/ruby/uri/commit/d79b3f5b94 nobu (Nobuyoshi Nakada)
10:00 AM Revision 100c0430 (git): [ruby/etc] Prefer dedicated assertions
https://github.com/ruby/etc/commit/9caddede76 nobu (Nobuyoshi Nakada)
09:25 AM Revision 7ce4db84 (git): [ruby/delegate] Prefer dedicated assertions
https://github.com/ruby/delegate/commit/5ee4189537 nobu (Nobuyoshi Nakada)
07:52 AM Feature #21455: Add a block argument to Array#join
I have a different view on this proposal.
If `Array#join` were to accept a block, I would expect its behavior to r...
mame (Yusuke Endoh)
07:26 AM Revision c913a635 (git): Update default gems list at b9782ab8932f9fb6a24a0522c579ca [ci skip]
git[bot]
07:25 AM Revision b9782ab8 (git): [ruby/resolv] v0.6.2
https://github.com/ruby/resolv/commit/a28aaed4cb hsbt (Hiroshi SHIBATA)
07:25 AM Revision 9aa0300d (git): [ruby/resolv] Limit decompressed name length
RFC 1035 specifies the 255-octet maximum name length. This change set
checks the limit.
https://github.com/ruby/reso...
mame (Yusuke Endoh)
06:36 AM Revision 680383c6 (git): [ruby/tsort] Exclude gemspec and git-related files
https://github.com/ruby/tsort/commit/bf2e3a8695 nobu (Nobuyoshi Nakada)
06:36 AM Revision 51de7c75 (git): [ruby/tsort] Use git magic signatures to exclude files
https://github.com/ruby/tsort/commit/ab55dcb7f3 nobu (Nobuyoshi Nakada)
06:11 AM Revision 75786557 (git): [ruby/tsort] [DOC] Document constants
https://github.com/ruby/tsort/commit/1d1711ad23 nobu (Nobuyoshi Nakada)
05:37 AM Feature #21262 (Closed): Proposal: `Ractor::Port`
https://github.com/ruby/dev-meeting-log/blob/master/2025/DevMeeting-2025-06-05.md#feature-21262-proposal-ractorport
...
ko1 (Koichi Sasada)
05:36 AM Bug #21362 (Assigned): Namespace: Inline method caches poisoned with builtins
mame (Yusuke Endoh)
02:12 AM Bug #21503: \p{Word} does not match on \p{Join_Control} while docs say it does
There is already a PR for that: https://github.com/ruby/ruby/pull/7711
Can you take a look? @duerst @naruse
mame (Yusuke Endoh)
12:11 AM Feature #20405: Inline comments
I like Marco's proposal, but I wonder how much code out there could potentially break. pabloh (Pablo Herrero)
 

Also available in: Atom