General

Profile

byroot (Jean Boussier)

Issues

open closed Total
Assigned issues 1 32 33
Reported issues 26 152 178

Projects

Project Roles Registered on
Ruby Committer 09/27/2021

Activity

Today

07:56 AM Ruby Bug #22406: Process.fork can leave the child unable to resolve hostnames: getaddrinfo helper threads take glibc's resolver lock after releasing the fork lock
> What do you think?
I'm trying to figure out whether this is even public API, as in, will this break under us in a couple years.
```c
if (_res.nscount > 0) {
res_nclose(&_res);
_res.nscount = 0; // to make t...
byroot (Jean Boussier)

10/02/2026

02:45 PM Ruby Revision 6930c20b (git): [ruby/json] Implement rfc8785
Fix: https://github.com/ruby/json/issues/1038
Directly lift https://github.com/dryruby/json-canonicalization
At least for now, implementing most of the logic in Ruby make it
shareable between the 3 generator implementations, largely re...
byroot (Jean Boussier)

10/01/2026

06:57 AM Ruby Feature #22400: Use rb_long_t for lengths so that String and Array can exceed 2GiB on mswin
> What do you think?
I think I'd be worth trying for a preview (there was no 4.1.0preview this year?) as to see what the blast radius really is.
Other than that, I wonder if one avenue could be to have this be a build flag first, a...
byroot (Jean Boussier)

09/30/2026

09:51 AM Ruby Feature #22232 (Closed): Deprecate `RHASH_TBL` and associated APIs
Applied in changeset commit:git|5c128f545b7d16f3fc8405b811fc5a04dcd73d8f.
----------
Deprecate RHASH_TBL
[Feature #22232]
Guaranteeing that any hash can be converted into an st_table is
limiting the evolution of RHash.
None of the pu...
byroot (Jean Boussier)
09:51 AM Ruby Revision 5c128f54 (git): Deprecate RHASH_TBL
[Feature #22232]
Guaranteeing that any hash can be converted into an st_table is
limiting the evolution of RHash.
None of the public usages of `RHASH_TBL` were justified, they all
had equivalent `rb_hash_*` public APIs to perform the s...
byroot (Jean Boussier)
09:18 AM Ruby Misc #22394: DevMeeting-2026-10-07
* [Feature #22395] `RubyVM::InstructionSequence.load_from_binary` to optionally accept `file` and `path` arguments like `compile` (byroot)
* ISeq caching has a long live problem that ISeqs contain the source file path and realpath, ma...
byroot (Jean Boussier)
09:14 AM Ruby Feature #22395 (Open): RubyVM::InstructionSequence.load_from_binary: to optionally accept `file` and `path` arguments
### Context
I'm trying to fix the long standing [Feature #17593] issue.
In short, ISeq caching has a problematic limitation that the path and realpath of the source file is embedded in the iseq.
Meaning that if you build your appl...
byroot (Jean Boussier)
08:02 AM Ruby Bug #22390: ruby 3.4 -> 4.0 upgrade GC changes causing >2x RSS increase
Not 100% sure it's the exact same issue, but the discussion on https://github.com/ruby/ruby/pull/18433#issuecomment-5679306710 may be of interest to you.
Edit: Nevermind, I realized you are the same person :facepalm:
byroot (Jean Boussier)

09/28/2026

04:59 PM Ruby Revision 5fe7d61b (git): [ruby/json] Ensure `default_sort_keys_proc` isn't reassigned.
It's assignable from Ruby simply for the gem's own initialization,
but it should never be re-assigned later.
Fix: https://github.com/ruby/json/pull/1079
https://github.com/ruby/json/commit/cc32ef5cf5
byroot (Jean Boussier)

09/24/2026

09:54 PM Ruby Feature #22236 (Closed): New API for adjustable JIT warmup
Applied in changeset commit:git|c29739cb3ef483c215b0c13d30c96cc21b0f680b.
----------
Implement RubyVM::YJIT.max_compile_time_ns
[Feature #22236]
Allows to give a time budget to YJIT. When YJIT goes over the budget
it pauses compilatio...
byroot (Jean Boussier)

Also available in: Atom