If you haven't upgraded yet, Ruby 4.0's garbage collection is generally much faster than 3.4. This patch release fixes the one area there had previously been a notable regression (allocating/freeing Classes).
Ruby 4.0.4 Released www.ruby-lang.org/en/news/2026...
This is a routine update that includes bugfixes. We recommend upgrading your Ruby version at your earliest convenience.
Made a new blurg post about AI + OSS security. I was going to just complain on here, but I figured a short blog post would be better for my complaining 😂 tenderlovemaking.com/2026/05/06/r...
Ruby 4.0.4 has been released.
www.ruby-lang.org
For quite a few years the Rails project has been working with the Internet Bug Bounty (IBB). The IBB is an organization that awarded cash to security researchers that reported issues to OSS projects p...
It's just a proof of concept, but this is how I wish Rust extensions for Ruby were written: github.com/tenderworks/...
Aaron Patterson
John Hawthorn
k0kubun
Ruby 4.0.4 Released www.ruby-lang.org/en/news/2026...
This is a routine update that includes bugfixes. We recommend upgrading your Ruby version at your earliest convenience.
If the catcher sees his shadow there's 6 more weeks of spring training
k0kubun
Please give github.com/jhawthorn/ba... a try
Proud of this patch I landed to Ruby this week which makes constants inside of `class << self` scopes faster both in the interpreter and JITs. It's not the most complicated or even impactful, but something I've wanted to fix for years github.com/ruby/ruby/pu...
I've proposed adding $SECONDS, $RANDOM, and other bash features to Ruby
bugs.ruby-lang.org/issues/21976
> i'm going to become rich and famous after i invent a device that allows you to stab Claude Opus 4.8 in the face over the internet
John Hawthorn
John Hawthorn
Generate FFI bindings from Rust extensions. Contribute to tenderworks/roost development by creating an account on GitHub.
Ref: rails/bootsnap#535
This only impact the app own code, and not dependencies. It is also possible to enable it for gems, but some old ones may still not be ready.
This aims to allow constant cache accesses inside a singleton CREF to use the same fastpath as most constant caches, without needing to re-check the CREF on every access.
class Foo
def self.foo1
...