General

Profile

headius (Charles Nutter)

Issues

open closed Total
Assigned issues 1 23 24
Reported issues 20 96 116

Projects

Project Roles Registered on
Ruby Committer 12/13/2012

Activity

09/19/2026

11:58 AM Ruby Feature #17593: load_iseq_eval should override the ISeq path
Seems there new movement on related changes but I wanted to add some thoughts.
__FILE__ as syntax rather than method eliminates a bunch of side effect behavior that makes __dir__ troublesome:
* It needs access to the caller frame o...
headius (Charles Nutter)

09/18/2026

07:03 AM Ruby Bug #22216: Special variables (ex. Regexp backref and IO lastline) are thread-unsafe in some cases, incompatible with Ractor
> I'd gently push back on this, because switching to a thread already does exactly that today, and has for 20 years:
This is not actually true. Your example works that way because a thread clones its block's immediate frame. If the fram...
headius (Charles Nutter)

09/17/2026

11:18 PM Ruby Bug #22216: Special variables (ex. Regexp backref and IO lastline) are thread-unsafe in some cases, incompatible with Ractor
ioquatix (Samuel Williams) wrote in #note-24:
> @matz
> ...
It's a lovely idea but a very specific exception to introduce. These variables are specified to live in the nearest method frame, with no consideration for fiber locality. Lots ...
headius (Charles Nutter)

09/15/2026

02:18 PM Ruby Revision 16fd9867 (git): [ruby/net-protocol] Only require io/wait on Ruby versions earlier than 3.2
The io-wait library transitioned to core in 3.2 and is now an empty
and deprecated gem. Only require it if running on Ruby versions
earlier than 3.2.
https://github.com/ruby/net-protocol/commit/1f84c9c60b
headius (Charles Nutter)
02:18 PM Ruby Revision 95bd25ed (git): [ruby/resolv] Only require io/wait on Ruby versions earlier than 3.2
The io-wait library transitioned to core in 3.2 and is now an empty
and deprecated gem. Only require it if running on Ruby versions
earlier than 3.2.
https://github.com/ruby/resolv/commit/2b5db02843
headius (Charles Nutter)

09/13/2026

02:30 PM Ruby Revision fed732c8 (git): [ruby/io-wait] Remove extensions and fully deprecate the gem
The functionality of this gem was moved into core Ruby starting
with Ruby 3.2, and at this point both the C extension and the Java
extension define no additional classes or methods. This patch
fully removes both extensions, replacing the...
headius (Charles Nutter)

08/20/2026

07:14 PM Ruby Bug #22251: ObjectSpace::WeakMap#size can return a stale value
> Both Java's WeakHashMap and JRuby's variant clean references in size(), so there is no issue there:
But your "failing" example only runs a single GC, which may not always be sufficient to clear the reference, in which case the size ...
headius (Charles Nutter)

08/18/2026

04:39 PM Ruby Bug #22251: ObjectSpace::WeakMap#size can return a stale value
The implementation of WeakMap on JRuby probably behaves the same, because it uses weak references that are only cleaned along certain code paths.
As you (@eregon) know, the JVM GC will vacate weak references, but handling the now-dead...
headius (Charles Nutter)

08/07/2026

09:24 PM Ruby Bug #22216: Special variables (ex. Regexp backref and IO lastline) are thread-unsafe in some cases, incompatible with Ractor
Popping back in to say I support the Fiber-isolated direction here but don't have strong opinions about the potential breaking cases. I've disliked supporting these variables for years so anything we can do to limit their scope is ok by ... headius (Charles Nutter)

07/30/2026

02:07 AM Ruby Bug #22216: Special variables (ex. Regexp backref and IO lastline) are thread-unsafe in some cases, incompatible with Ractor
> ethically detectable
statically detectable
headius (Charles Nutter)

Also available in: Atom