thoughtbot / griddler

Simplify receiving email in Rails (deprecated)
http://griddler.io/
MIT License
1.38k stars 199 forks source link

Griddler::Email incompatible with Rails 5? #279

Closed dgmstuart closed 4 months ago

dgmstuart commented 7 years ago

Hi

NoMethodError (undefined method `valid_encoding?' for #<ActionController::Parameters:0x00000003e16ee8>):
2017-05-02T16:16:19.715009+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/griddler-1.4.0/lib/griddler/email.rb:122:in `clean_invalid_utf8_bytes'
2017-05-02T16:16:19.715010+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/griddler-1.4.0/lib/griddler/email.rb:81:in `extract_headers'
2017-05-02T16:16:19.715011+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/griddler-1.4.0/lib/griddler/email.rb:21:in `initialize'

The issue here seems to be that the headers are getting passed as an ActionController::Parameters object.

In the past I gather that this used to lie about its type and pretend to be a hash. Now hashes are handled by the code, but anything that is not an array or hash is incorrectly assumed to be a string (or string-like?)

I'm using https://github.com/thoughtbot/griddler-cloudmailin/ but the issue seems to be in griddler core code.

Full stack trace:

2017-05-02T16:16:19.705982+00:00 app[web.1]: I, [2017-05-02T16:16:19.705907 #10]  INFO -- : [d52e58fe-2584-4e42-9373-b71caafc60f9] Started POST "/email_processor" for 52.2.142.142 at 2017-05-02 16:16:19 +0000
2017-05-02T16:16:19.707262+00:00 app[web.1]: I, [2017-05-02T16:16:19.707183 #10]  INFO -- : [d52e58fe-2584-4e42-9373-b71caafc60f9] Processing by Griddler::EmailsController#create as HTML
2017-05-02T16:16:19.707452+00:00 app[web.1]: I, [2017-05-02T16:16:19.707379 #10]  INFO -- : [d52e58fe-2584-4e42-9373-b71caafc60f9]   Parameters: {"plain"=>"\n---\nDuncan Stuart (@dgmstuart)\n\nTechnical Architect, dxw\n\nhttp://dxw.com/ <
http://dxw.com/>\n  \n07866 936 959\n0345 257 7520\n\n", "html"=>"<html><head><meta http-equiv=\"Content-Type\" content=\"text/html charset=us-ascii\"></head><body style=\"word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-brea
k: after-white-space;\" class=\"\"><br class=\"\"><div class=\"\">\n<div class=\"\" style=\"orphans: 2; widows: 2;\">---</div><div class=\"\" style=\"orphans: 2; widows: 2;\">Duncan Stuart (@dgmstuart)</div><div class=\"\" style=\"orphans
: 2; widows: 2;\"><br class=\"\"></div><div class=\"\" style=\"orphans: 2; widows: 2;\">Technical Architect, dxw</div><div class=\"\" style=\"orphans: 2; widows: 2;\"><br class=\"\"></div><a href=\"http://dxw.com/\" class=\"\" style=\"orp
hans: 2; widows: 2;\">http://dxw.com/</a><div class=\"\" style=\"orphans: 2; widows: 2;\">&nbsp;&nbsp;</div><div class=\"\" style=\"orphans: 2; widows: 2;\">07866 936 959</div><div class=\"\" style=\"orphans: 2; widows: 2;\">0345 257 7520
</div>\n\n</div>\n<br class=\"\"></body></html>", "reply_plain"=>"", "headers"=>{"Received"=>"from submission.local ([fd0f:62b0:48c8::42]) by xxxxx.dxw.net with esmtpsa (TLS1.0:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.86_2) id 1d5Zib-00009
Y-1r for xxxxxxxxxxxxxxxxxxxxx@cloudmailin.net; Tue, 02 May 2017 16:28:01 +0100", "Date"=>"Tue, 02 May 2017 16:28:00 +0100", "From"=>"Duncan Stuart <duncan@dxw.com>", "To"=>"xxxxxxxxxxxxxxxxx@cloudmailin.net", "Message-ID"=>"<xxxxxxxxxxxxxxxxxxx@dxw.com>", "Subject"=>"Test3", "Mime-Version"=>"1.0", "DKIM-Signature"=>"v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=dxw.com; s=harold; h=Mime-Version:To:Date:Message-Id:Subject:Content-Type:From; bh=D/DF
RRgEC6/eEIrGVAf/C3Y01OYKv6tH7jPSoy8lCSg=; b=tqwW4OWuUS6l51nRB8E+347uQk vlyojZa4T5QmTa9z1aEdZSiM6CQIZ4KIOiuL9mJsv0iiECxVGQyBoiiGRLRWvMF0xpZgc3/LPro/H lFD5khlayh+SpBxZlF+hIcLztI9cBG2WhWlffsLcdoeYV9yTNuMR0IMCJq5BCu2iXKpI=;", "X-Mailer"=>"App
le Mail (2.3124)"}, "envelope"=>{"to"=>"cb82d9f905a773ce7b69@cloudmailin.net", "recipients"=>{"0"=>"cb82d9f905a773ce7b69@cloudmailin.net"}, "from"=>"duncan@dxw.com", "helo_domain"=>"crepe.dxw.net", "remote_ip"=>"46.43.8.99", "tls"=>"true"
, "spf"=>{"result"=>"pass", "domain"=>"dxw.com"}}}
2017-05-02T16:16:19.712908+00:00 app[web.1]: I, [2017-05-02T16:16:19.712831 #10]  INFO -- : [d52e58fe-2584-4e42-9373-b71caafc60f9] Completed 500 Internal Server Error in 5ms (ActiveRecord: 0.0ms)
2017-05-02T16:16:19.714647+00:00 app[web.1]: F, [2017-05-02T16:16:19.714569 #10] FATAL -- : [d52e58fe-2584-4e42-9373-b71caafc60f9]
2017-05-02T16:16:19.714811+00:00 app[web.1]: F, [2017-05-02T16:16:19.714742 #10] FATAL -- : [d52e58fe-2584-4e42-9373-b71caafc60f9] NoMethodError (undefined method `valid_encoding?' for #<ActionController::Parameters:0x00000003e16ee8>):
2017-05-02T16:16:19.714881+00:00 app[web.1]: F, [2017-05-02T16:16:19.714818 #10] FATAL -- : [d52e58fe-2584-4e42-9373-b71caafc60f9]
2017-05-02T16:16:19.715008+00:00 app[web.1]: F, [2017-05-02T16:16:19.714932 #10] FATAL -- : [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionpack-5.0.2/lib/action_controller/metal/strong_parameters.rb:646:in `met
hod_missing'
2017-05-02T16:16:19.715009+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/griddler-1.4.0/lib/griddler/email.rb:122:in `clean_invalid_utf8_bytes'
2017-05-02T16:16:19.715010+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/griddler-1.4.0/lib/griddler/email.rb:81:in `extract_headers'
2017-05-02T16:16:19.715011+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/griddler-1.4.0/lib/griddler/email.rb:21:in `initialize'
2017-05-02T16:16:19.715011+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/griddler-1.4.0/app/controllers/griddler/emails_controller.rb:4:in `new'
2017-05-02T16:16:19.715012+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/griddler-1.4.0/app/controllers/griddler/emails_controller.rb:4:in `block in create'
2017-05-02T16:16:19.715013+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/griddler-1.4.0/app/controllers/griddler/emails_controller.rb:3:in `each'
2017-05-02T16:16:19.715014+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/griddler-1.4.0/app/controllers/griddler/emails_controller.rb:3:in `create'
2017-05-02T16:16:19.715014+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionpack-5.0.2/lib/action_controller/metal/basic_implicit_render.rb:4:in `send_action'
2017-05-02T16:16:19.715015+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionpack-5.0.2/lib/abstract_controller/base.rb:188:in `process_action'
2017-05-02T16:16:19.715016+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionpack-5.0.2/lib/action_controller/metal/rendering.rb:30:in `process_action'
2017-05-02T16:16:19.715016+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionpack-5.0.2/lib/abstract_controller/callbacks.rb:20:in `block in process_action'
2017-05-02T16:16:19.715017+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/activesupport-5.0.2/lib/active_support/callbacks.rb:97:in `__run_callbacks__'
2017-05-02T16:16:19.715018+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/activesupport-5.0.2/lib/active_support/callbacks.rb:750:in `_run_process_action_callbacks'
2017-05-02T16:16:19.715019+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/activesupport-5.0.2/lib/active_support/callbacks.rb:90:in `run_callbacks'
2017-05-02T16:16:19.715019+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionpack-5.0.2/lib/abstract_controller/callbacks.rb:19:in `process_action'
2017-05-02T16:16:19.715020+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionpack-5.0.2/lib/action_controller/metal/rescue.rb:20:in `process_action'
2017-05-02T16:16:19.715020+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionpack-5.0.2/lib/action_controller/metal/instrumentation.rb:32:in `block in process_action'
2017-05-02T16:16:19.715021+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/activesupport-5.0.2/lib/active_support/notifications.rb:164:in `block in instrument'
2017-05-02T16:16:19.715021+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/activesupport-5.0.2/lib/active_support/notifications/instrumenter.rb:21:in `instrument'
2017-05-02T16:16:19.715022+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/activesupport-5.0.2/lib/active_support/notifications.rb:164:in `instrument'
2017-05-02T16:16:19.715022+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionpack-5.0.2/lib/action_controller/metal/instrumentation.rb:30:in `process_action'
2017-05-02T16:16:19.715023+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionpack-5.0.2/lib/action_controller/metal/params_wrapper.rb:248:in `process_action'
2017-05-02T16:16:19.715023+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/activerecord-5.0.2/lib/active_record/railties/controller_runtime.rb:18:in `process_action'
2017-05-02T16:16:19.715024+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionpack-5.0.2/lib/abstract_controller/base.rb:126:in `process'
2017-05-02T16:16:19.715024+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionview-5.0.2/lib/action_view/rendering.rb:30:in `process'
2017-05-02T16:16:19.715025+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionpack-5.0.2/lib/action_controller/metal.rb:190:in `dispatch'
2017-05-02T16:16:19.715027+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionpack-5.0.2/lib/action_controller/metal.rb:262:in `dispatch'
2017-05-02T16:16:19.715027+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionpack-5.0.2/lib/action_dispatch/routing/route_set.rb:50:in `dispatch'
2017-05-02T16:16:19.715028+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionpack-5.0.2/lib/action_dispatch/routing/route_set.rb:32:in `serve'
2017-05-02T16:16:19.715028+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionpack-5.0.2/lib/action_dispatch/journey/router.rb:39:in `block in serve'
2017-05-02T16:16:19.715029+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionpack-5.0.2/lib/action_dispatch/journey/router.rb:26:in `each'
2017-05-02T16:16:19.715029+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionpack-5.0.2/lib/action_dispatch/journey/router.rb:26:in `serve'
2017-05-02T16:16:19.715029+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionpack-5.0.2/lib/action_dispatch/routing/route_set.rb:725:in `call'
2017-05-02T16:16:19.715030+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/rack-2.0.1/lib/rack/deflater.rb:35:in `call'
2017-05-02T16:16:19.715030+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/rack-canonical-host-0.2.2/lib/rack/canonical_host.rb:19:in `call'
2017-05-02T16:16:19.715031+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/rack-2.0.1/lib/rack/etag.rb:25:in `call'
2017-05-02T16:16:19.715032+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/rack-2.0.1/lib/rack/conditional_get.rb:38:in `call'
2017-05-02T16:16:19.715032+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/rack-2.0.1/lib/rack/head.rb:12:in `call'
2017-05-02T16:16:19.715032+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/rack-2.0.1/lib/rack/session/abstract/id.rb:222:in `context'
2017-05-02T16:16:19.715033+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/rack-2.0.1/lib/rack/session/abstract/id.rb:216:in `call'
2017-05-02T16:16:19.715033+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionpack-5.0.2/lib/action_dispatch/middleware/cookies.rb:613:in `call'
2017-05-02T16:16:19.715034+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionpack-5.0.2/lib/action_dispatch/middleware/callbacks.rb:38:in `block in call'
2017-05-02T16:16:19.715034+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/activesupport-5.0.2/lib/active_support/callbacks.rb:97:in `__run_callbacks__'
2017-05-02T16:16:19.715035+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/activesupport-5.0.2/lib/active_support/callbacks.rb:750:in `_run_call_callbacks'
2017-05-02T16:16:19.715035+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/activesupport-5.0.2/lib/active_support/callbacks.rb:90:in `run_callbacks'
2017-05-02T16:16:19.715035+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionpack-5.0.2/lib/action_dispatch/middleware/callbacks.rb:36:in `call'
2017-05-02T16:16:19.715036+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionpack-5.0.2/lib/action_dispatch/middleware/remote_ip.rb:79:in `call'
2017-05-02T16:16:19.715036+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionpack-5.0.2/lib/action_dispatch/middleware/debug_exceptions.rb:49:in `call'
2017-05-02T16:16:19.715037+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionpack-5.0.2/lib/action_dispatch/middleware/show_exceptions.rb:31:in `call'
2017-05-02T16:16:19.715037+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/railties-5.0.2/lib/rails/rack/logger.rb:36:in `call_app'
2017-05-02T16:16:19.715037+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/railties-5.0.2/lib/rails/rack/logger.rb:24:in `block in call'
2017-05-02T16:16:19.715038+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/activesupport-5.0.2/lib/active_support/tagged_logging.rb:69:in `block in tagged'
2017-05-02T16:16:19.715038+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/activesupport-5.0.2/lib/active_support/tagged_logging.rb:26:in `tagged'
2017-05-02T16:16:19.715038+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/activesupport-5.0.2/lib/active_support/tagged_logging.rb:69:in `tagged'
2017-05-02T16:16:19.715039+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/railties-5.0.2/lib/rails/rack/logger.rb:24:in `call'
2017-05-02T16:16:19.715041+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/sprockets-rails-3.2.0/lib/sprockets/rails/quiet_assets.rb:13:in `call'
2017-05-02T16:16:19.715041+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionpack-5.0.2/lib/action_dispatch/middleware/request_id.rb:24:in `call'
2017-05-02T16:16:19.715041+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/rack-2.0.1/lib/rack/method_override.rb:22:in `call'
2017-05-02T16:16:19.715042+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/rack-2.0.1/lib/rack/runtime.rb:22:in `call'
2017-05-02T16:16:19.715042+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/rack-timeout-0.4.2/lib/rack/timeout/core.rb:122:in `block in call'
2017-05-02T16:16:19.715043+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/rack-timeout-0.4.2/lib/rack/timeout/support/timeout.rb:19:in `timeout'
2017-05-02T16:16:19.715043+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/rack-timeout-0.4.2/lib/rack/timeout/core.rb:121:in `call'
2017-05-02T16:16:19.715044+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/activesupport-5.0.2/lib/active_support/cache/strategy/local_cache_middleware.rb:28:in `call'
2017-05-02T16:16:19.715044+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionpack-5.0.2/lib/action_dispatch/middleware/executor.rb:12:in `call'
2017-05-02T16:16:19.715044+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/actionpack-5.0.2/lib/action_dispatch/middleware/static.rb:136:in `call'
2017-05-02T16:16:19.715045+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/rack-2.0.1/lib/rack/sendfile.rb:111:in `call'
2017-05-02T16:16:19.715045+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/railties-5.0.2/lib/rails/engine.rb:522:in `call'
2017-05-02T16:16:19.715046+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/puma-3.8.2/lib/puma/configuration.rb:224:in `call'
2017-05-02T16:16:19.715046+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/puma-3.8.2/lib/puma/server.rb:600:in `handle_request'
2017-05-02T16:16:19.715046+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/puma-3.8.2/lib/puma/server.rb:435:in `process_client'
2017-05-02T16:16:19.715047+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/puma-3.8.2/lib/puma/server.rb:299:in `block in run'
2017-05-02T16:16:19.715047+00:00 app[web.1]: [d52e58fe-2584-4e42-9373-b71caafc60f9] vendor/bundle/ruby/2.4.0/gems/puma-3.8.2/lib/puma/thread_pool.rb:120:in `block in spawn_thread'
2017-05-02T16:16:19.715319+00:00 app[web.1]: I, [2017-05-02T16:16:19.715253 #10]  INFO -- : source=rack-timeout id=d52e58fe-2584-4e42-9373-b71caafc60f9 wait=1ms timeout=10000ms service=12ms state=completed
2017-05-02T16:16:19.718044+00:00 heroku[router]: at=info method=POST path="/email_processor" host=fakehr-staging.herokuapp.com request_id=d52e58fe-2584-4e42-9373-b71caafc60f9 fwd="52.2.142.142" dyno=web.1 connect=0ms service=14ms status=5
00 bytes=1746 protocol=https
dgmstuart commented 7 years ago

Confirmed the issue: this fork works: https://github.com/dxw/griddler/commit/f7dfd23b7b16902b761746841888bd031a748d1a

Wish I had time to create a tested PR but we're just hacking together a quick proof of concept. If we end up doing this for real then I'll definitely make a PR.

panozzaj commented 6 years ago

Is this still an issue? I have not had issues with a newish Rails 5 + Griddler app. I'm using the following dependencies:

griddler (1.4.0)
griddler-mailgun (1.0.3)
rails (5.1.4)

Have been able to successfully receive emails from Mailgun to my app in production (Heroku).

If this gem is compatible with Rails 5, we might close this to avoid future confusion. Although I looked at the source and https://github.com/dxw/griddler/commit/f7dfd23b7b16902b761746841888bd031a748d1a or something like it was not merged, so I'm not sure that it's actually fixed. Maybe I am somehow avoiding it or it would happen in the future...

Thanks!

dgmstuart commented 6 years ago

Hi @panozzaj - I'm afraid I don't know: we only used this on a prototype that one time. I agree, looking at the code I'd expect this to still be failing.

panozzaj commented 6 years ago

No worries, thanks for your comment in the past with a fix! Just figured I'd give a field report to update on what I was seeing.

wingrunr21 commented 6 years ago

I don't have a Rails 5 deployment of Griddler to test against so if someone wants to make a PR....

gokulj commented 5 years ago

Seeing this on Rails 5.2.2 with griddler 1.5.2 and griddler-cloudmailin (1.1.0)

dmsinteractive commented 5 years ago

Also seeing this error on Rails 5.1.6 with the same griddler 1.5.2 and griddler-cloudmailin 1.1.0. Seems like the patch above is simple, so it's disappointing this hasn't been fixed all this time later.

davissp14 commented 4 years ago

Rails 5.2.4.3 with griddler-sendgrid is working fine.

wingrunr21 commented 4 years ago

@joemsak I believe Thoughtbot took the stance here that Rails 6 won't be supported due to ActionMailbox being a thing

joemsak commented 4 years ago

@wingrunr21 oh shoot okay, I didn't realize that! thank you! - oh my, I forgot Rails 6 added this feature!

wingrunr21 commented 4 years ago

I’m happy to merge a PR or something but the functionality is duplicative