mirror of
https://github.com/github/rails.git
synced 2026-04-26 03:00:59 -04:00
Improve deprecation message
This commit is contained in:
@@ -37,13 +37,23 @@ module ActiveRecord
|
||||
# accessors, mutators and query methods.
|
||||
def define_attribute_methods
|
||||
unless defined?(@attribute_methods_mutex)
|
||||
ActiveSupport::Deprecation.warn(
|
||||
"It looks like something (probably a gem/plugin) is removing or overriding the " \
|
||||
"ActiveRecord::Base.inherited method. It is important that this hook executes so " \
|
||||
"that your models are set up correctly. A workaround has been added to stop this " \
|
||||
"causing an error in 3.2, but future versions will simply not work if the hook is " \
|
||||
"overridden."
|
||||
)
|
||||
msg = "It looks like something (probably a gem/plugin) is overriding the " \
|
||||
"ActiveRecord::Base.inherited method. It is important that this hook executes so " \
|
||||
"that your models are set up correctly. A workaround has been added to stop this " \
|
||||
"causing an error in 3.2, but future versions will simply not work if the hook is " \
|
||||
"overridden. If you are using Kaminari, please upgrade as it is known to have had " \
|
||||
"this problem.\n\n"
|
||||
msg << "The following may help track down the problem:"
|
||||
|
||||
meth = method(:inherited)
|
||||
if meth.respond_to?(:source_location)
|
||||
msg << " #{meth.source_location.inspect}"
|
||||
else
|
||||
msg << " #{meth.inspect}"
|
||||
end
|
||||
msg << "\n\n"
|
||||
|
||||
ActiveSupport::Deprecation.warn(msg)
|
||||
|
||||
@attribute_methods_mutex = Mutex.new
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user