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 a Proc
that accepts a message and a callstack e.g. you could do:
ActiveSupport::Deprecation.behavior = Proc.new { |message, callstack|
raise message + "\n" + callstack.join("\n ")
}
If you have automated tests for your app these are invaluable when upgrading the version of Rails being used.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With