Skip to content

[pull] master from ruby:master - #1344

Merged
pull[bot] merged 7 commits into
turkdevops:masterfrom
ruby:master
Aug 24, 2026
Merged

[pull] master from ruby:master#1344
pull[bot] merged 7 commits into
turkdevops:masterfrom
ruby:master

Conversation

@pull

@pull pull Bot commented Aug 24, 2026

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

We only use either positions and succ_index_table (when VM_INSN_INFO_TABLE_IMPL == 2,
positions is converted to succ_index_table), so we waste 8 bytes in
rb_iseq_constant_body. This changes it so that they are in a union.
(ruby/json#1062)

Add JSON::ParserError#json_path

ruby/json@9ae76bdd3d

Co-authored-by: Jean Boussier <byroot@ruby-lang.org>
Raise YJIT case dispatch specialization limit to 256
Most of the time in a production app most iseqs won't have iseq->body->variable
set to anything non-default. We can allocate it lazily and save 32 bytes per iseq.
Some large apps have millions of iseqs, so it adds up.

32B saved per iseq * 2mil iseqs =~ 64 MB
If we don't pre-size the HashMap, it has to re-hash when resizing.
Hashing a SideExit is slow. Give a size hint so we only hash ~once per
exit.
@pull pull Bot locked and limited conversation to collaborators Aug 24, 2026
@pull pull Bot added the ⤵️ pull label Aug 24, 2026
@pull
pull Bot merged commit c4fdf07 into turkdevops:master Aug 24, 2026
1 of 3 checks passed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants