-
-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
Hey Samuel,
I was hoping to add this into my development environment but it seems that is it not compatible when used with Sinatra::Extension.
8.25s error: Async::Container::Forked::Child [ec=0x7c0] [pid=13231] [2025-10-28 09:50:04 -0600]
| stack level too deep
| SystemStackError: stack level too deep
| → /Users/travisbell/.rbenv/versions/3.4.5/lib/ruby/gems/3.4.0/gems/sinatra-contrib-4.2.1/lib/sinatra/extension.rb:92 in 'Sinatra::Extension::DontCall#method_missing'
| /Users/travisbell/.rbenv/versions/3.4.5/lib/ruby/gems/3.4.0/gems/sinatra-contrib-4.2.1/lib/sinatra/extension.rb:92 in 'Sinatra::Extension::DontCall#method_missing'
| /Users/travisbell/.rbenv/versions/3.4.5/lib/ruby/gems/3.4.0/gems/sinatra-contrib-4.2.1/lib/sinatra/extension.rb:92 in 'Sinatra::Extension::DontCall#method_missing'
| /Users/travisbell/.rbenv/versions/3.4.5/lib/ruby/gems/3.4.0/gems/sinatra-contrib-4.2.1/lib/sinatra/extension.rb:92 in 'Sinatra::Extension::DontCall#method_missing'
| /Users/travisbell/.rbenv/versions/3.4.5/lib/ruby/gems/3.4.0/gems/sinatra-contrib-4.2.1/lib/sinatra/extension.rb:92 in 'Sinatra::Extension::DontCall#method_missing'
....many more....
| /Users/travisbell/.rbenv/versions/3.4.5/lib/ruby/gems/3.4.0/gems/async-safe-0.4.1/lib/async/safe/monitor.rb:155 in 'Async::Safe::Monitor#check_access'
| /Users/travisbell/.rbenv/versions/3.4.5/lib/ruby/gems/3.4.0/gems/sinatra-contrib-4.2.1/lib/sinatra/extension.rb:91 in 'Sinatra::Extension::DontCall#initialize'
| /Users/travisbell/.rbenv/versions/3.4.5/lib/ruby/gems/3.4.0/gems/sinatra-contrib-4.2.1/lib/sinatra/extension.rb:87 in 'Class#new'
| /Users/travisbell/.rbenv/versions/3.4.5/lib/ruby/gems/3.4.0/gems/sinatra-contrib-4.2.1/lib/sinatra/extension.rb:87 in 'Sinatra::Extension#method_missing'
| lib/controllers/test.rb:9 in '<module:Test>'
| lib/controllers/test.rb:6 in '<module:Controllers>'
| lib/controllers/test.rb:5 in '<top (required)>'
| /Users/travisbell/.rbenv/versions/3.4.5/lib/ruby/3.4.0/bundled_gems.rb:82 in 'Kernel.require'
| /Users/travisbell/.rbenv/versions/3.4.5/lib/ruby/3.4.0/bundled_gems.rb:82 in 'block (2 levels) in Kernel#replace_require'
| /Users/travisbell/.rbenv/versions/3.4.5/lib/ruby/gems/3.4.0/gems/zeitwerk-2.7.3/lib/zeitwerk/core_ext/kernel.rb:26 in 'Kernel#require'
| app.rb:29 in '<class:App>'
| app.rb:3 in '<top (required)>'
| /Users/travisbell/.rbenv/versions/3.4.5/lib/ruby/3.4.0/bundled_gems.rb:82 in 'Kernel.require'
| /Users/travisbell/.rbenv/versions/3.4.5/lib/ruby/3.4.0/bundled_gems.rb:82 in 'block (2 levels) in Kernel#replace_require'
| /Users/travisbell/.rbenv/versions/3.4.5/lib/ruby/gems/3.4.0/gems/zeitwerk-2.7.3/lib/zeitwerk/core_ext/kernel.rb:26 in 'Kernel#require'
| config.ru:10 in 'block (3 levels) in <top (required)>'
| lib/middleware/request_logger.rb:17 in 'Middleware::RequestLogger#call'
| /Users/travisbell/.rbenv/versions/3.4.5/lib/ruby/gems/3.4.0/gems/protocol-rack-0.16.0/lib/protocol/rack/adapter/generic.rb:146 in 'Protocol::Rack::Adapter::Generic#call'
| /Users/travisbell/.rbenv/versions/3.4.5/lib/ruby/gems/3.4.0/gems/protocol-http-0.55.0/lib/protocol/http/middleware.rb:53 in 'Protocol::HTTP::Middleware#call'
| /Users/travisbell/.rbenv/versions/3.4.5/lib/ruby/gems/3.4.0/gems/protocol-http-0.55.0/lib/protocol/http/content_encoding.rb:40 in 'Protocol::HTTP::ContentEncoding#call'
| /Users/travisbell/.rbenv/versions/3.4.5/lib/ruby/gems/3.4.0/gems/protocol-http-0.55.0/lib/protocol/http/middleware.rb:53 in 'Protocol::HTTP::Middleware#call'
| /Users/travisbell/.rbenv/versions/3.4.5/lib/ruby/gems/3.4.0/gems/falcon-0.52.4/lib/falcon/server.rb:66 in 'Falcon::Server#call'
| /Users/travisbell/.rbenv/versions/3.4.5/lib/ruby/gems/3.4.0/gems/async-http-0.92.1/lib/async/http/server.rb:57 in 'block in Async::HTTP::Server#accept'
| /Users/travisbell/.rbenv/versions/3.4.5/lib/ruby/gems/3.4.0/gems/async-http-0.92.1/lib/async/http/protocol/http1/server.rb:72 in 'Async::HTTP::Protocol::HTTP1::Server#each'
| /Users/travisbell/.rbenv/versions/3.4.5/lib/ruby/gems/3.4.0/gems/async-http-0.92.1/lib/async/http/server.rb:49 in 'Async::HTTP::Server#accept'
| /Users/travisbell/.rbenv/versions/3.4.5/lib/ruby/gems/3.4.0/gems/falcon-0.52.4/lib/falcon/server.rb:57 in 'Falcon::Server#accept'
| /Users/travisbell/.rbenv/versions/3.4.5/lib/ruby/gems/3.4.0/gems/io-endpoint-0.15.2/lib/io/endpoint/wrapper.rb:216 in 'block (2 levels) in IO::Endpoint::Wrapper#accept'
| /Users/travisbell/.rbenv/versions/3.4.5/lib/ruby/gems/3.4.0/gems/async-2.34.0/lib/async/task.rb:207 in 'block in Async::Task#run'
| /Users/travisbell/.rbenv/versions/3.4.5/lib/ruby/gems/3.4.0/gems/async-2.34.0/lib/async/task.rb:452 in 'block in Async::Task#schedule'I'm trying to enable it here, as an example, with Async::Safe.enable!. You can clone this repo down and run it, to see it first hand.
If you comment out those lines, start the app and then go to http://localhost:8080/ you'll see it crash.
Metadata
Metadata
Assignees
Labels
No labels