Rails 3.0.7 has been released!

Hello everyone! I hope you're having an AMAZING Monday. If you Monday
wasn't AMAZING enough already, I've decided to make it even better by releasing
Rails version 3.0.7!

(As a side note, sometimes I have a hard time telling if my day is
AMAZING or FABULOUS. If anyone has hints, let me know!)

I want to say thanks to Santiago for handling the release candidate gems. He's
on vacation, so I get to do the real thing.

The main change in this release is to fix a performance regression in
ActiveRecord that was introduced in version 3.0.6.

# Changes

For a web friendly view, check out the compare view
[on github](https://github.com/rails/rails/compare/v3.0.6...v3.0.7).

For those that want the TL;DR of the commits, here are the pertinant CHANGELOG
entries for each project:

## activesupport
* `Hash.from_xml` no longer loses attributes on tags containing only whitespace
  [André Arko]

## activerecord
* Destroying records via nested attributes works independent of `reject_if`
  LH #6006 [Durran Jordan]
* Delegate any? and many? to Model.scoped for consistency [Andrew White]
* Quote the ORDER BY clause in batched finds - fixes #6620 [Andrew White]
* Change exists? so records are not instantiated - fixes #6127. This prevents
  `after_find` and `after_initialize` callbacks being triggered when checking
  for record existence.
  [Andrew White]
* Fix performance bug with attribute accessors which only occurred on
  Ruby 1.8.7, and ensure we cache type-casted values when the column returned
  from the db contains non-standard chars.
  [Jon Leighton]
* Fix a performance regression introduced here
  86acbf1cc050c8fa8c74a10c735e467fb6fd7df8
  related to `read_attribute` method [Stian Grytøyr]

## actionmailer
* remove AM delegating `register_observer` and `register_interceptor` to Mail
  [Josh Kalderimis]

# Checksums

Just in case!

    $ shasum *
    6b96ed6cf0717e7e40b7ef9b39a70814d3928250 actionmailer-3.0.7.gem
    c28009b6ce47c60553027c1ddd9c9bd2aacb2c82 actionpack-3.0.7.gem
    6ee5ca84b460fff55e7dd825fc966cfbc4b36070 activemodel-3.0.7.gem
    25ff07f49129ccd405c95047b41e6717e95f9471 activerecord-3.0.7.gem
    a4adde3ad82017d8925e99733d1cd288b1474c39 activeresource-3.0.7.gem
    d1a0192fd9da869caee79be66a5915633eda291f activesupport-3.0.7.gem
    04aa110f50d2ea9b8434526faff57ab2e249495e rails-3.0.7.gem
    9430747274afa4fac2c37ae05a39f9cb79680e16 railties-3.0.7.gem

Have a great week everyone!

<3 <3 <3 <3 <3

Great! I’m updating the gems… So if i’ve done a project using rails 3.0.6 and now i’m updating gems to rails 3.0.7, what I’ve to do inside my project? Should I change the Gem file inside my project, from rails 3.0.6 to rails 3.0.7? or run “bundle install” ? or something else?

Thanks in advance!

…and another question :wink: I’ve noticed running gem list that on my system I’ve both rails 3.0.6 and 3.0.7, and the same for activerecord, activesupport, etc etc…

Is there a problem? is there a way to clean up older versions?

Thanks! :wink:

Great! I’m updating the gems… So if i’ve done a project using rails 3.0.6 and now i’m updating gems to rails 3.0.7, what I’ve to do inside my project? Should I change the Gem file inside my project, from rails 3.0.6 to rails 3.0.7? or run “bundle install” ? or something else?

Hi, I would recommend doing the following

adding/updating the rails line within Gemfile to look like the following:

gem ‘rails’, ‘3.0.7’

Then run ‘bundle’ from the command line within the root of your Rails project.

Good luck,

-Conrad

…and another question :wink: I’ve noticed running gem list that on my system I’ve both rails 3.0.6 and 3.0.7, and the same for activerecord, activesupport, etc etc…

Is there a problem? is there a way to clean up older versions?

This isn’t an issue and this is by design. The Gemfile will tell indicate what version you would like to use for your Rails project. Now, if you would like to use the latest of all gems, you can do the following to clean up your gems:

gem clean

However, you should be aware that other gems may depend on an earlier version of a gem(s). Thus, I would recommend not doing the above unless you truly understand all your gems and their associated dependencies.

Good luck,

-Conrad

Ok i’ve changed the Gem file from “rails 3.0.6” to “rails 3.0.7”, then run “gem clean”: it deleted all the older version.

Then I’ve finally run “bundle”, and it downloaded some older version gem, for example “mail 2.1.16” (so I’ve both mail 2.1.17 and 2.1.16). I think that’s not an issue, since my app is working perfectly…

Please reply if you have some other ideas of what’s the best when a new rails version is released.

:wink: thanks!

just run 'bundle update rails'.

so “bundle update rails” is to update the application from an older to an earlier version, right?

And then “gem clean” to remove the older version of the gems.

That’s should be the common rule… :wink:

Change your Gemfile, then run `bundle update`.

It's not really a problem. But you can delete older gems by using the
`gem cleanup` command.