Search code examples
ruby-on-rails-5actionmailersidekiqmailer

Ruby mailer with sidekiq into Rails 5.x app : ArgumentError


I'm trying to migrate from rails 4.x to rails 5.x

gemfile.lock:
- rails (5.0.2)
- sidekiq_mailer (0.0.8)
- sidekiq (5.0.0)
- actionmailer (= 5.0.2)

For mailing stuff, when I try the following : $>UserMailer.password_reset(account_to_reset).deliver_later
(which previously worked like a charm)

I got this error :
ArgumentError: wrong number of arguments (given 2, expected 0)
with (the full and only) following backtrace :

from /Users/nathangouy/.rvm/gems/ruby-2.4.1/gems/actionmailer-5.0.2/lib/action_mailer/base.rb:582:in 'initialize' from /Users/nathangouy/.rvm/gems/ruby-2.4.1/gems/sidekiq_mailer-0.0.8/lib/sidekiq_mailer/proxy.rb:11:in 'new' from /Users/nathangouy/.rvm/gems/ruby-2.4.1/gems/sidekiq_mailer-0.0.8/lib/sidekiq_mailer/proxy.rb:11:in 'actual_message' from /Users/nathangouy/.rvm/gems/ruby-2.4.1/gems/sidekiq_mailer-0.0.8/lib/sidekiq_mailer/proxy.rb:28:in 'method_missing'

I try a lot of things and wasn't able to find any similar issue on sidekiq or actionmailer


Solution

  • Ok I found the problem, the thing is that sidekiq_mailer isn't maintained by the sidekiq author (I missed this crucial info), and then it's not usable for now with sidekiq/rails 5.x