Ruby Core Updates: ZJIT Performance Enhancements and Regexp Freezing

Ruby's development team merged 15 pull requests focused heavily on ZJIT compiler optimizations, including new tracing capabilities and polymorphic code generation. A significant change freezes all Regexp instances by default, except for subclasses.

Duration: PT1M47S

Episode overview

This episode is a short developer briefing from Ruby Core Updates.

It explains recent repository work in plain language.

  • Show: Ruby Core Updates
  • Published: 2026-03-25T10:23:39Z
  • Audio duration: PT1M47S

Transcript excerpt

This excerpt keeps the crawler page concise. Listen to the episode or use the RSS feed for the full update.

Good morning. This is Ruby Core Updates for March 25th, 2026.

The Ruby development team merged 15 pull requests yesterday, with significant focus on ZJIT compiler improvements and core language changes.

Tekknolagi merged ZJIT tracing enhancements, adding Fuchsia trace format support for side-exit locations. This provides developers with SQL-queryable trace data and zoomable browsing capabilities for performance analysis.

K0kubun contributed multiple ZJIT optimizations, including polymorphic branch generation for skewed polymorphic getivar operations and fixes for too-complex shape handling in instance variable access.

XrXr merged per-ISEQ feedback tracking for singleton class speculation, allowing individual instruction sequences to continue optimizing even when others are invalidated for the same class.

In a significant language change, Eregon merged the freezing of all Regexp instances except subclass instances. This implements Feature #8948, which has been in discussion for years. Subclasses remain unfrozen for backward compatibility.

Nearby episodes from Ruby Core Updates

  1. ZJIT Optimization and Developer Tools
  2. ZJIT Performance Optimizations and Source Location Revert
  3. ZJIT Performance Improvements and CI Stability Fixes
  4. ZJIT Optimization and Performance Improvements
  5. ZJIT Compilation Improvements and Bug Fixes
  6. Documentation Improvements and Bundler Restructuring
  7. Weekly Recap - JIT Optimization & Performance Enhancement
  8. ZJIT Array Access Optimization