Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is there a Rails 4 backports library?

Over time, we're upgrading pieces of our Rails 3.2.x application to be Rails 4 compatible. For example, any of our new code is written using strong parameters instead of attr_accessible. We'd like to take a similar approach for features like ActiveRecord's none and find_or_create_by so we don't have to change much code when we finish our upgrade to Rails 4.

Is there a Rails 4 backports library that can assist us with this? We currently have a collection of monkey patches, but it seems like there would be a gem for this.

like image 487
Benjamin Oakes Avatar asked Nov 10 '22 14:11

Benjamin Oakes


1 Answers

No, there is not. As you noticed, certain features are provided as a gem (such as strong_params) that you can easily install in your previous version.

In case of some serious deprecations, the Rails core team normally includes a deprecation message in the old version along with a backport, so that you can fix the deprecation before upgrading the release.

In the case of none, this is not a deprecation but a feature. Unless you find this in a gem, you are forced to upgrade to Rails 4 in order to use it.

find_or_create_by is a deprecation, but Rails 4.0 still supports it. Thus you can upgrade and remove the code later.

Generally speaking, a backport with deprecation is normally provided only for those changes that will cause an incompatibility immediately after the upgrade preventing your application to even start or run properly.

like image 73
Simone Carletti Avatar answered Nov 14 '22 23:11

Simone Carletti