Project

General

Profile

Activity

From 03/11/2025 to 03/17/2025

03/17/2025

09:10 PM Bug #21187 (Closed): Strings concatenated with `\` getting frozen with literal hashes (PRISM only)
When the first elements of a literal hash are strings that are concatenated with `\`, those elements are flagged with... LocoDelAssembly (Hernán Pereira)
08:12 PM Revision 2dc50149 (git): [DOC] Fix indentation for documentation of Hash#compact
peterzhu2118 (Peter Zhu)
07:41 PM Feature #15854: Tracing instance variable assignment
How about this naming convention:
- `ivar_set`
- `cvar_set`
- `gvar_set`
`ivar`, `cvar`, and `gvar` all match...
st0012 (Stan Lo)
05:19 PM Bug #21186 (Closed): Inconsistent parsing of ?あand 0
Applied in changeset commit:git|1acfb29015dbc38fd345d8786aa78aad59f7dcd1.
----------
[Bug #21186] multibyte char lit...
nobu (Nobuyoshi Nakada)
05:19 PM Revision 52f65634 (git): Allow arguments to be passed through Binding#irb (#12796)
* Allow arguments to be passed through Binding#irb
Modified Binding#irb to forward any arguments to the underlying i...
qwyng (Hiroaki Osawa)
02:55 PM Bug #21185 (Closed): Range#overlap? is not commutative with doubly-unbounded range argument.
Applied in changeset commit:git|b5cdbadeeddd2b8e834b9d5565c13fcc43f3e684.
----------
[Bug #21185] Fix Range#overlap?...
Anonymous
02:55 PM Revision 1acfb290 (git): [Bug #21186] multibyte char literal should be a single letter word
nobu (Nobuyoshi Nakada)
02:42 PM Revision c85dffee (git): Avoid pinning `storage_head` in `iseq_mark_and_move` (#12880)
* Avoid pinning `storage_head` in `iseq_mark_and_move`
This refactor changes the behavior of `iseq_mark_and_move` to...
Eileen M. Uchitelle
02:42 PM Revision 8d6f153f (git): Manage skipping instance variable IDs in one place
nobu (Nobuyoshi Nakada)
02:42 PM Revision 4c072c81 (git): Fix `assert_warning` for `Proc`
`Proc` does not have `encoding` method.
Also, make `assert_raise_with_message` accept a `Proc` as the expected
patte...
nobu (Nobuyoshi Nakada)
10:18 AM Revision 8f19f0aa (git): [ruby/optparse] Fix completion of key-value pairs array
Enum array may be the list of pairs of key and value. Check if only
key is completable, not pair.
Fix https://githu...
nobu (Nobuyoshi Nakada)
07:26 AM Revision b5cdbade (git): [Bug #21185] Fix Range#overlap? with infinite range
Infinite ranges, i.e. unbounded ranges, should overlap with any other range
which wasn't the case in the following ex...
Jérôme Parent-Lévesque
07:01 AM Feature #19908: Update to Unicode 15.1
@hsbt
I've sent an email to cvs-admin and opened https://github.com/ruby/git.ruby-lang.org/pull/91
ima1zumi (Mari Imaizumi)
04:00 AM Feature #19908: Update to Unicode 15.1
@ima1zumi Can you provide the required information to me? See https://github.com/ruby/ruby/wiki/Committer-How-To#how-... hsbt (Hiroshi SHIBATA)
02:53 AM Feature #19908: Update to Unicode 15.1
#note-16 Approved.
Matz.
matz (Yukihiro Matsumoto)

03/16/2025

08:00 PM Revision 3e04f7b6 (git): Only mark `cc->cme_` on valid imemo_callcache
We observed T_NONE on `cc->cme_` on a --repeat-count=50 run a compaction
test on CI:
http://ci.rvm.jp/results/trunk-r...
alanwu (Alan Wu)
03:35 PM Revision 70a9e5f6 (git): [DOC] Doc for Hash#transform_keys
burdettelamar (Burdette Lamar)
12:22 PM Bug #21131: IO.copy_stream: yielded string changes value when duped
ruby_3_3 commit:f85e5e01bafeca387e833b9d79cab43a8b22aa3d merged revision(s) commit:f423f6e10c0c226dfed98e7cb7a5d48919... nagachika (Tomoyuki Chikanaga)
11:35 AM Revision f85e5e01 (git): merge revision(s) f423f6e10c0c226dfed98e7cb7a5d489191dfa35: [Backport #21131]
Ensure IO.copy_stream buffer is an independent string
Otherwise, changes to the buffer by the destination wr...
nagachika (Tomoyuki Chikanaga)
11:19 AM Bug #21172: Race condition in `register_fstring`
https://github.com/ruby/ruby/pull/12873 byroot (Jean Boussier)
09:06 AM Bug #21172: Race condition in `register_fstring`
ruby_3_3 commit:726bff43b462d2a1b0bc93299cf031202f7fe7a1 merged revision(s) commit:c224ca4feaff20cab03d76439bcbfb35d4... nagachika (Tomoyuki Chikanaga)
11:09 AM Bug #21180: SEGV while marking `imemo_env->iseq`
ruby_3_3 commit:2b2ab1a67c236eb0c47e63e8adcf877b0d20a38c merged revision(s) commit:08b3a45bc97c835b4677bf76dbce68fd51... nagachika (Tomoyuki Chikanaga)
09:52 AM Revision 2b2ab1a6 (git): merge revision(s) 08b3a45bc97c835b4677bf76dbce68fd51d81897: [Backport #21180]
Push a real iseq in rb_vm_push_frame_fname()
Previously, vm_make_env_each() (used during proc
creati...
nagachika (Tomoyuki Chikanaga)
09:49 AM Bug #21144: Win32: Use Windows time zone ID as the time zone name if TZ is not set
ruby_3_3 commit:d213eb7f453fa0bd6c476826c450d9726c3c8b15 merged revision(s) commit:3f07bc76ff6a11232d9f18e5eaa31835c1... nagachika (Tomoyuki Chikanaga)
09:46 AM Revision d213eb7f (git): merge revision(s) 3f07bc76ff6a11232d9f18e5eaa31835c195e8f0, 34098b669c0cbc024cd08e686891f1dfe0a10aaf: [Backport #21144]
[Bug #21144] Win32: Use Windows time zone ID if TZ is not set
If the TZ environment variable is not set, the...
nagachika (Tomoyuki Chikanaga)
09:02 AM Revision 726bff43 (git): merge revision(s) c224ca4feaff20cab03d76439bcbfb35d4e2f6b1: [Backport #21172]
Fix a race condition with interned strings sweeping.
[Bug #21172]
This fixes a rare CI failure.
...
nagachika (Tomoyuki Chikanaga)
08:33 AM Revision 47d75b65 (git): Make wrapper of `main` for wasm more generic
nobu (Nobuyoshi Nakada)
08:33 AM Revision 453f88f7 (git): Make ASAN default option string built-in libruby
The content depends on ruby internal, not responsibility of the
caller. Revive `RUBY_GLOBAL_SETUP` macro to define t...
nobu (Nobuyoshi Nakada)
07:20 AM Bug #21186: Inconsistent parsing of ?あand 0
Added comparison with escaped chars qnighy (Masaki Hara)
05:13 AM Bug #21186 (Closed): Inconsistent parsing of ?あand 0
`?あand 0` has inconsistent behavior between Prism and parse.y.
```console
% ./miniruby --parser=parse.y -e "?aand...
qnighy (Masaki Hara)
07:10 AM Bug #21092: error building ruby 3.4.1 on cygwin/msys2
ruby_3_3 commit:da86a9959b4c5bbdefb6fd1000a0251a151ffbc1 merged revision(s) commit:2b6fc9ea7212543a1be26768403f59c7a7... nagachika (Tomoyuki Chikanaga)
07:10 AM Bug #21159: `Module#set_temporary_name` should freeze given name
ruby_3_3 commit:1d3c19871d7a0d05a0f0a80e78cfad843b7ef324 merged revision(s) commit:931ac960b6d11937364b6c4e847fdd575e... nagachika (Tomoyuki Chikanaga)
06:39 AM Revision 1d3c1987 (git): merge revision(s) 931ac960b6d11937364b6c4e847fdd575ee67980: [Backport #21159]
[Bug #21159] module names should not be modifiable nagachika (Tomoyuki Chikanaga)
06:25 AM Revision da86a995 (git): merge revision(s) 2b6fc9ea7212543a1be26768403f59c7a759b5ea: [Backport #21092]
[Bug #21092] Fallback variables after execonf has done
When reading from a dummy makefile, the global variab...
nagachika (Tomoyuki Chikanaga)
04:28 AM Bug #20906: Segmentation Fault in compile_keyword_arg
committed at commit:ac3f355fb33f4ce41df864f2084028610b7b38d1. nagachika (Tomoyuki Chikanaga)
03:47 AM Bug #20906: Segmentation Fault in compile_keyword_arg
In general I think the syntax should not be changed in stable branches.
But segmentation fault should be avoided as ...
nagachika (Tomoyuki Chikanaga)
04:10 AM Revision ac3f355f (git): Silently ignore keyword args for attr-asign method to cease segmentation fault.
nagachika (Tomoyuki Chikanaga)
03:27 AM Revision f23146f0 (git): Fix enums in comparisons
nobu (Nobuyoshi Nakada)
03:25 AM Bug #21141 (Closed): `Time#utc?` does not work with a timezone object
Applied in changeset commit:git|06919949a60b42a8f30e8bd0cb075e17b05eebcd.
----------
[Bug #21141] [DOC] Clarify what...
nobu (Nobuyoshi Nakada)
03:09 AM Revision 06919949 (git): [Bug #21141] [DOC] Clarify what time is in UTC
nobu (Nobuyoshi Nakada)

03/15/2025

07:21 PM Bug #21185: Range#overlap? is not commutative with doubly-unbounded range argument.
https://github.com/ruby/ruby/pull/12937 jeromepl (Jerome Parent-Levesque)
07:01 PM Bug #21185 (Closed): Range#overlap? is not commutative with doubly-unbounded range argument.
In https://bugs.ruby-lang.org/issues/20725 the following:
``` ruby
(nil..nil).overlap?(..3)
```
was fixed to outp...
jeromepl (Jerome Parent-Levesque)
07:02 AM Revision 35920f7a (git): Refine `TestSocket_TCPSocket#test_initialize_failure`
* Use `assert_raise_kind_of` instead of `rescue` and `flunk`.
* Use `assert_include` for the pattern that may contain...
nobu (Nobuyoshi Nakada)
06:50 AM Revision 29c0ca58 (git): Test for the crash
nobu (Nobuyoshi Nakada)
06:50 AM Revision b148dfef (git): Fix crash in TCPSocket.open
Fix segfault crash observable with TCPSocket.open(nil, nil) Luke Jahnke
12:52 AM Feature #19908: Update to Unicode 15.1
+1 alanwu (Alan Wu)
12:36 AM Feature #19908: Update to Unicode 15.1
+1 mrkn (Kenta Murata)

03/14/2025

07:04 PM Revision 6ca43e9b (git): Push a real iseq in rb_vm_push_frame_fname()
Previously, vm_make_env_each() (used during proc
creation and for the debug inspector C API) picked up the
non-GC-all...
alanwu (Alan Wu)
07:04 PM Revision 31502b0d (git): Have `ast` live longer in ISeq.compile_file to fix GC stress crash
Previously, live range of `ast_value` ended on the call right before
rb_ast_dispose(), which led to premature collect...
alanwu (Alan Wu)
06:34 PM Feature #19908: Update to Unicode 15.1
+1 matsuda (Akira Matsuda)
06:16 PM Feature #19908: Update to Unicode 15.1
+1 k0kubun (Takashi Kokubun)
03:39 PM Feature #19908: Update to Unicode 15.1
+1 kosaki (Motohiro KOSAKI)
12:03 PM Feature #19908: Update to Unicode 15.1
I'd also like to introduce ima1zumi-san as a candidate for committer. She has been actively working on irb and reline... mame (Yusuke Endoh)
11:36 AM Feature #19908: Update to Unicode 15.1
@naruse
Thank you so much for your review and recommending me. I’d be happy to take on commit rights and commit this...
ima1zumi (Mari Imaizumi)
10:51 AM Feature #19908: Update to Unicode 15.1
The change looks good to me.
Since you have already contributed reline and show your engineering skill, and now you ...
naruse (Yui NARUSE)
02:41 PM Revision efb2d436 (git): [DOC] Tweaks for Hash#to_h (#12918)
burdettelamar (Burdette Lamar)
09:59 AM Bug #21171: Segfault on large stack (RUBY_THREAD_VM_STACK_SIZE) on 3.4.2
my colleague took further investigation for this, and identified the commit [f14e52c8c45f1288537ff38c153096d095b5ad20... kyontan_q (Kyosuke Tanaka)
09:51 AM Misc #20968: `Array#fetch_values` unexpected method name in stack trace
mame (Yusuke Endoh) wrote in #note-15:
> In any case, it was reaffirmed that matz strongly prefers that `<internal:`...
Eregon (Benoit Daloze)
07:12 AM Misc #20968: `Array#fetch_values` unexpected method name in stack trace
> So now Method#call can directly invoke a block?
> No, it's just the stack trace deceiving you by hiding crucial det...
mame (Yusuke Endoh)
08:51 AM Revision de48e47d (git): Invoke `inherited` callbacks before `const_added`
[Misc #21143]
Conceptually this makes sense and is more consistent with using
the `Name = Class.new(Superclass)` alt...
byroot (Jean Boussier)
08:10 AM Revision dd7deef3 (git): Organize block_param_def by defining opt_block_param for non-terminal symbols
ydah (Yudai Takada)
08:07 AM Bug #21142: Lazy enumerator `.each_with_index` ignores `.take(0)` before it
@nobu your opinion on this `take(0)` thing? Hanmac (Hans Mackowiak)
04:42 AM Feature #17016: Enumerable#accumulate
I have an issue that is kinda solvable with `scan` today and discover this old thread.
Thank you all for putting tho...
midnight (Sarun R)
03:47 AM Misc #21143: Speficy order of execution const_added vs inherited
byroot (Jean Boussier) wrote in #note-9:
> Here's a tentative implementation, with some ruby specs added: https://git...
nobu (Nobuyoshi Nakada)
03:32 AM Revision f5f19518 (git): Refactor parse.y to replace tIDENTIFIER and tCONSTANT with ident_or_const inline rules
ydah (Yudai Takada)
02:49 AM Bug #20996: Embed Ruby 3.4 Failure
That is helpful.
It would be great if there was official documentation on how to embed Ruby. For example, like Pytho...
cfis (Charlie Savage)
01:12 AM Revision a4328a42 (git): [DOC] Tweaks for Hash#to_hash
burdettelamar (Burdette Lamar)
01:11 AM Revision 057ee25d (git): [DOC] Tweaks for Hash#to_proc
burdettelamar (Burdette Lamar)
12:30 AM Bug #21184: SyntaxError when combining `in` with inline hash-rocket (`=>`)
Thank you for the prompt reply Alan.
Sorry I missed that line while skimming through that document prior to submitti...
jtannas (Joel Tannas)
12:22 AM Bug #21184 (Rejected): SyntaxError when combining `in` with inline hash-rocket (`=>`)
It's working as [documented](https://docs.ruby-lang.org/en/3.4/syntax/pattern_matching_rdoc.html)
> Note that only...
alanwu (Alan Wu)

03/13/2025

10:38 PM Bug #21184 (Rejected): SyntaxError when combining `in` with inline hash-rocket (`=>`)
I believe the following should be valid syntax but it's throwing a `SyntaxError`:
``` ruby
{ a: 1 } in { a: 1 } # =...
jtannas (Joel Tannas)
10:21 PM Revision ae7890df (git): Use the EC parameter in instructions.
The forwarding instructions should use the `ec` parameter passed to
vm_exec_core instead of trying to look up the EC ...
tenderlovemaking (Aaron Patterson)
05:18 PM Feature #21042: Add and expose Thread#memory_allocations memory allocation counters
> It should be similar to GC.stat.
> Maybe it should be accessible from other threads?
What about something like ...
byroot (Jean Boussier)
02:40 PM Feature #21042: Add and expose Thread#memory_allocations memory allocation counters
On JVM there is [`ThreadMXBean#getThreadAllocatedBytes`](https://docs.oracle.com/en/java/javase/11/docs/api/jdk.manag... Eregon (Benoit Daloze)
11:45 AM Feature #21042: Add and expose Thread#memory_allocations memory allocation counters
I am positive, but I also feel this API should be implementation dependent. Not all implementations could easily prov... matz (Yukihiro Matsumoto)
09:49 AM Feature #21042: Add and expose Thread#memory_allocations memory allocation counters
Matz said he is positive on this proposal.
I have some considerations.
* Now current proposal doesn't increase ...
ko1 (Koichi Sasada)
04:28 PM Revision 5cc43982 (git): Check LoadError first
The message from dlerror is not our concern. nobu (Nobuyoshi Nakada)
04:28 PM Revision adc7f046 (git): Added assertion strings with Xcode 16.3 beta
hsbt (Hiroshi SHIBATA)
03:45 PM Bug #20996 (Closed): Embed Ruby 3.4 Failure
> I don't believe the requirement to use RUBY_INIT_STACK is documented anywhere.
https://docs.ruby-lang.org/capi/e...
alanwu (Alan Wu)
06:40 AM Bug #20996: Embed Ruby 3.4 Failure
Thanks for looking.
We were able to track down the issue, so I should close this issue.
The problem is starting wi...
cfis (Charlie Savage)
03:40 PM Misc #21143: Speficy order of execution const_added vs inherited
The problem with `C = Class.new(parent)` is that it is a totally different mindset.
In the thing we are discussing, ...
fxn (Xavier Noria)
02:03 PM Misc #21143: Speficy order of execution const_added vs inherited
> I'm just not sure if it might cause compatibility issues, but I suggest to try, we are early in the dev cycle and c... byroot (Jean Boussier)
02:00 PM Misc #21143: Speficy order of execution const_added vs inherited
@byroot 's PR swaps `rb_class_inherited()` and `rb_const_set()`, so AFAIK the constant is not set yet in the "lexical... Eregon (Benoit Daloze)
01:51 PM Misc #21143: Speficy order of execution const_added vs inherited
> Nowadays, the constant exists in inherited (maybe your patch preserves this too?)
Right. That is something that ...
byroot (Jean Boussier)
01:16 PM Misc #21143: Speficy order of execution const_added vs inherited
> But if we still assign the name before calling inherited, then I think we can change the order without problem.
Ju...
fxn (Xavier Noria)
12:31 PM Misc #21143: Speficy order of execution const_added vs inherited
Here's a tentative implementation, with some ruby specs added: https://github.com/ruby/ruby/pull/12927 byroot (Jean Boussier)
11:41 AM Misc #21143: Speficy order of execution const_added vs inherited
Calling `inherited` before `const_added` is doable and I doubt it would cause much backward compatibility issues exce... byroot (Jean Boussier)
07:38 AM Misc #21143: Speficy order of execution const_added vs inherited
In theory, there could be an incompatibility in projects using Zeitwerk.
Let's imagine you have a class `C` defined ...
fxn (Xavier Noria)
06:37 AM Misc #21143 (Feedback): Speficy order of execution const_added vs inherited
I think @eregon's opinion here is reasonable. But I don't want to break any existing code. I'd like to experiment `in... matz (Yukihiro Matsumoto)
03:20 PM Revision 84f51eb0 (git): Use user defined parameterizing rules `args_tail_basic`
ydah (Yudai Takada)
02:44 PM Misc #21154: Document or change Module#autoload?
@mame thanks for considering.
I am not sure it would be a good idea in practice for the same reason it was decided t...
fxn (Xavier Noria)
02:10 PM Misc #21154 (Feedback): Document or change Module#autoload?
@fxn I think it makes sense. Would it help you if such a new API is introduced to determine if a file is currently be... mame (Yusuke Endoh)
01:08 PM Misc #21154 (Closed): Document or change Module#autoload?
Applied in changeset commit:git|ee1f39ef882e7ce175794e6286c0dcafba0bfa35.
----------
Add a document to autoload
Use...
mame (Yusuke Endoh)
12:54 PM Misc #21154: Document or change Module#autoload?
Thanks @mame!
I believe this may not entirely work.
That makes sense to be asked if you are thinking about expl...
fxn (Xavier Noria)
11:53 AM Misc #21154 (Assigned): Document or change Module#autoload?
This was discussed at the dev meeting.
It is decided to add a sentence to documents of `Kernel#autoload` and `Modu...
mame (Yusuke Endoh)
02:25 PM Misc #20968: `Array#fetch_values` unexpected method name in stack trace
matz (Yukihiro Matsumoto) wrote in #note-13:
> It should not be displayed. I don't care much if it exists. It should...
Eregon (Benoit Daloze)
12:07 PM Misc #20968: `Array#fetch_values` unexpected method name in stack trace
It should not be displayed. I don't care much if it exists. It should be decided according to the demand and implemen... matz (Yukihiro Matsumoto)
11:09 AM Misc #20968: `Array#fetch_values` unexpected method name in stack trace
> He reiterated that <internal: should not be displayed.
Should it even exist then? Because a "simple" solution wo...
byroot (Jean Boussier)
11:06 AM Misc #20968: `Array#fetch_values` unexpected method name in stack trace
I reconfirmed this with @matz during the dev meeting. He reiterated that `<internal:` should not be displayed.
To ...
mame (Yusuke Endoh)
02:24 PM Revision f2483c79 (git): [ruby/prism] Use Set.new over to_set
https://github.com/ruby/prism/commit/422d5c4c64 kddnewton (Kevin Newton)
02:12 PM Revision 31cf2684 (git): Output object_id in object metadata for MMTk
peterzhu2118 (Peter Zhu)
02:12 PM Revision bdb25959 (git): Move object_id to flags for ObjectSpace dumps
Moving object_id dumping from ObjectSpace to the GC flags allows ObjectSpace
to not assume the FL_SEEN_OBJ_ID flag an...
peterzhu2118 (Peter Zhu)
01:52 PM Revision 3d4c7c38 (git): [ruby/prism] Use `reverse_each` in the parser translator
Avoids an array allocation which matters more and more
the larger the file is.
I have it at 14% of runtime.
https:/...
Earlopain (Earlopain _)
01:52 PM Revision 67e6ccb2 (git): [ruby/prism] Optimize array inclusion checks in the parser translator
I see `Array.include?` as 2.4% runtime. Probably because of `LPAREN_CONVERSION_TOKEN_TYPES` but
the others will be fa...
Earlopain (Earlopain _)
01:50 PM Bug #20340 (Closed): Ractor comments not applying to constant targets
Based on https://bugs.ruby-lang.org/issues/21016#note-4, I think this is the expected behavior. kddnewton (Kevin Newton)
01:50 PM Bug #21016 (Closed): What should massign with `shareable_constant_value: experimental_everything` freeze?
Based on https://bugs.ruby-lang.org/issues/21016#note-4, I think this is the expected behavior. kddnewton (Kevin Newton)
11:56 AM Bug #21016: What should massign with `shareable_constant_value: experimental_everything` freeze?
In my opinion, only constant assignment should make assignee shareable.
Matz.
matz (Yukihiro Matsumoto)
01:08 PM Revision ee1f39ef (git): Add a document to autoload
Users are responsible for avoiding circular autoload.
[Misc #21154]
mame (Yusuke Endoh)
12:11 PM Bug #21139: Prism and parse.y parses `it = it` differently
I said I prefer Prism behavior to `parse.y`. But It was due to my misunderstanding. `it = it` should initialize the l... matz (Yukihiro Matsumoto)
12:06 PM Revision 4b844f7d (git): [ruby/prism] Ensure backwards compatibility with the custom parser builder
Temoprary backwards-compat code so that current users
don't break.
Eventually the Translation::Parser initializer sh...
Earlopain (Earlopain _)
12:03 PM Bug #21026: `def __FILE__.a; end` should be a syntax error
It should raise error with or without parentheses.
Matz.
matz (Yukihiro Matsumoto)
11:46 AM Bug #21026: `def __FILE__.a; end` should be a syntax error
A patch to make it syntax error: https://github.com/ruby/ruby/pull/12925 nobu (Nobuyoshi Nakada)
11:38 AM Misc #21134: DevMeeting-2025-03-13
The next dev meeting will be held at RubyKaigi 2025, Matsuyama, face to face. Please write to #21100 for the agenda. mame (Yusuke Endoh)
11:35 AM Misc #21134 (Closed): DevMeeting-2025-03-13
mame (Yusuke Endoh)
11:25 AM Bug #21029: Prism behavior for `defined? (;x)` differs
Discussed at the dev meeting.
kddnewton (Kevin Newton) wrote in #note-6:
> As @qnighy points out, should this be ...
mame (Yusuke Endoh)
11:23 AM Bug #21152 (Closed): Enumerator's #size returned by Range#reverse_each raises an exception for endless Range
Discussed at the dev meeting, and @matz agreed with @eileencodes ; the behavior of Ruby 3.4 is better. mame (Yusuke Endoh)
11:16 AM Feature #16993: Sets: from hash keys using Hash#key_set
This was discussed at the dev meeting. @matz wanted to hear more about the use cases for this method first.
Also, ...
mame (Yusuke Endoh)
10:54 AM Feature #20971 (Closed): Deprecate `rb_path_check`
Applied in changeset commit:git|7c88cbb4a6c486348c44be24941f17ef8be6b329.
----------
[Feature #20971] Deprecate `rb_...
Earlopain (Earlopain _)
09:43 AM Revision 7c88cbb4 (git): [Feature #20971] Deprecate `rb_path_check`
https://bugs.ruby-lang.org/issues/20971 Earlopain (Earlopain _)
09:10 AM Feature #21028 (Feedback): Method for finding why an object isn't Ractor shareable
mame (Yusuke Endoh)
07:19 AM Bug #21151 (Feedback): IO and StringIO raise FrozenError even for read-only methods
First, I would like to know why you want to freeze `IO` and `StringIO`. I can't think of a use case.
If there is no ...
matz (Yukihiro Matsumoto)
07:01 AM Revision faa8ccb6 (git): Update bundled gems list as of 2025-03-12
git[bot]
05:39 AM Bug #20698: Please backport fix for CVE-2024-43398
REXML-3.3.9 has been merged at https://github.com/ruby/ruby/commit/3713db9a24c4f4b69c59a0b28c41f861b5a14c97 on `ruby_... hsbt (Hiroshi SHIBATA)
05:27 AM Revision 469a0a4a (git): merge revision(s) da4464b824857d7610f9865ceb452ce0ead49164: [Backport #19426]
[Bug #19426] Fix endless `Range#step` with `#succ` method hsbt (Hiroshi SHIBATA)
05:27 AM Revision 998c26cd (git): merge revision(s) 79eb75a8dd64848f23e9efc465f06326b5d4b680: [Backport #20025]
[Bug #20025] Check if upper/lower before fallback to case-folding hsbt (Hiroshi SHIBATA)
05:27 AM Revision 774e3f00 (git): merge revision(s) 08b3a45bc97c835b4677bf76dbce68fd51d81897: [Backport #21180]
Push a real iseq in rb_vm_push_frame_fname()
Previously, vm_make_env_each() (used during proc
creati...
hsbt (Hiroshi SHIBATA)
05:27 AM Revision f89a334b (git): merge revision(s) bccec7fb468ad977be75e7e4c2644b4ea845ab0c, 5f8ebcada099351acbc22db264e7cd3773c2bdc4, e13575bb7938e9e5b6a79bfca1b3793123f479da, 4adcfc8cd7a17593a6590025da2b03eebf4fd63c: [Backport #19584]
Fix crash in rb_gc_register_address
[Bug #19584]
Some C extensions pass a pointer to a global varia...
hsbt (Hiroshi SHIBATA)
05:27 AM Revision 2c495132 (git): it is not working with Ruby 3.2
hsbt (Hiroshi SHIBATA)
05:27 AM Revision 64d93539 (git): Merge strscan-3.0.7
hsbt (Hiroshi SHIBATA)
05:27 AM Revision 30379fa1 (git): Merge strscan-3.0.6
hsbt (Hiroshi SHIBATA)
05:27 AM Revision 6dd8bd0d (git): merge revision(s) f423f6e10c0c226dfed98e7cb7a5d489191dfa35: [Backport #21131]
Ensure IO.copy_stream buffer is an independent string
Otherwise, changes to the buffer by the destination wr...
hsbt (Hiroshi SHIBATA)
05:27 AM Revision 1c9af6c1 (git): merge revision(s) d4a1a2780c39bc648496ac92fc6e6ce2eb38ab47: [Backport #21032]
rb_feature_p: skip `get_expanded_load_path` for absolute paths
Ref: https://github.com/fxn/zeitwerk/pull/308...
hsbt (Hiroshi SHIBATA)
05:27 AM Revision 0ef3411b (git): merge revision(s) 647390308239fbf82d159ecd83ed8df090af518d: [Backport #18257]
[Bug #18257] Register the class path of FrozenCore to mark
ICLASS does not have the path usually, so it need...
hsbt (Hiroshi SHIBATA)
05:26 AM Bug #19584: Crash in rb_gc_register_address
ruby_3_2 commit:8c3ebe6a00b1176c37bc7894a4373774255f6290 merged revision(s) commit:bccec7fb468ad977be75e7e4c2644b4ea8... hsbt (Hiroshi SHIBATA)
05:26 AM Bug #21180: SEGV while marking `imemo_env->iseq`
ruby_3_2 commit:e325f5b1636d7eb59a9cc2f35ba6d91d6da4f459 merged revision(s) commit:08b3a45bc97c835b4677bf76dbce68fd51... hsbt (Hiroshi SHIBATA)
05:26 AM Bug #20025: Parsing identifiers/constants is case-folding dependent
ruby_3_2 commit:6c24731837f88d67517cfc590cb496daed7a0ef5 merged revision(s) commit:79eb75a8dd64848f23e9efc465f06326b5... hsbt (Hiroshi SHIBATA)
05:26 AM Bug #19426: Endless `Range#step` of object with `#succ` method does not work
ruby_3_2 commit:89eacd31b7565aa45b9c9af4b475cf908830e41c merged revision(s) commit:da4464b824857d7610f9865ceb452ce0ea... hsbt (Hiroshi SHIBATA)
04:43 AM Revision 482b5307 (git): [DOC] Correct output in calling_methods.rdoc
Yutaro Ohno
04:22 AM Bug #21131: IO.copy_stream: yielded string changes value when duped
ruby_3_2 commit:4e9100b9974df197e569298655d37b8a2fadcfa5 merged revision(s) commit:f423f6e10c0c226dfed98e7cb7a5d48919... hsbt (Hiroshi SHIBATA)
04:22 AM Bug #21032: `Module#autoload?` is slow when `$LOAD_PATH` contains a relative path
ruby_3_2 commit:fd15d0f4cbddc8cf69013959e2a60734d0995d56 merged revision(s) commit:d4a1a2780c39bc648496ac92fc6e6ce2eb... hsbt (Hiroshi SHIBATA)
04:21 AM Bug #18257: rb_mRubyVMFrozenCore is broken by GC run
ruby_3_2 commit:b1b983915e109ae78e4e3a5c912f9f9597983641 merged revision(s) commit:647390308239fbf82d159ecd83ed8df090... hsbt (Hiroshi SHIBATA)
04:08 AM Revision f9aadc62 (git): Use ghcr.io/ruby/fedora:latest instead of docker.io for avoiding rate limit
hsbt (Hiroshi SHIBATA)
01:43 AM Revision 200bf313 (git): Update default gems list at 069ecfe869f48c2bc3162de4ef00ac [ci skip]
git[bot]
01:33 AM Revision 069ecfe8 (git): [ruby/json] Release 2.10.2
https://github.com/ruby/json/commit/350c1fd154 byroot (Jean Boussier)
01:33 AM Revision e6a2cf9f (git): [ruby/json] Fix potential out of bound read in `json_string_unescape`.
https://github.com/ruby/json/commit/cf242d89a0 byroot (Jean Boussier)
01:24 AM Revision 8cc85dc0 (git): [rubygems/rubygems] Remove array allocation from Candidate#<=>
In a large application I profiled allocations while running `bundle
update` and found that this method was ~60% of al...
Hartley McGuire

03/12/2025

08:12 PM Bug #19387: ObjectSpace.each_objects only returns shareable objects after starting a Ractor
One idea to solve this would be to implement `ObjectSpace.each_object` like TruffleRuby does it (at least when there ... Eregon (Benoit Daloze)
07:56 PM Revision af76b7f4 (git): [ruby/prism] Revert "Mark extension as Ractor-safe"
https://github.com/ruby/prism/commit/56eaf53732 kddnewton (Kevin Newton)
07:15 PM Bug #21180 (Closed): SEGV while marking `imemo_env->iseq`
Applied in changeset commit:git|08b3a45bc97c835b4677bf76dbce68fd51d81897.
----------
Push a real iseq in rb_vm_push_...
alanwu (Alan Wu)
07:15 PM Revision 242e99eb (git): [ruby/prism] Mark extension as Ractor-safe
https://github.com/ruby/prism/commit/10e5431b38 kddnewton (Kevin Newton)
07:00 PM Revision 08b3a45b (git): Push a real iseq in rb_vm_push_frame_fname()
Previously, vm_make_env_each() (used during proc
creation and for the debug inspector C API) picked up the
non-GC-all...
alanwu (Alan Wu)
07:00 PM Revision 9b966188 (git): Have `ast` live longer in ISeq.compile_file to fix GC stress crash
Previously, live range of `ast_value` ended on the call right before
rb_ast_dispose(), which led to premature collect...
alanwu (Alan Wu)
05:51 PM Revision ae2fcdc0 (git): [Bug #19841] Refine error on marshaling recursive USERDEF
nobu (Nobuyoshi Nakada)
05:27 PM Revision a8d63ecd (git): Fix flaky test_AREF_fstring_key
The code between the two ObjectSpace.count_objects could trigger a GC,
which could free string objects causing this t...
peterzhu2118 (Peter Zhu)
04:44 PM Bug #21183: Ractor error with Prism::VERSION
I believe this has been fixed since the VERSION constant is now frozen. Can you double check that if you are using th... kddnewton (Kevin Newton)
04:03 PM Revision 9ec8dc9c (git): [ruby/openssl] mark `initialize_copy` as :nodoc:
https://github.com/ruby/openssl/commit/17f87d2cf0 midnight (Sarun R)
12:45 PM Bug #19841 (Closed): Marshal.dump stack overflow with recursive Time
Applied in changeset commit:git|9459bedd84d479bb1d7d3d40bada1cecb4701c37.
----------
[Bug #19841] Refine error on ma...
nobu (Nobuyoshi Nakada)
09:59 AM Bug #19841: Marshal.dump stack overflow with recursive Time
https://github.com/ruby/ruby/pull/12914 hsbt (Hiroshi SHIBATA)
09:42 AM Revision b8af9325 (git): [DOC] Discourage use of `USERDEF`
nobu (Nobuyoshi Nakada)
09:42 AM Revision 9459bedd (git): [Bug #19841] Refine error on marshaling recursive USERDEF
nobu (Nobuyoshi Nakada)
09:20 AM Revision 2782cc75 (git): Win32: Remove intermediate files for rubyspec-capiext
nobu (Nobuyoshi Nakada)
09:20 AM Revision 3239af9b (git): Win32: Make object files in the same place as the DLLs
nobu (Nobuyoshi Nakada)
09:16 AM Bug #21129: Backporting strscan fix in Ruby 3.2
I'm working this at https://github.com/ruby/ruby/pull/12913 hsbt (Hiroshi SHIBATA)
09:08 AM Bug #20951: Confusing handling of timezone object's `#utc_to_local` results
`doc/_timezones.rdoc` is introduced from Ruby 3.3 release. I removed Ruby 3.1 and 3.2 from backport targets. hsbt (Hiroshi SHIBATA)
09:02 AM Revision 1a222816 (git): Restore to use rm_rf for failing example
https://github.com/ruby/ruby/actions/runs/13804651931/job/38616664529?pr=12911 hsbt (Hiroshi SHIBATA)
09:02 AM Revision 1d07deb4 (git): [ruby/json] Raise a ParserError on all incomplete unicode escape sequence.
This was the behavior until `2.10.0` unadvertently changed it.
`"\u1"` would raise, but `"\u1zzz"` wouldn't.
https:...
byroot (Jean Boussier)
09:02 AM Revision de9ce8c0 (git): Use erb executable again
Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net> hsbt (Hiroshi SHIBATA)
09:02 AM Revision 63dbb2f8 (git): [rubygems/rubygems] Update docs for with/without consistency
The with and without flags accepts both comma and space separated values.
https://github.com/rubygems/rubygems/commi...
Jacob Atzen
09:02 AM Revision 510edbcc (git): [rubygems/rubygems] Fix `ENAMETOOLONG` error when creating compact index cache
If a custom rubygems source URI is long enough, Bundler may end up
raising an `ENAMETOOLONG` error and crash.
This c...
deivid (David Rodríguez)
09:02 AM Revision 13020ac0 (git): [rubygems/rubygems] Path helper to build paths in compact index cache
https://github.com/rubygems/rubygems/commit/d28f9b8515 deivid (David Rodríguez)
09:02 AM Revision 51958bae (git): [rubygems/rubygems] Prefer `FileUtils.rm_r` to `FileUtils.rm_rf` for specs
Because it does not swallow errors if it fails to remove the given
folders, making issues easier to debug.
https://g...
deivid (David Rodríguez)
09:02 AM Revision f656d34f (git): [rubygems/rubygems] Refactor specs to not try to remove folders that don't exist
This has the following benefits:
* Avoid duplicated work in some specs that first build a repo, and then
overwrite...
deivid (David Rodríguez)
06:22 AM Bug #20996: Embed Ruby 3.4 Failure
I can't reproduce it with a standalone program contains your code as `main`.
nobu (Nobuyoshi Nakada)
05:44 AM Bug #21181: LoadError in P4Ruby on Windows (MSYS2) After Ruby Security Update
Seems like a DLL used by that `P4.so` lacked.
Check the DLLs by `ldd C:/build/p4ruby/lib/P4.so`.
nobu (Nobuyoshi Nakada)
05:41 AM Feature #21182: Add Hash#rename
`transform_keys('old' => 'new')` feels good enough.
At least, `('old' => 'new')` (or even `('old', 'new')`, `(from: ...
nobu (Nobuyoshi Nakada)
02:34 AM Revision c6808803 (git): Launchable: Disable request retries when a timeout exception occurs (#12877)
When a Launchable server is unstable, a ReadTimeoutException occurs in the Launchable CLI. In such case, the Launchab... ono-max (Naoto Ono)
02:06 AM Revision 9ef9069c (git): Update bundled gems list at 1ba93fdfd21f403889aa7930f7ef2a [ci skip]
git[bot]
02:05 AM Revision 1ba93fdf (git): Update bundled_gems
hsbt (Hiroshi SHIBATA)
01:55 AM Revision 1cdec324 (git): Fix memory leak in rb_reg_search_set_match
https://github.com/ruby/ruby/pull/12801 changed regexp matches to reuse
the backref, which causes memory to leak if t...
peterzhu2118 (Peter Zhu)
01:54 AM Revision 1b2cc9c2 (git): [DOC] Tweaks for Hash#slice
burdettelamar (Burdette Lamar)
01:54 AM Revision 86eff856 (git): [DOC] Tweaks for Hash#to_a
burdettelamar (Burdette Lamar)
01:52 AM Revision 5208d2f4 (git): [DOC] Tweaks for Hash#shift
burdettelamar (Burdette Lamar)

03/11/2025

11:31 PM Revision 19a1370b (git): Update bundled gems list at 97231e4d7ece859ab7c7d81033e74d [ci skip]
git[bot]
11:31 PM Revision 97231e4d (git): Update bundled_gems
hsbt (Hiroshi SHIBATA)
10:42 PM Feature #21121: Ractor channels
Ruby internals uses this same trick to simplify getting `require` calls to work in non-main ractors. The code is here... luke-gru (Luke Gruber)
10:42 PM Bug #21183 (Closed): Ractor error with Prism::VERSION
```
/Users/mperham/.rubies/ruby-3.4.1/lib/ruby/3.4.0/error_highlight/base.rb:88:in 'ErrorHighlight.prism_find': can ...
getajobmike (Mike Perham)
10:27 PM Bug #21181 (Feedback): LoadError in P4Ruby on Windows (MSYS2) After Ruby Security Update
Make sure P4.so exists and try passing an absolute path of it to `require`. alanwu (Alan Wu)
01:44 PM Bug #21181: LoadError in P4Ruby on Windows (MSYS2) After Ruby Security Update
After updating to Ruby versions 3.0.7, 3.1.5, 3.2.4, and 3.3.1, P4Ruby fails to load with the following error:
inter...
hjain (Himanshu Jain)
01:38 PM Bug #21181 (Feedback): LoadError in P4Ruby on Windows (MSYS2) After Ruby Security Update
After updating to Ruby versions 3.0.7, 3.1.5, 3.2.4, and 3.3.1, P4Ruby fails to load with the following error:
```...
hjain (Himanshu Jain)
09:47 PM Bug #21146: VM_ASSERT(expr) gives bad bug report results when another ractor fails an assertion during printing of report
Thanks for your comment. I can make it simpler, but I am a bit confused as to what I should do instead. If the first ... luke-gru (Luke Gruber)
07:56 AM Bug #21146: VM_ASSERT(expr) gives bad bug report results when another ractor fails an assertion during printing of report
Your patch uses `RB_VM_LOCK_ENTER_NO_BARRIER` but it should block normal use of `rb_bug()` (using `rb_bug()` is irreg... ko1 (Koichi Sasada)
07:19 PM Revision b52f7895 (git): [DOC] Tweaks for Hash#select! (#12904)
burdettelamar (Burdette Lamar)
07:18 PM Revision a5f29213 (git): [DOC] Tweaks for Hash#select (#12903)
burdettelamar (Burdette Lamar)
07:18 PM Revision 51e2ff1e (git): [DOC] Tweaks for Hash#reject!
burdettelamar (Burdette Lamar)
07:04 PM Feature #21182 (Open): Add Hash#rename
Abstract: Implement Hash#rename which takes as arguments a from key and a to key and renames the from key to the new ... calebm (Caleb Meyer)
05:18 PM Bug #21177: Sometimes Ruby can create and delete long paths on Windows, but cannot traverse them
Wow, thanks so much @nobu! deivid (David Rodríguez)
04:20 PM Bug #21177 (Closed): Sometimes Ruby can create and delete long paths on Windows, but cannot traverse them
Applied in changeset commit:git|3278e3b6f3b4252ab05988b000886e3b6f089404.
----------
[Bug #21177] Win32: Allow longe...
nobu (Nobuyoshi Nakada)
04:16 PM Revision 0e416faf (git): Fix `Socket.tcp_with_fast_fallback` to be usable from a Ractor
[Bug #21179]
```
socket.rb:1046:in 'Socket::HostnameResolutionStore#get_addrinfo': can not access non-shareable obje...
byroot (Jean Boussier)
03:46 PM Revision 3278e3b6 (git): [Bug #21177] Win32: Allow longer path name
nobu (Nobuyoshi Nakada)
03:44 PM Revision e51411ff (git): Fix flaky test_latest_gc_info_need_major_by
The test could flake because a major GC could be triggered due to allocation
for caches or other things, which would ...
peterzhu2118 (Peter Zhu)
03:43 PM Revision 497f409b (git): [DOC] Tweaks for Hash#reject (#12876)
burdettelamar (Burdette Lamar)
03:43 PM Revision e9902678 (git): [DOC] Tweaks for Hash#update
burdettelamar (Burdette Lamar)
03:16 PM Bug #21171: Segfault on large stack (RUBY_THREAD_VM_STACK_SIZE) on 3.4.2
I could repro on ruby_3_4 edge but not sure why.
With
```diff
diff --git a/include/ruby/assert.h b/include/ru...
ko1 (Koichi Sasada)
08:43 AM Bug #21171 (Assigned): Segfault on large stack (RUBY_THREAD_VM_STACK_SIZE) on 3.4.2
mame (Yusuke Endoh)
02:45 PM Bug #21142: Lazy enumerator `.each_with_index` ignores `.take(0)` before it
You might want a different function.
`Enumerable#each_with_index` does reset the Enumerator, while `Enumerator#with_...
Hanmac (Hans Mackowiak)
02:21 PM Bug #21142: Lazy enumerator `.each_with_index` ignores `.take(0)` before it
The pull request you point to was released with 3.4, but the problem started with 3.2, so it's not due to the change ... alanwu (Alan Wu)
07:36 AM Bug #21142: Lazy enumerator `.each_with_index` ignores `.take(0)` before it
@alanwu What do you think? cc/ @knu mame (Yusuke Endoh)
09:53 AM Feature #21148: Class proposal: IndefiniteNumeric < Numeric
Student (Nathan Zook) wrote:
> Suppose someone deals five cards face down from a regulation poker deck, and we wish ...
mame (Yusuke Endoh)
09:08 AM Feature #19908: Update to Unicode 15.1
I have created a PR to update it.
https://github.com/ruby/ruby/pull/12798
ima1zumi (Mari Imaizumi)
03:16 AM Feature #19908: Update to Unicode 15.1
@duerst What do you think? mame (Yusuke Endoh)
07:51 AM Bug #21147 (Closed): [Breaking changes or Bug] DateTime Range#to_a behaves different between 3.3.7 and 3.4.1
I think it is already fixed by #21030 and backported to ruby_3_4 branch. Please wait for the next release of 3.4 series mame (Yusuke Endoh)
07:24 AM Bug #21097 (Assigned): `x = a rescue b in c` and `def f = a rescue b in c` parsed differently between parse.y and prism
mame (Yusuke Endoh)
07:22 AM Bug #21166: Fiber Scheduler is unable to be interrupted by `IO#close`.
> rb_thread_io_interruptible_operation why not rb_io prefix? is it public c-api?
It's not public API, and we can c...
ioquatix (Samuel Williams)
07:04 AM Bug #21166: Fiber Scheduler is unable to be interrupted by `IO#close`.
could you make clear
* `rb_thread_io_interruptible_operation` why not `rb_io` prefix? is it public c-api?
* who/when...
ko1 (Koichi Sasada)
07:21 AM Bug #21096 (Third Party's Issue): `Process.fork` hangs up on QEMU when called multiple times.
Try the latest qemu. If it still reproduces, let me know. mame (Yusuke Endoh)
03:08 AM Bug #21180 (Closed): SEGV while marking `imemo_env->iseq`
This issue happens most realistically for people using a fiber scheduler (through e.g. the *async* gem), on Ruby 3.4.... alanwu (Alan Wu)
12:00 AM Revision 47c3ae69 (git): Bump tolerance for weak reference test from 1 to 2
The test fails sometimes with:
TestGc#test_latest_gc_info_weak_references_count [test/ruby/test_gc.rb:421]:
...
peterzhu2118 (Peter Zhu)
 

Also available in: Atom