#825 — November 5, 2026 |
|
Ruby Weekly |
|
|
🔒 Rails 8.0.5.2 and 8.1.4.1 Released to Fix 21 Security Issues — A rare 21-advisory release, led by a critical Active Storage bug (when using ImageMagick/ Mike Dalessio (Rails Core) |
💡 Christine Seeman's walkthrough covers the advisories you may want to give a closer look, what can break on upgrade, and workarounds if you can't upgrade. |
🚨 Rails 8.0 Security Support Ends Nov 7. Upgrade with AI — Our AI agent works on your own CI and opens small PRs only when your suite is green. It dual-boots with `next_rails`. Nothing merges without your review. Join the beta waitlist and get a free Rails 8.1 readiness check. FastRuby.io® | AI-native Rails Maintenance sponsor |
|
Moment of Ruby: An Argument for Nothing — How can you tell "no argument was supplied" from an explicit Chris Zempel (Aha!) |
|
⚡️ IN BRIEF:
|
|
⚠️ Trilogy Fixes an SQL Injection in Rails' Favored MySQL Client — Trilogy, the MySQL client GitHub built and Rails recommends, had a 9.3-rated SQL injection vulnerability which has been fixed and requires an upgrade to v2.13.2+, if you're using it. Greg Molnar built a vulnerable app to see how bad the vulnerability is and found it's worse than he first thought. Trilogy maintainers |
🔒 It's a busy time for security releases, so I've included a section at the end of the issue rounding up some releases that have landed to fix numerous vulnerabilities. |
|
A Look at Lemans, the Harness Behind the Agents on Rails Benchmark — A tour of the Ruby harness Evil Martians built for the Rails Foundation's coding agent benchmark, plus some fun in how agents have tried to cheat at it… Dementyev and Petrov (Evil Martians) |
|
Don't Make a Human Do What AI Is Amazing At — John shares Nunebot, the markdown prompt he uses to sweep his apps and gems, pick one fix per repo, prove the fix with a failing-then-passing test, and open a PR. John Nunemaker |
💡 Along similar lines, David Bryant Copeland asks why review AI-generated code at all, arguing the effort is better spent on tooling that catches problems mechanically. |
|
Painless Web Scraping With The New SerpApi's Extract API — Scrape any public webpage or add search to your Ruby application with one developer-friendly API built by Ruby engineers. SerpApi sponsor |
|
📄 Modernizing a Rails App from 2018 – How an ancient Rails 5 app was ported by moving it into a fresh app rather than upgrading in place. I did an upgrade the hard way recently, and I don't blame them! Kevin Campusano 📺 When Rails Met Fibers: Migrating Sidekick from Puma to Falcon – A 42-minute keynote on moving Shopify's AI assistant onto Falcon. Williams, Lawhorn and Barnes 📄 When Two Background Jobs Target the Same Record – A lost-update reproduction under Solid Queue, and a look at where to fix it. Syed Aslam 📄 IP-Based Route Restrictions on Heroku with Rails Daniela Baron 📺 DHH's Kaigi on Rails 2026 Keynote: Where the Tracks Go Next |
🛠 Code & Tools |
|
|
Spinel 2026.10.25: Matz's Ruby Compiler Continues to Advance — The second dated release of Matz's ahead-of-time Ruby-to-native compiler brings in a ton of stuff since I reviewed it six months ago! It's faster, offers a new WASM target, supports more of the standard library, and strings now behave as single shared objects like in CRuby. It's a great time to play with it! Yukihiro Matsumoto |
💡 Stan Lo's new, one-page Spinel intro rounds the project up generally, and explains how it differs to CRuby, what it can't compile, and its ruby-bench results. |
|
Tiger Data (creators of TimescaleDB) sponsor |
|
JRuby 10.1.3.0 Released with Many Fixes and Improvements — A big release for JRuby's Ruby 4.0-compatible line. Mutex, Queue and sockets now go through the Fiber scheduler, method and branch coverage are implemented (so SimpleCov's branch mode can work), and Prism is now merged into JRuby itself. JRuby Team |
💡 JRuby 10.0.8.0 also landed for those on the Ruby 3.4-compatible line. |
|
Duel: Fail CI When Your Code Gets Slower — Runs your benchmarks on two versions of your code side by side and fails if the new code is slower. Erik Berlin |
|
QueryStash: Cache Hot, Slow-Changing Queries Below Active Record — Caches lookups of your choosing across requests at the adapter level (so your calls don't need to change) with TTLs calculated from each result. Persona |
|
rails-query-command: Use Rails 8.2's Lázaro Nixon |
|
TaskProgress: Progress Bars for Task Trees, from Terminal to Browser — Track nested task trees spread across threads, Fibers, subprocesses and Ractors (on Ruby 4) and render them to a terminal/log/browser with SSE/Turbo. Julik Tarkhanov |
|
|
⚠️ A recent wave of Ruby security news |
|


