Switching to Rails 1.2.1, Painful, or NBD?

I’ve seen a few people with problems upgrading an existing project to
1.2.1, but it doesn’t look too bad. I was just wondering if a few
people who have already done it could chime in on the plusses and
minuses of upgrading an existing project (started on the previous
version).

Also, where should I look for a list of differences/improvements?

thanks,
jp

I would say that it is early days yet for RoR 1.2.x and if your
application is mission-critical, you may be wise to stick with 1.1.6 for
the time being; especially if you do not need any of the new features
that 1.2.x offers.

My main concern is that there is no migration guide for 1.2.x, so it is
impossible to know what you have to do to ensure a trouble-free
migration. RoR is still capable of falling over spectacularly and
leaving you with no clue as to what the actual problem is, especially if
you get one of the infamous 500 Application Error messages.

If you decide to go with 1.2.x, be prepared to get no answers when you
post your problems in the forums. At the very least, before beginning,
you should check that all the plugins you are using have been verified
to work under 1.2.1.

On Jan 25, 2007, at 9:47 PM, Jeff P. wrote:

I’ve seen a few people with problems upgrading an existing project
to 1.2.1, but it doesn’t look too bad. I was just wondering if a
few people who have already done it could chime in on the plusses
and minuses of upgrading an existing project (started on the
previous version).

I’ve been on 1.2 since rc1. Upgrading was a bit of a pain, mostly
due to the issues around making sure the environment variables were
set correctly and such. A couple libraries broke, a few plugins had
to be updated. Most of the work beyond that was around deprecations,
and changing how a few things worked.

My general advice for updating to 1.2 is:

  1. You’re using svn, and have a reasonably good set of tests, right?

  2. Do the gem update. Do not do a gem cleanup.

  3. “rake rails:update” or “rails your_app_directory”, then svn diff
    to see what changed and where you need to manually pull things in.
    If you’re on OSX it helps to set up svn to use bbedit/textwrangler’s
    diff tool to do this.

  4. run the test suite and dink around in the app to make sure it
    works. If it doesn’t, figure out if it’s a relatively quick fix. If
    it is, fix it and move on. If it isn’t, roll back to the checked in
    state, then wait for the smoke to clear.

-faisal

One thing that’s keeping me from moving to 1.2.x is the deprecation of
#assert_tag. I use the function liberally throughout my integration
tests
and would have to change every one of them to assert_select, which for
now
is too much work to be worth while.

Otherwise, you get deprecation warnings about @session and @params,
which is
easy to fix, and the rest of Rails is pretty solid.

Jason