#697 — April 4, 2024 |
|
Ruby Weekly |
Vernier: A Next Generation CRuby (3.2+) Profiler — A sampling profiler that can track multiple threads, GVL activity, GC pauses, idle time, and more. If you’ve been enjoying Tenderlove’s recent livestreams, you may have ▶️ seen it on there. Once you’ve captured a profile, you can view it in a few ways (including on the web), but here’s some example output. John Hawthorn |
Need to Upgrade Rails with Zero Downtime? — Ready for Rails 7.2? Top-notch engineering teams (from startups to Fortune 500 companies) trust the FastRuby.io team in mission-critical upgrades. Leverage our 30,000+ dev hours of experience: Get to Ruby 3.3 and Rails 7.2 with zero downtime🔥 UPGRADE RAILS WITH FASTRUBY.IO sponsor |
Kamal: Hot Deployment Tool to Watch — or a Game Changer? — First published about what was then called MRSK, the Evil Martians have updated their take on DHH’s container-based deployment tool from a 2024 perspective. If you’re not yet using Kamal or want to understand when/why you should/shouldn’t use it, this is for you. Evil Martians |
📗 In related news, Josef Strzibny has released the Kamal Handbook, a 'missing manual' for Kamal, complete with a foreword by 37signals' Donal McBreen. |
RubyGems Not Vulnerable to the xz/liblzma Backdoor — If you follow tech news more broadly, you’ll have seen news about a backdoor in the xz/liblzma project. While the vulnerability has far reaching implications, the RubyGems team has done an audit of its effect on RubyGems (including every gem) and found no issues. Samuel Giddins |
|
📄 Articles, Tutorials & Videos |
Ruby Benchmark: Data.define, Struct, OpenStruct — A comparison of Lucian Ghinda |
▶ Frontend Ruby with Glimmer DSL for Web — A talk from last month’s Montreal.rb meetup by Andy Maleh, best known for his work on Glimmer, about taking Ruby into the browser to create frontend apps. Andy Maleh |
▶ 🤡 How to Make Your Rails App 'Fart' — Clearly intended as an April Fools’ joke, but with a nonetheless practical angle that you could hopefully use for something more edifying than fart noises.. 😅 Drifting Ruby |
Rails 8 Adding Rate Limiting to Action Controller via Kredis Limiter Type — Rails 8 will provide a Siddharth Shringi |
Why and How to Replace aasm (acts_as_state_machine) with Rails Enum today
|
Rails Cronjobs: Moving from Whenever to sidekiq-cron (with Active Job)
|
🛠 Code & Tools |
Introducing Ruzzy: A Coverage-Guided Ruby Fuzzer — Fuzzing is a form of dynamic testing that feeds random inputs to a test subject and Ruzzy is the latest gem to offer fuzzing Ruby code. After a quick usage example, there’s a lot of information here about implementation details. Matt Schwager |
Gemsmith 21.5: CLI Tool for Smithing New Ruby Gems — An ideal tool if you want to go a step beyond Bundler’s gem skeletons. The homepage does a good job showing off the main features, but there’s also its GitHub repo. Brooke Kuhlmann |
Hookdeck: The Amazon EventBridge Alternative — Receive, transform, filter, route, and send messages across your EDA with an event gateway for engineering teams. Hookdeck sponsor |
📋 Clipboard: Cross-Platform Access to the Clipboard — A library of over 10 years’ vintage, but still maintained, supporting modern versions of Ruby (including JRuby), and clipboard access on Linux, macOS, Windows, WSL, and more. Jan Lelis |
PermanentRecords: Soft-Delete for Your ActiveRecord Records — A way to prevent Active Record objects being destroyed, as long as their model has a Jack Danger |
React on Rails 14: Bringing React, Webpack, and Rails Together — A major release because Ruby 2.7 support is dropped, but otherwise broadly stays the same and still worth a look if you want to integrate more closely with React in a Rails app – here’s how it works. ShakaCode |
ActiveRecordCursorPaginate: Cursor-Based Pagination for Active Record — Paginate through an AR relation using cursor pagination. It also supports ordering by any column on the relation. fatkodima |
|
|