#​779 — December 11, 2025

Read on the Web

Together with  FastRuby.io

Ruby Weekly

Adding Iongraph Support to ZJIT — This is a very niche item to feature, but it’s a slow week (😅) and I found it interesting, given that the ZJIT compiler will be available in Ruby 4.0 later this month. Iongraph, a tool originally built to visualize JavaScript JIT compilation, can now be used to inspect optimizations made by ZJIT too. This is a truly ‘deep in the weeds’ post, but if it encourages you to work on, or experiment with, ZJIT, fantastic!

Aiden Fox Ivey

Stuck on Rails 4.2? Ready to Upgrade Rails with FastRuby.io? — Stop postponing your upgrade project. Get a thorough action plan and estimates backed by 50,000 dev/hours of historical data. Don’t have the budget for a Roadmap? Get our free, AI-enhanced Rails roadmap in minutes and DIY your upgrade.

The Rails Upgrade Roadmap sponsor

Rails’s Swappable Migration Backend for Schema Changes at Scale — Rails’s swappable migration backend, introduced in Rails 7.0, allows apps to customize how database migrations execute giving more control when you need it (like in production.) Running some of the biggest Rails apps in the world, Shopify has a particular interest in this area.

Adrianna Chang (Shopify)

⚡️ IN BRIEF:

🕹️  Building Vanilla Roguelike: A Ruby-Powered Roguelike — The tale of five years of development of this game. David has also written a book on the topic.

David Silva

🔊 Building a Custom Audio Player with Stimulus — A particularly thorough walkthrough by Exequiel for building a custom audio player into a Rails app.

Exequiel Rozas

Making Rails Global IDs SaferGlobal ID is a mechanism by which individual records in a Rails app get their own form of URI, e.g. gid://myblog/Post/32

Julik Tarkhanov

Why Does Your APM Deliver So Much Data but So Few Answers? #longread — APMs overwhelm you with dashboards and data but fail to offer fixes when production breaks. Let's unpack the APM Paradox ->

Honeybadger sponsor

📄 Why Evil Martians Hosted a Ruby Conference in San Francisco – In tech, all roads lead to San Francisco, it seems. Melnikova and Nazarova

📄 Going Beyond Ruby: Writing a Simple C Extension – Well trodden ground, but succinctly covered here. Kyle d’Oliveira

📄 Lessons Learned From Studying Fizzy's Test Suite – 37signals’ latest open-sourced app provides a good example of how they approach testing a modern Rails app. Josef Strzibny

📄 Why Frozen Test Fixtures are a Problem on Large Projects and How to Avoid Them Radan Skorić

📄 Rails Native Composite Primary Keys: The Evolution from Rails 3 to Rails 8 Amol Joshi

📄 Match HTTP Methods with current_page? in Rails Mintbit

🛠 Code & Tools

Requestkit: Test and Send Webhooks and API Requests in Development — A local HTTP server and Web interface for sending and receiving webhooks and API requests (outbound requests are defined in JSON files for repeatability). GitHub repo.

Rails Designer

connection_pool 3.0: A Generic Connection Pooling Library — Lots of systems have connection pools built in, but what if you want a generic one to use with whatever you wish in Ruby? v3.0 drops support for Ruby 3.2 and under and a key breaking change is a wholesale shift to keyword arguments.

Mike Perham

🧠 Smart Rails Applications Are Not the Future, They're the Present — We identify problems worth solving with AI and implement cost-effective solutions that save significant organizational time.

SINAPTIA sponsor

🖼️  ruby-vips 2.3.0: The libvips Image Processing Library in Ruby — FFI-powered bindings to libvips, a popular, fast C-powered image processing library. Think resampling, blending, rotation, producing histograms, and similar operations.

libvips team

AlchemyCMS 8.0: A Rails CMS Framework — A CMS you can run standalone or bake into your existing Rails apps in order to build your own CMS on top of it. It now supports Rails 8. There’s a live demo (the admin login is demo/demo123).

Blish GmbH

  • Timeout v0.5.0 – Provides automatic termination of operations exceeding a specified time limit. Now supports Ractors in Ruby 4.0+.

  • rux 1.4 – JSX-inspired way to render view components in Ruby. Now with support for React-style contexts.

  • 🚦 Stoplight 5.7 – Implementation of the circuit breaker pattern to gracefully handle external failures.

  • RubyMoney 7.0 – Library for dealing with money and currency conversion.

  • ReActionView 0.2 – Advanced ActionView-compatible ERB engine.

  • OpenAI Ruby 0.37 – Official Ruby SDK for the OpenAI API.

  • Mongoid v7.6.0 – ODM framework for MongoDB in Ruby.

  • Psych v5.3.0 – libyaml-based YAML parser and emitter.

  • Haml 7.1 – Alternative template markup language.

📢  Elsewhere in the ecosystem

Some other interesting stories in the broader landscape: