---
title: "All aboard the train to Rails 8"
publication: "Ruby Weekly"
issue: 685
published_at: "2024-01-11"
canonical_url: "https://rubyweekly.com/issues/685"
---

Plus revisiting dRuby, guard rails for IRB, and Blue Ridge Ruby is back. |        

#​685 — January 11, 2024 

[Read on the Web](https://rubyweekly.com/issues/685)  

Together with [![Memetria\](https://res.cloudinary.com/cpress/image/upload/c_fill,g_auto,w_600,h_145/e_make_transparent/co_white,e_outline:7/vvpdctzacmq3xehpvwps.png)](https://dashboard.memetria.com/rubyweekly/)   

Ruby Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/fxppb9w5kowkuotrqedh.jpg)](https://railsnotes.xyz/blog/rails-8-whats-coming)  

[Here's What's Coming in Rails 8](https://railsnotes.xyz/blog/rails-8-whats-coming) — Rails 7.1 was released only a few months ago, but Rails 8 is expected later this year, packing in even more new features, like the inclusion of _Solid Queue_ and _Solid Cache_ as defaults, a PWA-focus that includes push notification support (it’s [DHH’s #1 objective](https://twitter.com/dhh/status/1742643733638648213)), a default Rubocop setup and, of course, much more. 

Harrison Broadbent   [![\](https://copm.s3.amazonaws.com/978069f7.png)](https://dashboard.memetria.com/rubyweekly/) 

[Memetria: Secure, Scalable Redis Hosting](https://dashboard.memetria.com/rubyweekly/) — High performance Redis hosting with large key tracking, detailed metrics, and a superior uptime record. 

Memetria sponsor    

[Reconfiguring Your App Live with dRuby](https://katafrakt.me/2024/01/08/live-reconfiguring-druby/) — dRuby (aka [drb](https://github.com/ruby/drb)) provides a way for objects in one process to invoke methods on objects in _other_ processes relatively seamlessly. It’s been around _forever_ (at least, it was about in 2004 when I started!) but doesn’t get much attention despite offering some interesting opportunities, as shown here. 

Paweł Świątkowski   

[Unveiling the Big Leap in Ruby 3.3’s IRB](https://railsatscale.com/2023-12-19-irb-for-ruby-3-3/) — We casually included a small link to this in our Ruby 3.3 release roundup [last week](https://rubyweekly.com/issues/684), but given most of us spend a lot of time in IRB, it’s absolutely worth being up to speed with the significant improvements made recently. 

Stan Lo   

- 💎 The minimum required version of Ruby for Rails [is now Ruby 3.1](https://github.com/rails/rails/pull/50491). This will apply to Rails 7.2 and 8.0.
- ▶️ The first _Friendly.rb_ conference took place in Romania last September. [The talks are now on YouTube](https://www.youtube.com/playlist?list=PLjHS2aIdExPdwbsmv2-e3DFN677fyFme7#friendlyrb).
- 🕸 [Glimmer](https://github.com/AndyObtiva/glimmer) is a suite of DSLs for building desktop apps with Ruby.. or is it? [Glimmer is now heading to the Web too](https://andymaleh.blogspot.com/2024/01/glimmer-goes-web.html).
- 🇨🇦 [Toronto Ruby](https://toronto-ruby.com/) is meeting up on January 24, with Ruby core's Peter Zhu giving a talk about speeding up Rails apps.
- 📅 _Blue Ridge Ruby_ [is back with a 2024 event](https://twitter.com/blueridgeruby/status/1745142301662257408) this May 30-31 in Asheville, NC.
- 📹 _thoughtbot_ points [to three talks](https://thoughtbot.com/blog/update-from-rubyconf-2023) given by employees at RubyConf 2023.  

📕 Articles & Tutorials  

[Migrating from Sidekiq to Solid Queue](https://kylekeesling.com/posts/2024/01/migrating-from-sidekiq-to-solid-queue) — The process is straightforward (assuming you're using Active Job) but there are gotchas around multiple queues, error handling, and retries. 

Kyle Keesling   

[Installing Ruby 3.3 with YJIT on macOS](https://dev.to/jetthoughts/unlocking-performance-installing-ruby-with-yjit-on-macos-3iei) — YJIT was enabled for me using ruby-build through `asdf` ([like so](https://github.com/asdf-vm/asdf-ruby)), but if it wasn’t for you, this may be helpful. 

Michael Nikitochkin   

[Is Lograge the Best Logging Library in 2024?](https://prefab.cloud/blog/rails-logging-gems-2024/) — Lograge is an all-time great gem to manage Rails logging, but is it still the best? Here's my side-by-side comparison of 3 different Rails logging gems. 

Prefab sponsor   

▶[Adding Turbo 8 into a Rails App](https://www.driftingruby.com/episodes/turbo-8) — David Kimura explores the seamless updating of pages in real-time using new Turbo 8 functionality around broadcasting and morphing. _(27 minutes.)_ 

Drifting Ruby   

[Keep Your Ruby Code Maintainable with Draper](https://blog.appsignal.com/2024/01/10/keep-your-ruby-code-maintainable-with-draper.html) — [Draper](https://github.com/drapergem/draper) adds an OO layer of presentation logic to Rails apps, by way of _decorators._ This post gives a reasonable intro, though the overall approach is not particularly popular and can introduce more complexity than it’s worth. 

Thomas Riboulet   

💡 [Phlex](https://www.phlex.fun/html/introduction/) and [ViewComponent](https://viewcomponent.org/) are other, simpler options to explore around bringing more OO and structure to views.  

▶[Unraveling Ruby's AI Journey with Alex Rudall](https://topenddevs.com/podcasts/ruby-rogues/episodes/unraveling-ruby-s-ai-journey-with-alex-rudall-ruby-619) 
Ruby Rogues Podcast podcast   

[Using SpamAssassin from Ruby](https://updown.io/blog/the-funny-rules-of-spamassassin-in-2023) 
Adrien Rey-Jarthon   

[Don’t Assert Return Types](https://jardo.dev/dont-assert-return-types-tdd) 
Jared Norman  

🛠 Code & Tools 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/u6xbxprpmdh6an1f0am9.jpg)](https://github.com/grodowski/undercover)  

[Undercover 0.5: A Tool to Prevent Shipping Untested Code](https://github.com/grodowski/undercover) — Be warned about methods, classes and blocks that were changed without tests. Imagine something like RuboCop but for code coverage rather than code style. Now with Ruby 3.3 support. 

Jan Grodowski   

[childprocess 5.0: Cross-Platform Way to Work with Child Processes](https://github.com/enkessler/childprocess) — A long-standing library (the first version came out in 2010) for controlling external programs on any combination of CRuby/JRuby and OS. 

Eric Kessler   

[Get CodeCare Shield for Ruby on Rails Security & Updates](https://reinteractive.com/services-codecare-shield) — Worried about your Ruby on Rails application? With CodeCare Shield, your app will always be secure and up-to-date. 

reinteractive/CodeCareShield sponsor   

[HexaPDF 0.35.0: PDF Creation and Manipulation Library](https://hexapdf.gettalong.org/news/2024/hexapdf-0-35-0.html) — A popular and powerful approach for working with PDFs from Ruby. Now supports fallback fonts. _(Note that it’s AGPL licensed, with a commercial option.)_ 

Thomas Leitner   

[pg_query 5.1: Parse, Deparse and Normalize SQL Queries with Postgres' Own Parser](https://github.com/pganalyze/pg_query) — Uses the actual Postgres source to parse SQL queries and return the internal parse trees. 

pganalyze   

[Logidze 1.3: Log Database Record Changes in Rails Apps Using Postgres](https://github.com/palkan/logidze) — Allows you to create a DB-level log (using triggers) and offers an API to browse said log. The log is stored with the record itself in a JSONB column. 

Vladimir Dementyev   

[SaferRailsConsole: Make `rails console` Less Dangerous](https://github.com/salsify/safer_rails_console) — Provides some basic guard rails when using IRB in specified environments. 

Salsify   

- [ViewComponent 3.10](https://github.com/ViewComponent/view_component/releases/tag/v3.10.0) – Build encapsulated view components for Rails.
- [Faraday 2.9](https://github.com/lostisland/faraday) – Flexible, multi-backend HTTP client library.
- [Strong Migrations 1.7](https://github.com/ankane/strong_migrations) – Catch unsafe migrations in dev.
- [GemSmith 21.0](https://github.com/bkuhlmann/gemsmith) – CLI tool for smithing Ruby gems.
- [Solid Cache 0.3](https://github.com/rails/solid_cache) – Database-backed Active Support cache store.
- [Ruby::Enum 1.0](https://github.com/dblock/ruby-enum) – A handy way to define enums in Ruby.
- [Tmuxinator 3.1](https://github.com/tmuxinator/tmuxinator) – Manage complex `tmux` sessions easily.
- [Polars Ruby 0.8](https://github.com/ankane/polars-ruby) – Fast DataFrames for Ruby.
- [Graphlient 0.8](https://github.com/ashkan18/graphlient) – A _friendlier_ GraphQL client.
- [Statesman 12.1](https://github.com/gocardless/statesman) – Opinionated state machine library.         

Curated by [Peter Cooper](https://twitter.com/cooperx86) and [Glenn Goodrich](https://twitter.com/ruprict).
Published by [Cooperpress](https://cooperpress.com/). 

[Change your email](https://rubyweekly.com/edit_subscription/*|UID|*) or [Stop getting this newsletter.](https://rubyweekly.com/leave/*|UID|*) 

© Cooper Press Ltd · Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom 

Other weekly newsletters we publish include [Postgres Weekly](https://postgresweekly.com/), [React Status](https://react.statuscode.com/), [Frontend Focus](https://frontendfoc.us/), and [JavaScript Weekly](https://javascriptweekly.com/).
