Skip to content

Commit

Permalink
Fixes ArgumentError
Browse files Browse the repository at this point in the history
Arity of ActiveRecord::LogSubscriber#type_casted_binds was changed at
Rails-5.1.5.

- rails/rails#29623
  • Loading branch information
troter committed Mar 9, 2018
1 parent 96e0e38 commit 41ac343
Showing 1 changed file with 16 additions and 1 deletion.
17 changes: 16 additions & 1 deletion lib/activerecord/cause.rb
Original file line number Diff line number Diff line change
Expand Up @@ -147,13 +147,28 @@ def get_binds(payload)
" " + payload[:binds].zip(casted_params).map { |attr, value| render_bind(attr, value) }.inspect
end
end

class LogSubscriberAR515 < LogSubscriberAR502
def sql(event)
super
end

private

def get_binds(payload)
casted_params = type_casted_binds(payload[:type_casted_binds])
" " + payload[:binds].zip(casted_params).map { |attr, value| render_bind(attr, value) }.inspect
end
end
end
end

require "activerecord/cause/railtie" if defined?(Rails)

ActiveSupport.on_load(:active_record) do
if ActiveRecord.version >= Gem::Version.new("5.0.3")
if ActiveRecord.version >= Gem::Version.new("5.1.5")
ActiveRecord::Cause::LogSubscriberAR515.attach_to :active_record
elsif ActiveRecord.version >= Gem::Version.new("5.0.3")
ActiveRecord::Cause::LogSubscriberAR503.attach_to :active_record
elsif ActiveRecord.version >= Gem::Version.new("5.0.0")
ActiveRecord::Cause::LogSubscriberAR502.attach_to :active_record
Expand Down

0 comments on commit 41ac343

Please sign in to comment.