General

Profile

byroot (Jean Boussier)

Issues

open closed Total
Assigned issues 1 29 30
Reported issues 29 146 175

Projects

Project Roles Registered on
Ruby Committer 09/27/2021

Activity

08/26/2026

08:41 AM Ruby Revision 76edf35f (git): Refactor RHash size computations
Share the same code between gc.c and hash.c. byroot (Jean Boussier)

08/25/2026

09:07 PM Ruby Revision c6241150 (git): [ruby/rubygems] Bundler::Source::Git: avoid re-fetching the repo
In `install`, `self.to_s` is called by `print_using_message "Using ... from #{self}`.
This in turn calls `current_branch` which if the local git cache
is missing will re-clone it from scratch.
This is an issue, because a common optimiza...
byroot (Jean Boussier)
03:54 PM Ruby Revision 89699e81 (git): hash.c: memzero hashes before allocating st_table
`hash_copy` will call `st_init_existing_table_with_size` which
allocates and may trigger GC causing the current hash to be marked.
So we need to zero-out the `st_table` to avoid a segfault.
byroot (Jean Boussier)
01:24 PM Ruby Revision 6d4a6a93 (git): Parametize `RHASH_AR_TABLE_MAX_BOUND`
For now it still returns a constant, but clarify when we're looking
for the max bound, versus a miss, etc.
byroot (Jean Boussier)
01:24 PM Ruby Revision 60a4894b (git): Dynamic ar_table size
Instead of always allocating `ar_table` backed hashes in 160B
slots for them to have capacity of `RHASH_AR_TABLE_MAX_SIZE` (`8`),
they can now be allocated in any slot size between `64B` and `160B`.
`64B` is the minimum slot size that s...
byroot (Jean Boussier)
01:24 PM Ruby Revision 759cfbb9 (git): Hash#merge guess size
byroot (Jean Boussier)
01:24 PM Ruby Revision 7a0361b3 (git): Skip Fiddle::TestFunction#test_no_memory_leak on parse.y
byroot (Jean Boussier)
10:00 AM Ruby Feature #22130: Add a new YARV instruction for a `String.new` fast path
So I just ran into that issue again on my PR to make `ar_table` dynamic: https://github.com/ruby/ruby/pull/18345
`Hash.new(capacity:)` now can't allocate anything but the smallest usable slot. In theory `Hash.new(capacity: 8)` should ...
byroot (Jean Boussier)
08:17 AM Ruby Bug #22259: Arrays sharding a buffer segfault when concatenating with each other
This bug seem to have been present all the way back since Ruby 2.5, so requesting a backport accordingly. byroot (Jean Boussier)

08/24/2026

10:21 PM Ruby Revision 45702961 (git): Inverse `hash_alloc` and `hash_alloc_capa` naming
byroot (Jean Boussier)

Also available in: Atom