plataformatec/devise — pull request #3366 by trobrock (2014-12-11 00:40:43+00:00)
Title: Extract attributes generation for trackable

This enabled me to override the update_tracked_fields! method to background the updating of these
attributes. Using something like:

```ruby
\# app/models/user.rb
def update_tracked_fields!(request)
Resque.enqueue(Jobs::TrackUserSignIn, id, tracked_attributes(request))
end
```

```ruby
\# app/models/jobs/track_user_sign_in.rb
module Jobs
class TrackUserSignIn
@queue = :low

def self.perform(user_id, attributes)
user = User.find(user_id)
user.update_attributes! attributes
end
end
end
```