This post originated from an RSS feed registered with Ruby Buzz
by Jeremy Voorhis.
Original Post: Upgrading Rails Applications Sucks
Feed Title: JVoorhis
Feed URL: http://feeds.feedburner.com/jvoorhis
Feed Description: JVoorhis is a Rubyist in northeast Ohio. He rambles about Ruby on Rails, development practices, other frameworks such as Django, and on other days he is just full of snark.
Currently, the recommended upgrade path for a Ruby on Rails application is to run rails . from your application root. This regenerates the skeleton of a Rails application on top of your existing application.
Considering the sophistocation of migrations in Rails to manage database schema, this approach to managing the app is naive and dangerous.
As you might suspect, I have taken no action to address this issue before blogging it, but here is a proposed enhancement.
The rails command should generate a file called RAILS_VERSION containing – you guessed it – the version number the application was generated with
Future versions of Rails should be distributed with a manifest (similar to that of a generator’s) of changes to the skeleton application between that version and the last version
This manifest can provide a clear upgrade path to an automated tool like rake upgrade_rails
Certain files will not be tampered with, such as public/index.html
Please, share with me your thoughts on this. I appreciate Rails’ rapid pace of improvement, but give us a better way to keep up!