General

Profile

jhawthorn (John Hawthorn)

  • Login: jhawthorn
  • Registered on: 12/22/2016
  • Last sign in: 09/17/2026

Issues

open closed Total
Assigned issues 15 85 100
Reported issues 5 32 37

Projects

Project Roles Registered on
Ruby Committer 11/25/2021

Activity

09/17/2026

07:05 PM Ruby Revision 0bdfb4c9 (git): ZJIT: Support getivar in multi-Ractor mode
jhawthorn (John Hawthorn)
04:33 PM Ruby Revision 13c1eb94 (git): Fill courier nodes in capture's post-order
Previously rb_ractor_courier_materialize filled every non-hash node in
id order and then inserted hash entries in a separate pass in reverse
id order, on the assumption that ids are assigned depth-first so a key
always has a larger id th...
jhawthorn (John Hawthorn)
04:33 PM Ruby Revision 911809a8 (git): Add support for Regexp objects
Previously any Regexp objects being sent would cause us to take the
Marshal path.
jhawthorn (John Hawthorn)
04:33 PM Ruby Revision 742699d2 (git): Support Marshal dump hooks in the Ractor courier
Previously the courier only carried the core types natively, and any
other object made the whole message fall back to Marshal.dump on the
sender and Marshal.load on the receiver. That serialized everything
reachable into bytes, so a Ract...
jhawthorn (John Hawthorn)
04:33 PM Ruby Revision 1bd863dd (git): Use Marshal compat from Ractor courier
For some types (probably most notably Set), Marshal loading is defined
with compatibility functions. We should use those when set.
jhawthorn (John Hawthorn)
04:33 PM Ruby Revision dea2cdac (git): Remove marshal fallback for Ractor copy
The previous commit integrated Marshal's hooks into the native courier
copying path. That should cover most cases.
One exception I've noticed that this doesn't implement is singleton
classes which have been extended by modules. I would ...
jhawthorn (John Hawthorn)
04:33 PM Ruby Revision ab49f881 (git): Allow copying objects with a singleton class
Previously the Ractor courier rejected singleton class objects. However
we have existing tests of OpenStruct that those objects can be
Ractor-copied.
dup and clone, which were used prior to RLGC's merge, also just ignore
singleton class...
jhawthorn (John Hawthorn)

09/16/2026

07:33 PM Ruby Bug #22291: Instance variables should be forbidden on Ractor-shareable objects
matz (Yukihiro Matsumoto) wrote in #note-4:
> Since `ENV` is not an experimental API, please check the impact on existing code that sets instance variables on it.
I investigated this pretty thoroughly and found only one active gem, e...
jhawthorn (John Hawthorn)
07:26 PM Ruby Bug #22291 (Closed): Instance variables should be forbidden on Ractor-shareable objects
Applied in changeset commit:git|73055acd572a458d0a2e90edeedc3027c86cc917.
----------
Forbid setting ivars on Ractor shareable objects
Previously we had a check that objects which were shareable, but not
frozen on a non-main Ractor woul...
jhawthorn (John Hawthorn)
07:26 PM Ruby Revision 6bae4d8e (git): Forbid Procs with ivars from being isolated
jhawthorn (John Hawthorn)

Also available in: Atom