Here at Rails Agency, we’ve been using Ruby on Rails to rapidly prototype and build amazing webapps for clients all over the world. It comes with no surprise we’re as excited about the release of Rails’ latest major release, version 6.0, as DHH is himself.

Rails has consistently been one of the top web frameworks to work with, favoring Convention Over Configuration and developer happiness. True to form, Rails 6.0 delivers the following:

Action Mailbox

Action Mailbox is a much needed addition to the framework. Action Mailer, used to build outbound email, has existed since Rails has been around - however processing incoming email was often difficult and required lots of work. Now, Inbound email has been brought under Rails’ umbrella - and can be used with minimal configuration by Amazon SES, Sendgrid, Mailgun, and a few others.

Action Text

Next is Action Text, a new rich text editor built right into Rails. Gone are the days of having to integrate your own editor. Just use the one the Framework supports and save yourself the hassle. It’s an integration between the Trix editor, Active Storage-backed file and image processing, and a text-processing flow that ties it all together.

Multiple Database Support

This one is only just now happening, but better late than never. While its always been possible to have multiple database connections, it was always a bit clunky and required namespacing your models and doing things just right in order to make it work. But now its baked right into ActiveRecord and easy to use, just the way Rails should be. Thanks Aaron Patterson and Eileen Uchitelle for working on this!

Parallel Testing Support

Move over parallel_tests gem, Rails now supports setting up test suite parallelization natively. Woohoo!

Rails 6.0 of course contains numerous minor changes, fixes, and upgrades

Above are just some of the most notable additions; however, Rails 6.0 contains numerous minor changes, fixes, and upgrades. Proper Action Cable testing, Action Cable JavaScript rewritten in ES6, protection against DNS rebinding attacks, and per-environment credentials. Rails 6 now requires Ruby 2.5.0 or higher. Be sure to check out the individual framework CHANGELOG files for all the gory, code level details.

Projects running Rails 6.0

LD Studios has several projects running on Rails 6.0 RC already. The biggest problems we’ve faced upgrading apps is gem support and changes to the public API - specifically in ActiveRecord. We have an open pull request on the ActsAsParanoid gem that isn’t fixed yet, but it appears that gem doesn’t fully support ActiveRecord 6 quite yet.

LD Studios can upgrade your app to Rails 6!

At LD Studios, we have extensive experience working with and upgrading Rails apps. If you have a Rails app and would like to upgrade to Rails 6, please don’t hesitate to contact us using the chat widget below.