
Rails 3.0: Release candidate - mrduncan
http://weblog.rubyonrails.org/2010/7/26/rails-3-0-release-candidate
======
dirtyhand
"We’ll be making sure we get performance of Active Record back to at least 2.3
levels before release." Why call it a Release Candidate if you still plan on
tweak more stuff?

~~~
dhh
Because we're not going to change the interface to make the internals faster.
And we might as well spend the time that the RC is out there looking for bugs
to make things faster as well.

~~~
sandofsky
This may be a source of confusion. In most circles, release candidate
signifies that this should be the final release, and will only be changed if
new bugs emerge.

~~~
bobbyi
The exact meaning of terms like "beta" is subjective, but "release candidate"
has the it right there in the name.

It's not a release candidate if you literally state that it is not a candidate
for release.

~~~
blaix
Exactly. Not to mention if you know you're going to be working on it, there's
always the chance new bugs can emerge as a result.

If I install the final version I'd expect that means it's the exact same
version as the most recent release candidate and no critical bugs were found
during that period. _Not_ the most recent release candidate, plus a bunch of
tweaks that were made while everyone was testing. And if you're already
assuming there will be another release candidate before a final, then this
isn't a release candidate.

------
pedoh
For new RoR programmers, is it recommended to just start in with Rails 3, or
stick with Rails 2 until Rails 3 "stabilizes"? There are a bunch of Rails 3
books out there; do they generally line up well with this release candidate,
or are they full of old information that a new RoR programmer would stumble
upon and not understand how to fix?

[EDIT] The three books I saw available that specifically mention Rails 3 in
the title are available for pre-order, so hopefully they will be pretty up-to-
date.

~~~
milesf
The most up-to-date book is the free Rails Tutorial
<http://railstutorial.org>, which will be updated to Rails 3 soon after it's
final is released.

If you have an older book using an older version of rails, DON'T use Rails 3,
use the version used in your book (DHH mentioned this on an episode of
coderpath <http://coderpath.com/posts/1>)

~~~
mhartl
There's actually a semi-secret version of the _Ruby on Rails Tutorial_ book
already updated for Rails 3.0.0.rc:

<http://railstutorial.org/book?version=3.0.0.rc>

Shhh... Don't tell anyone! :-)

(The official release of the _Ruby on Rails 3 Tutorial_ book should happen
some time in the next couple weeks, probably slightly ahead of the official
Rails 3.0 release. Of course, the tutorial will also be updated after Rails
3.0 final drops.)

~~~
philwelch
Now I have to start the tutorial all over again...but thanks! This should be a
lot easier than looking up for myself how Rspec 2 works and so forth.

~~~
matwood
Just so you know, Rails 3 RC plus all the associated dependencies with rspec
now core dump on integration ('requests') tests even though controller testing
works fine. It looks like there is a webrat/rspec usage issue. I assume
they'll get it fixed in a few days.

~~~
mhartl
I'm glad to know it's not just me. The tutorial book pins RSpec down to
2.0.0.beta.18 for just this reason. (It looks like 2.0.0.beta.19 is the one
that has the problem.) Of course, I'll update the tutorial with the latest
RSpec version once they fix this issue.

~~~
matwood
Here's the rspec ticket to keep an eye on:

<http://github.com/rspec/rspec-rails/issues#issue/140>

~~~
mhartl
Thank you—this is _very_ helpful.

~~~
matwood
While you're here :) I wanted to say that your book/tutorial is really well
done. I was working through the 2.0 version and simply figuring out what
needed to happen for 3.0. Thanks for the link to the 3.0 version. I'll let you
know if I any problems or confusing parts.

------
davidw
I haven't had a look at 3.0 yet. What's the effort like to upgrade? I have
this suspicion that it's basically going to be a major rewrite for most of my
projects with all the new apis and deprecation. It's almost as if it were a
completely separate project that offered some degree of Rails compatibility to
help people transition. _However_ , that's the impression I get from reading
things - how is it in practice for those who have updated significant code
bases?

~~~
ekidd
The core Rails APIs are mostly the same, though you'll have to basically
rewrite a couple of files in config/. I'm currently porting a moderately large
application from 2.3, and few of the remaining unit test failures have
anything to do with the Rails core.

Your biggest problem will be that a number of third-party gems have been
heavily updated for ActiveSupport 3.0, including RSpec, Devise and Mongoid,
and these may cause more headaches than Rails itself. Figure a few days of
updating stuff and staring at unit test failures if you rely heavily on these
gems.

Of course, all bets are off if you use a lot of dodgy, unmaintained gems that
heavily monkey-patch Rails. We have a pretty strict policy against using
dubious minor gems that stick their fingers deep inside Rails, after some bad
experiences over the past couple of years.

------
guywithabike
What's the upgrade path like from Merb?

~~~
raystar
Quite simple, I rewrote a medium sized app in about a day, and actually fixed
a few things too.

I found it really easy to upgrade from either rails 2.3.x or merb.

