line art of two overlapping gemstones Spinel

Cooperative est. July 2025

rv 0.7 is out

rv version 0.7 is released! We have three new features, and one significant fix.

JRuby support

One notable absence from our Ruby installer was JRuby. We started with a focus on pre-compiling MRI binaries, and as a result we were initially just trying to make sure that everything worked correctly there. Now that we have more confidence that our setup is working, we’re very happy to add support for installing and managing versions of JRuby as well.

JRuby is a great fit for our philosophy of installing Ruby and being able to use it in just a couple of seconds, without waiting for source tarballs to compile on your local machine. Thanks for the contribution, @afomera!

The rv fmt command

Inspired by the opinionated, standardized, and extremely fast formatters provided by other tools, like go fmt and cargo fmt, we’ve shipped an rv fmt command that can handle hundreds of files in a tiny fraction of a second. It doesn’t need a background server running, and it can’t be configured.

The rv fmt command is powered by librubyfmt, the library version of rubyfmt from Stripe’s Ruby tooling team. The most difficult part of using rubyfmt as a Ruby developer is getting the tool installed – most Ruby projects don’t have a Rust and Cargo toolchain available, and it’s a pain to maintain a script that downloads and installs the rubyfmt binary for every individual project.

By putting librubyfmt into rv, we’re hoping that Ruby developers everywhere will be able to format their code quickly and easily. It’s so fast that you can reformat your code every time your editor saves a Ruby file, and now it doesn’t require installing anything at all.

Optional gems with rvx --with

While rvx is incredibly handy to use if you want to run a single Ruby CLI tool, some tools have optional dependencies. A great example is the sequel gem, which acts as a sort of general database swiss army knife. It doesn’t require you to install any other gems to use it, but to connect to a Postgres database, you need the pg gem installed alongside the sequel gem.

Until today, it wasn’t possible to use rvx sequel and also install the pg gem. With this change, you can now use rvx --with pg sequel to get the exact gems you need, and allow Sequel to connect to a Posgres database. Thanks for contributing, @gilesbowkett!

Fixed auto-switching in PowerShell

Finally, an important bugfix. The PowerShell integration to enable automatic Ruby version switching, by following the .ruby-version file, had stopped working when we tried to expand it to more closely match the other shell integrations.

We’ve fixed the shell integration, tested everything out in PowerShell on both Windows and Mac, and added a test so that hopefully we can’t break the PowerShell integration in that way again in the future. Thanks for the report, @ziggythehamster!

Try it out & give us feedback

To install the latest version, run brew install rv on macOS, or run the installer script: curl -L https://rv.dev/install.sh | bash. For the full list of ways to upgrade, check out the rv releases page.

If you’d like to help test our changes, give us feedback about how rv could be better, or even help us implement new features, we’d love to work with you. Head over to rv.dev to get started, and we’ll see you soon!