rails/rails — pull request #12539 by andyvb (2013-10-14 20:50:41+00:00)
Title: AR::Base#becomes should include changed attributes

ActiveRecord::Base#becomes does not currently copy `@changed_attributes`. This can cause validations to be skipped in the new object.

```ruby
class Company < ActiveRecord::Base
end

class Client < Company
end

company = Company.new(:name => "Three's")
company.changed_attributes
=> {"type"=>nil, "email"=>""}

client = company.becomes(Client)
client.changed_attributes
{"type"=>nil}
```