You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
After running bundle update in my Rails app that's using Falcon, my development app no longer serves requests, and instead returns a page that says the following:
NoMethodError: undefined method `ip_address' for an instance of Socket
It also logs the following:
12:56:46 web.1 | {"time":"2025-01-12T12:56:46-08:00","severity":"error","oid":14840,"pid":106581,"subject":"Protocol::Rack::Adapter::Rack31","annotation":"Reading HTTP/1.1 requests for Async::HTTP::Protocol::HTTP1::Server.","event":{"type":"failure","root":"/home/matchu/Fun/impress","class":"NoMethodError","message":"\u001b[1mundefined method `ip_address' for an instance of Socket (\u001b[1;4mNoMethodError\u001b[m\u001b[1m)\u001b[m\n\n\u001b[1m\t\t\t\t\t\tenv[CGI::REMOTE_ADDR] = peer.ip_address\u001b[m\n\u001b[1m\t\t\t\t\t\t ^^^^^^^^^^^\u001b[m","backtrace":["/home/matchu/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/protocol-rack-0.11.1/lib/protocol/rack/adapter/generic.rb:107:in `unwrap_request'","/home/matchu/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/protocol-rack-0.11.1/lib/protocol/rack/adapter/rack31.rb:60:in `make_environment'","/home/matchu/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/protocol-rack-0.11.1/lib/protocol/rack/adapter/generic.rb:121:in `call'","/home/matchu/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/protocol-http-0.43.0/lib/protocol/http/middleware.rb:43:in `call'","/home/matchu/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/async-http-0.75.0/lib/async/http/server.rb:61:in `block in accept'","/home/matchu/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/async-http-0.75.0/lib/async/http/protocol/http1/server.rb:49:in `each'","/home/matchu/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/async-http-0.75.0/lib/async/http/server.rb:50:in `accept'","/home/matchu/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/io-endpoint-0.13.1/lib/io/endpoint/wrapper.rb:182:in `block (2 levels) in accept'","/home/matchu/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/async-2.17.0/lib/async/task.rb:197:in `block in run'","/home/matchu/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/async-2.17.0/lib/async/task.rb:422:in `block in schedule'"]}}
I think this is a bug in protocol-rack in particular, because that's where the traceback points, and upgrading everything butprotocol-rack does not produce this error.
To work around this, I've held my app back from version 0.11.0 of protocol-rack, by adding this to my Gemfile:
gem 'protocol-rack', '~> 0.10.0', '< 0.11.0'
I hope this helps, thank you for your work!
Here's my full Gemfile.lock (after bundle update, but before the workaround):
After running
bundle update
in my Rails app that's using Falcon, my development app no longer serves requests, and instead returns a page that says the following:It also logs the following:
I think this is a bug in
protocol-rack
in particular, because that's where the traceback points, and upgrading everything butprotocol-rack
does not produce this error.To work around this, I've held my app back from version
0.11.0
ofprotocol-rack
, by adding this to my Gemfile:I hope this helps, thank you for your work!
Here's my full
Gemfile.lock
(afterbundle update
, but before the workaround):The text was updated successfully, but these errors were encountered: