peterzhu2118 (Peter Zhu)
- Login: peterzhu2118
- Email: peter@peterzhu.ca
- Registered on: 08/01/2020
- Last sign in: 11/02/2026
Issues
| open | closed | Total | |
|---|---|---|---|
| Assigned issues | 1 | 32 | 33 |
| Reported issues | 1 | 80 | 81 |
Projects
| Project | Roles | Registered on |
|---|---|---|
| Ruby | Committer | 03/24/2021 |
Activity
11/05/2026
-
03:11 PM Ruby Revision 491e36e1 (git): [DOC] Inline UTF-8 docs into C code
- Since https://github.com/ruby/ruby/pull/15579, we are now able to use UTF-8
comments in C code, so we no longer need to have UTF-8 documentation in
separate files and use RDoc :include: directives. -
03:11 PM Ruby Revision 9e2fb37e (git): [DOC] Update documentation_guide about UTF-8 in C
-
05:00 AM Ruby Bug #22455: Per-Ractor GC: an idle Ractor costs ~100 KB of memory (17 KB on 4.0)
- Thank you for this bug report. I have a patch here that should reduce the memory used by Ractors that don't allocate many objects. Please give it a try. https://github.com/ruby/ruby/pull/19707
-
04:01 AM Ruby Bug #22509 (Closed): MMTk: GC.start panics with "failed to re-disable GC after GC" while a Ractor is being created
- I think this should fix it: https://github.com/ruby/mmtk/pull/134
11/04/2026
-
12:09 AM Ruby Revision 13cebf68 (git): [ruby/mmtk] Fix assertion failure when marking machine stack
- It's possible that a value on the machine stack appears to point into
the MMTk heap. When this value is first marked during the pinning phase,
it does not pin it if the object is not live. If later on, an object is
evacuated into the val...
11/02/2026
-
12:37 AM Ruby Revision 73397ad0 (git): Use rb_bug in rb_iseq_node_id
- Use rb_bug instead of VM_ASSERT(0).
10/28/2026
-
03:46 AM Ruby Revision 16cf9129 (git): [ruby/mmtk] Register pinned root objects in PinningRegistry
- We need to register objects pinned from the root in PinningRegistry for
rb_gc_impl_pinned_p to work properly.
https://github.com/ruby/mmtk/commit/6e8ad61924
10/26/2026
-
11:21 AM Ruby Revision 3e636857 (git): Use delta zigzag encoding for iseq node_id
- Node ids are assigned sequentially by the parser and compilation emits
instructions in an order correlated with the tree, so the delta between
consecutive instructions are likely to be small. We can store the delta
between consecutive in...
10/25/2026
-
10:59 AM Ruby Revision 2c09f747 (git): Encode iseq node_id with LEB128
- Node ids are small non-negative integers (-1 for synthetic instructions),
so a LEB128 stores them in 1-2 bytes instead of a 4-byte int.
On Shopify's monolith, this reduces the boot heap memsize by 40MB. -
05:27 AM Ruby Bug #22467 (Closed): IO#readpartial can raise EFAULT during GC.compact in another thread
- Applied in changeset commit:git|0b7838e23b8f9b01765dafd5e675da6113f5b566.
----------
Fix IO reading without GVL during GC compaction
[Bug #22467]
If we perform IO read without the GVL during GC compaction and the string
we are writing...