#​620 — September 15, 2022

Read on the Web

Ruby Weekly

Ruby 3.2.0 Preview 2 Released — The countdown to Christmas Day, and therefore a key new version of Ruby, continues. Preview releases in recent years have been quite reliable (it’s not the 1.9 days anymore!) so if you want to play with the new WASI-based WebAssembly support, regular expression timeouts, rest param changes, or YJIT’s support for arm64/aarch64.. now is as good a time as any.

Yui Naruse

Send Email Directly from Your Ruby App with Courier — Using a marketing tool to email your users? With the Courier gem you can notify your users with a single line of code. We work with Mailgun, Sendgrid and many other email providers.

Courier.com sponsor

Howitzer: An Acceptance Testing Framework for Webapps — Ruby powered but aims to be high level enough to work with webapps built pretty much using anything, whether PHP, Java, or .NET. You can pick from Cucumber, RSpec or Turnip for the BDD side of things. Provides a lot of structure. GitHub repo.

StronqQA LLC

JRuby 9.3.8.0 Released with Virtual Thread Support — On the surface, this Ruby 2.6.x-compatible release of the popular JVM based Ruby implementation seems minor, but it has a bonus feature in the shape of experimental support for using ‘virtual threads’ (a very new, lightweight thread feature in Java 19). This, apparently, makes it possible for JRuby apps to “create thousands of concurrently-executing fibers.”

JRuby Core Team

QUICK BITS:

  • Shopify's Kevin Newton has posted 🐦 a Twitter thread about how he's going to be rewriting Ruby's parser – it's still going to be written in C but will be decoupled enough that it can be used by third party projects (like linters, say) without needing to link against the whole of CRuby.

  • Rails 7.0.4, 6.1.7 and 6.0.6 have been released. All minor bugfix releases. The 6.x ones are considered 'best effort' releases though, as technically those branches are no longer supported.

  • Nate Berkopec 🐦 notes that both YJIT and MJIT are being rewritten for Ruby 3.2, with YJIT going from C to Rust and MJIT from C to Ruby.

  • Brandon Weaver 🐦 has unveiled a Discord-based 🎮 community called Ruby Learning Center for Rubyists to collectively work through Ruby related books, courses, and other educational material.

📖 Articles, Stories & Videos

Using the Timescale Gem with RubyTimescaleDB is an extension that turns Postgres into more of a fully-fledged time series database. This thorough walkthrough demonstrates using its hypertables from Ruby and Active Record from creation through to querying.

Jônatas Davi Paganini

▶  Kuby: Active Deployment for Rails Apps — Want to deploy Rails apps on Kubernetes? Kuby tries to make Docker and Kubernetes more accessible to the average Rails developer. This talk takes it very gently and focuses more on the big picture of Rails deployments before reaching Kuby as an option. Thanks to reader James Childers for specifically recommending this.

Cameron Dutro

🎧 If you'd rather listen to Cameron talk about Kuby, he was on this week's Ruby Rogues podcast.

Announcing Incident Management For Honeybadger Status Pages 🤩 — Now you can report incidents in real time (or retroactively) and schedule alerts for planned maintenance. Check it out.

Honeybadger sponsor

'Why I Don’t Enjoy RSpec All That Much' — I too, am more of a Minitest fan, but RSpec undoubtedly remains the biggest entrant in the fight. Josef reflects on some of RSpec’s warts.

Josef Strzibny

▶  A Chat with Adrian Marin, the Founder of Avo AdminAvo is the latest in a line of Rails-based boilerplate / starter apps, and a particularly solid one at that. (58 minutes.)

Code with Jason Podcast podcast

EXTRAS:

🛠 Code & Tools

Bashly: Bash CLI Script Framework and Generator — This is an interesting idea. You declare the basic user-facing elements of a CLI tool (arguments, environment variables, command groups, default values, and more) and Bashly generates the bash code to make it a reality – you can then flesh out the actual functionality from there. There are a lot of examples in the GitHub repo.

Danny Ben Shitrit

Don’t Let Your Issue Tracker Be a Four-Letter Word. Use Shortcut

Shortcut (formerly Clubhouse.io) sponsor

Tobox: Implementation of the 'Transactional Outbox' Pattern — Simple, data-first events processing based around the transactional outbox pattern. tobox executes your handlers in a worker pool which can be either thread or fiber based.

HoneyryderChuck

Jobs

Ruby Engineer | Bavaria or Remote 🇩🇪 — Join our German-speaking, Ruby-loving team for AI-backed SaaS products for the travel industry. No meetings, just coding :-)
adigi.ai

Find Ruby Jobs Through Hired — Create a profile on Hired to connect with hiring managers at growing startups and Fortune 500 companies. It's free for job-seekers.
Hired