#810 — July 23, 2026 |
|
Ruby Weekly |
|
|
🔒 RubyGems Revokes Legacy API Keys After Possible Cache Leak — A CDN caching bug, which has existed for years, could have served accounts' legacy API keys to other users. There's no evidence of malicious use, but it's worth affected owners checking their gems over nonetheless. Colby Swandale (Ruby Central) |
💡 Luke Marshall, from Truffle Security, discovered this bug and did a full technical writeup of how the bug could have been exploited. |
All-in-One Ruby & Rails Monitoring — Errors + Performance — Track errors, N+1 queries, slow SQL, Sidekiq jobs, and host metrics — all in one Ruby gem. AppSignal gives Rails teams every feature on every plan, with predictable pricing and real engineers on support. 30-day free trial, no credit card. AppSignal sponsor |
|
Beyond Enumerable: Testing Membership with Bloom Filters — When Brandon Weaver |
💡 If you want to understand how Bloom filters work at a high level, Sam Rose's visual Bloom filter explainer is fantastic. |
|
⚡️ IN BRIEF:
|
|
▶ RuboCop 2.0: Where Do We Go Now? — At RubyConf Austria (all the videos are here) the creator of RuboCop gave a dense state of the union update on the project and how it's continuing to improve. Bozhidar Batsov |
|
🤖 How I Stopped Running out of Tokens — A Rubyist whose company uses Claude Enterprise shares numerous tools you can use (such as rtk) to get the most out of assigned limits. Daniela Baron |
|
Using OpenSpec in Rails Applications — See how OpenSpec is reshaping our Rails workflow. What paid off, what failed, and what we’d do differently. SINAPTIA sponsor |
|
📄 Active Model Conditional Validations – A tour of conditional validations, from custom contexts to 📄 A Proposal for Deprecating 📄 'Poor Man's Escape Analysis': A Proposed CRuby Optimization Yusuke Endoh |
🛠 Code & Tools |
|
|
TableTennis 1.0: Stylish Terminal Tables — A library for printing tabular data on the terminal that includes theming, automatic layout, automatic formatting of dates and numbers, coloring of numeric values, and more. Adam Doppelt |
|
JRuby 10.1.1.0: Faster Number Parsing and Security Fixes — The Ruby 4.0-targeting JVM implementation gains faster number parsing, OpenBSD support, and OpenSSL and ERB security fixes. Charles Oliver Nutter et al. |
|
Need More Rails Capacity? Speed Up Your Product Roadmap Next Week 🚀 — Rails devs who integrate fast, ship quality code & help your team deliver more each sprint. We vet them, you ship more. FastRuby.io® | Rails Staff Aug sponsor |
|
Audition: See if a Ruby Program Can Run Inside Ractors — A tool you can point at a Ruby script, gem, Rack or Rails app, and it tells you if it can run within Ractors, Ruby's experimental actor-based parallel execution mechanism. And if not, it explains why. Yaroslav Markin |
|
Rigor: Type-Aware Ruby Static Analyzer and Bug Finder — Unlike Sorbet or Steep, no annotations are required. Rigor infers types from the values your code produces, while treating any RBS you have as authoritative. Usami et al. |
|
Pygments.rb 5.0: A Ruby Wrapper for the Pygments Syntax Highlighter — Pygments is one of the best syntax highlighters out there, but it's Python-based. This library makes it easier to call. v5.0 bumps Pygments up to the latest version. Nyman, Gupta and Radchenko |
💡 Alternatively, Rouge is a pure Ruby Pygments-compatible code highlighter. |
|
|
😅 An Old/New Ruby Discovery of the Week |
|
I recently got the itch to see what I'm getting for Christmas. Well, what's coming in Ruby 4.1, anyway. It's not going to be a big release syntax-wise, but there are a variety of new methods and features I'll share in coming weeks. My first surprise, though, was the enhancement of a method added back in Ruby 2.4 that I had not noticed:
So if, like me, you didn't know about The Ruby 4.1 change?
If you're not tinkering around with packing and unpacking data, you might not have any use for these, but for my sins I enjoy low-level noodling with binary data in Ruby, so am looking forward to experimenting more. This is a niche topic, but I learnt something, this is my newsletter, and hopefully I'll get to some more useful Ruby 4.1 additions for you next time ;-) |


