I recently upgraded from Rails 2 to Rails 3, and I’m trying to root out all the code I might have that is deprecated. The way I’m doing this is just surfing around a copy of my site running on a development machine, and peering at the output from the console for warnings.
Is there a way to cause Rails to treat deprecation warnings as errors or otherwise find deprecated code more efficiently?
You can customise the behaviour of deprecated calls by setting
ActiveSupport::Deprecation.behavior. This should be set to aProcthat accepts a message and a callstack e.g. you could do:If you have automated tests for your app these are invaluable when upgrading the version of Rails being used.