Web app developers will be pleased to hear that we’ve moved another step closer to a stable release of Ruby on Rails 5.1.0, with a release candidate version of the framework now available for testing.

In a blog post, Rails Core Team Member Rafael França urged developers to try out the new release, reminding them to use RubyGems 2.6.11 – Ruby community’s gem hosting service – before trying to install a pre-release.

França said it’s “always frustrating” when it offers up betas and release candidates only for people to wait until week one of the final release to report issues found. We can see it from both sides, to be honest.

França was keen, however, to thank the Ruby community for helping it polish up the Rails 5.1.0.beta1, with more than 380 commits having been incorporated into 5.1.0.rc1. A special mention went to security engineer Stephen Touset who helped to up the encryption used for encrypted secrets.

Other than that, though, the latest blog post didn’t have much else to report. However, in a blog post from February, David Heinemeier Hansson – creator of the Ruby on Rails framework – detailed what we can expect from 5.1:

1. Greater integration with JavaScript

Hansson acknowledges that it’s had a “stormy” relationship with JavaScript over the years – but with JavaScript having improved “immensely” in recent times, he said it will now embrace it with open arms”. He explained that Rails will now support package and compilation tools Yarn and Webpack. It’s also rewritten rails-ujs to use vanilla JavaScript, so developers will no longer be required to use jQuery in order to provide features like data-remote, data-confirm, and the other parts of Rails UJS.

2. Entire-system tests

Hansson emphasised the importance of carrying out entire-system tests if the system relies on JavaScript (which most major web systems do, at least to some extent). It’s long been possible to perform system tests in Ruby in the form of Capybara – Rails has now “baked them straight into the framework”.

3. Encrypted secrets

Rails 5.1 will also come with encrypted secrets management – a viable alternative to having to load up the ENV to store production passwords, API keys and other secrets.

Other highlights include parameterised mailers, direct & resolved routes and unification of form_tag/form_for with form_with.

For the time being, then, there’s nothing else to say but get testing!


If you’re looking for a new role in Berlin speak to Stuart –