Together with  FastRuby.io

Introducing Insta: Snapshot Testing for Ruby — Instead of hand-writing expected values, tests assert against a recorded snapshot of your code's output. When it changes, an interactive CLI shows the diff for you to accept or reject. Extracted from Herb and supports Minitest and RSpec. GitHub repo.

Marco Roth

💡 The Lobsters team wanted to detect when SQLite was doing inefficient full table scans. Aaron Patterson comes to the rescue with how to do just that, wondering if it could be a useful warning in Rails generally.

⚡️ IN BRIEF:

  • Ruby 4.0.6 has been released as a minor routine release, while Ruby 3.3.12 brings security fixes for erb and net-imap.

  • Matz opened RubyConf this week with "Extreme Vibe Coding" where he shared his take on AI's role in development work. No video yet but it's mentioned in 𝕏 posts here, here, here, and here. Video as soon as we get it!

  • Spinel isn't just Matz's AOT Ruby compiler, it's also the name of the Spinel Cooperative, a group of Rubyists working on rv and other tools.

💡 If you'd rather attend a Ruby event, this RubyEvents.org page has you covered.

📄 Never Escape This Ruby Loop (Also, Here's How) – Is there a truly infinite loop in Ruby? Almost! Some fun poking here. Masataka Pocke Kuwabara

📄 Rails 8.1's Deprecated Associations and How to Fix Them"Rails 8.1 lets you explicitly mark outdated or obsolete associations as deprecated." Julio Lucero

📄 A Gentle Introduction to Git Worktrees – For when you need to check out multiple branches into separate directories simultaneously. Nicholas C. Zakas

📄 6 Security Settings Every GitHub Maintainer Should Enable This Week Joseph Katsioloudes (GitHub)

SimpleCov 1.0: Code Coverage for Ruby — The popular code coverage tool hits v1.0 after 15+ years at 0.x, bringing together a new report UI, redesigned configuration API, and improved parallel testing support. No release post means I might need to blog about this soon as it's a neat tool!

Berlin et al.

minitest-strict: Stricter Assertions for Minitest"Minitest's built-in assertions are lenient in ways that can mask bugs", says Erik, whose library redefines several assertions to require strict boolean values, plus adds assert_true, assert_false and assert_eql.

Erik Berlin

💡 As part of working on the http gem, Erik also made minitest-memory which provides assertions for tracking memory allocations.

📢  Elsewhere in the ecosystem