undefined method `body' for nil
Backtrace
app/models/analyzer.rb:160:in `block in visit_class_node'
app/models/analyzer.rb:72:in `with'
app/models/analyzer.rb:130:in `visit_class_node'
app/models/analyzer.rb:360:in `analyze_code'
app/models/analyzer.rb:365:in `analyze'
app/models/gem_info.rb:25:in `block in analyze'
app/models/gem_info.rb:22:in `each'
app/models/gem_info.rb:22:in `analyze'
app/models/gem_info.rb:14:in `initialize'
app/models/gem_spec.rb:295:in `new'
app/models/gem_spec.rb:295:in `info'
app/models/gem_spec.rb:78:in `modules'
app/models/gem_spec.rb:123:in `top_level_modules'
app/views/gems/show.html.erb:3:in `_app_views_gems_show_html_erb__1351932010513837674_755940'
vendor/ruby-3.3.0/lib/ruby/3.3.0/benchmark.rb:313:in `realtime'
/app/app/models/analyzer.rb:160:in `block in visit_class_node'
/app/app/models/analyzer.rb:72:in `with'
/app/app/models/analyzer.rb:130:in `visit_class_node'
/app/vendor/bundle/ruby/3.3.0/gems/prism-0.22.0/lib/prism/node.rb:3401:in `accept'
/app/vendor/bundle/ruby/3.3.0/gems/prism-0.22.0/lib/prism/visitor.rb:27:in `block in visit_child_nodes'
/app/vendor/bundle/ruby/3.3.0/gems/prism-0.22.0/lib/prism/visitor.rb:27:in `each'
/app/vendor/bundle/ruby/3.3.0/gems/prism-0.22.0/lib/prism/visitor.rb:27:in `visit_child_nodes'
/app/vendor/bundle/ruby/3.3.0/gems/prism-0.22.0/lib/prism/node.rb:16223:in `accept'
/app/vendor/bundle/ruby/3.3.0/gems/prism-0.22.0/lib/prism/visitor.rb:27:in `block in visit_child_nodes'
/app/vendor/bundle/ruby/3.3.0/gems/prism-0.22.0/lib/prism/visitor.rb:27:in `each'
/app/vendor/bundle/ruby/3.3.0/gems/prism-0.22.0/lib/prism/visitor.rb:27:in `visit_child_nodes'
/app/vendor/bundle/ruby/3.3.0/gems/prism-0.22.0/lib/prism/node.rb:14281:in `accept'
/app/app/models/analyzer.rb:360:in `analyze_code'
/app/app/models/analyzer.rb:365:in `analyze'
/app/app/models/gem_info.rb:25:in `block in analyze'
/app/app/models/gem_info.rb:22:in `each'
/app/app/models/gem_info.rb:22:in `analyze'
/app/app/models/gem_info.rb:14:in `initialize'
/app/app/models/gem_spec.rb:295:in `new'
/app/app/models/gem_spec.rb:295:in `info'
/app/app/models/gem_spec.rb:78:in `modules'
/app/app/models/gem_spec.rb:123:in `top_level_modules'
/app/app/views/gems/show.html.erb:3:in `_app_views_gems_show_html_erb__1351932010513837674_755940'
/app/vendor/bundle/ruby/3.3.0/gems/actionview-7.1.3.4/lib/action_view/base.rb:264:in `public_send'
/app/vendor/bundle/ruby/3.3.0/gems/actionview-7.1.3.4/lib/action_view/base.rb:264:in `_run'
/app/vendor/bundle/ruby/3.3.0/gems/actionview-7.1.3.4/lib/action_view/template.rb:261:in `block in render'
/app/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.3.4/lib/active_support/notifications.rb:208:in `instrument'
/app/vendor/bundle/ruby/3.3.0/gems/actionview-7.1.3.4/lib/action_view/template.rb:549:in `instrument_render_template'
/app/vendor/bundle/ruby/3.3.0/gems/actionview-7.1.3.4/lib/action_view/template.rb:249:in `render'
/app/vendor/bundle/ruby/3.3.0/gems/actionview-7.1.3.4/lib/action_view/renderer/template_renderer.rb:66:in `block (2 levels) in render_template'
/app/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.3.4/lib/active_support/notifications.rb:206:in `block in instrument'
/app/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.3.4/lib/active_support/notifications/instrumenter.rb:58:in `instrument'
/app/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.3.4/lib/active_support/notifications.rb:206:in `instrument'
/app/vendor/bundle/ruby/3.3.0/gems/actionview-7.1.3.4/lib/action_view/renderer/template_renderer.rb:60:in `block in render_template'
/app/vendor/bundle/ruby/3.3.0/gems/actionview-7.1.3.4/lib/action_view/renderer/template_renderer.rb:76:in `block in render_with_layout'
/app/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.3.4/lib/active_support/notifications.rb:206:in `block in instrument'
/app/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.3.4/lib/active_support/notifications/instrumenter.rb:58:in `instrument'
/app/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.3.4/lib/active_support/notifications.rb:206:in `instrument'
/app/vendor/bundle/ruby/3.3.0/gems/actionview-7.1.3.4/lib/action_view/renderer/template_renderer.rb:75:in `render_with_layout'
/app/vendor/bundle/ruby/3.3.0/gems/actionview-7.1.3.4/lib/action_view/renderer/template_renderer.rb:59:in `render_template'
/app/vendor/bundle/ruby/3.3.0/gems/actionview-7.1.3.4/lib/action_view/renderer/template_renderer.rb:11:in `render'
/app/vendor/bundle/ruby/3.3.0/gems/actionview-7.1.3.4/lib/action_view/renderer/renderer.rb:63:in `render_template_to_object'
/app/vendor/bundle/ruby/3.3.0/gems/actionview-7.1.3.4/lib/action_view/renderer/renderer.rb:31:in `render_to_object'
/app/vendor/bundle/ruby/3.3.0/gems/actionview-7.1.3.4/lib/action_view/rendering.rb:135:in `block in _render_template'
/app/vendor/bundle/ruby/3.3.0/gems/actionview-7.1.3.4/lib/action_view/base.rb:291:in `in_rendering_context'
/app/vendor/bundle/ruby/3.3.0/gems/actionview-7.1.3.4/lib/action_view/rendering.rb:134:in `_render_template'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_controller/metal/streaming.rb:256:in `_render_template'
/app/vendor/bundle/ruby/3.3.0/gems/actionview-7.1.3.4/lib/action_view/rendering.rb:121:in `render_to_body'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_controller/metal/rendering.rb:158:in `render_to_body'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_controller/metal/renderers.rb:141:in `render_to_body'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/abstract_controller/rendering.rb:27:in `render'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_controller/metal/rendering.rb:139:in `render'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_controller/metal/instrumentation.rb:29:in `block (2 levels) in render'
/app/vendor/ruby-3.3.0/lib/ruby/3.3.0/benchmark.rb:313:in `realtime'
/app/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.3.4/lib/active_support/core_ext/benchmark.rb:14:in `ms'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_controller/metal/instrumentation.rb:29:in `block in render'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_controller/metal/instrumentation.rb:98:in `cleanup_view_runtime'
/app/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.3.4/lib/active_record/railties/controller_runtime.rb:39:in `cleanup_view_runtime'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_controller/metal/instrumentation.rb:28:in `render'
/app/vendor/bundle/ruby/3.3.0/gems/meta-tags-2.22.0/lib/meta_tags/controller_helper.rb:22:in `render'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_controller/metal/implicit_render.rb:37:in `default_render'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_controller/metal/basic_implicit_render.rb:7:in `send_action'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/abstract_controller/base.rb:224:in `process_action'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_controller/metal/rendering.rb:165:in `process_action'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/abstract_controller/callbacks.rb:259:in `block in process_action'
/app/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.3.4/lib/active_support/callbacks.rb:121:in `block in run_callbacks'
/app/vendor/bundle/ruby/3.3.0/gems/turbo-rails-2.0.6/lib/turbo-rails.rb:24:in `with_request_id'
/app/vendor/bundle/ruby/3.3.0/gems/turbo-rails-2.0.6/app/controllers/concerns/turbo/request_id_tracking.rb:10:in `turbo_tracking_request_id'
/app/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.3.4/lib/active_support/callbacks.rb:130:in `block in run_callbacks'
/app/vendor/bundle/ruby/3.3.0/gems/actiontext-7.1.3.4/lib/action_text/rendering.rb:23:in `with_renderer'
/app/vendor/bundle/ruby/3.3.0/gems/actiontext-7.1.3.4/lib/action_text/engine.rb:69:in `block (4 levels) in <class:Engine>'
/app/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.3.4/lib/active_support/callbacks.rb:130:in `instance_exec'
/app/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.3.4/lib/active_support/callbacks.rb:130:in `block in run_callbacks'
/app/vendor/bundle/ruby/3.3.0/gems/rorvswild-1.8.0/lib/rorvswild/plugin/action_controller.rb:29:in `around_action'
/app/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.3.4/lib/active_support/callbacks.rb:130:in `instance_exec'
/app/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.3.4/lib/active_support/callbacks.rb:130:in `block in run_callbacks'
/app/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.3.4/lib/active_support/callbacks.rb:141:in `run_callbacks'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/abstract_controller/callbacks.rb:258:in `process_action'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_controller/metal/rescue.rb:25:in `process_action'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_controller/metal/instrumentation.rb:74:in `block in process_action'
/app/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.3.4/lib/active_support/notifications.rb:206:in `block in instrument'
/app/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.3.4/lib/active_support/notifications/instrumenter.rb:58:in `instrument'
/app/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.3.4/lib/active_support/notifications.rb:206:in `instrument'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_controller/metal/instrumentation.rb:73:in `process_action'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_controller/metal/params_wrapper.rb:261:in `process_action'
/app/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.3.4/lib/active_record/railties/controller_runtime.rb:32:in `process_action'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/abstract_controller/base.rb:160:in `process'
/app/vendor/bundle/ruby/3.3.0/gems/actionview-7.1.3.4/lib/action_view/rendering.rb:40:in `process'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_controller/metal.rb:227:in `dispatch'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_controller/metal.rb:309:in `dispatch'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_dispatch/routing/route_set.rb:49:in `dispatch'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_dispatch/routing/route_set.rb:32:in `serve'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_dispatch/journey/router.rb:51:in `block in serve'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_dispatch/journey/router.rb:131:in `block in find_routes'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_dispatch/journey/router.rb:124:in `each'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_dispatch/journey/router.rb:124:in `find_routes'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_dispatch/journey/router.rb:32:in `serve'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_dispatch/routing/route_set.rb:882:in `call'
/app/vendor/bundle/ruby/3.3.0/gems/type_fusion-0.0.6/lib/type_fusion/rack/middleware.rb:17:in `call'
/app/vendor/bundle/ruby/3.3.0/gems/rack-3.1.7/lib/rack/tempfile_reaper.rb:20:in `call'
/app/vendor/bundle/ruby/3.3.0/gems/rack-3.1.7/lib/rack/etag.rb:29:in `call'
/app/vendor/bundle/ruby/3.3.0/gems/rack-3.1.7/lib/rack/conditional_get.rb:31:in `call'
/app/vendor/bundle/ruby/3.3.0/gems/rack-3.1.7/lib/rack/head.rb:15:in `call'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_dispatch/http/permissions_policy.rb:36:in `call'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_dispatch/http/content_security_policy.rb:33:in `call'
/app/vendor/bundle/ruby/3.3.0/gems/rack-session-2.0.0/lib/rack/session/abstract/id.rb:272:in `context'
/app/vendor/bundle/ruby/3.3.0/gems/rack-session-2.0.0/lib/rack/session/abstract/id.rb:266:in `call'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_dispatch/middleware/cookies.rb:689:in `call'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_dispatch/middleware/callbacks.rb:29:in `block in call'
/app/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.3.4/lib/active_support/callbacks.rb:101:in `run_callbacks'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_dispatch/middleware/callbacks.rb:28:in `call'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_dispatch/middleware/debug_exceptions.rb:29:in `call'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_dispatch/middleware/show_exceptions.rb:31:in `call'
/app/vendor/bundle/ruby/3.3.0/gems/railties-7.1.3.4/lib/rails/rack/logger.rb:37:in `call_app'
/app/vendor/bundle/ruby/3.3.0/gems/railties-7.1.3.4/lib/rails/rack/logger.rb:24:in `block in call'
/app/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.3.4/lib/active_support/tagged_logging.rb:135:in `block in tagged'
/app/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.3.4/lib/active_support/tagged_logging.rb:39:in `tagged'
/app/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.3.4/lib/active_support/tagged_logging.rb:135:in `tagged'
/app/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.3.4/lib/active_support/broadcast_logger.rb:240:in `method_missing'
/app/vendor/bundle/ruby/3.3.0/gems/railties-7.1.3.4/lib/rails/rack/logger.rb:24:in `call'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_dispatch/middleware/remote_ip.rb:92:in `call'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_dispatch/middleware/request_id.rb:28:in `call'
/app/vendor/bundle/ruby/3.3.0/gems/rack-3.1.7/lib/rack/method_override.rb:28:in `call'
/app/vendor/bundle/ruby/3.3.0/gems/rack-3.1.7/lib/rack/runtime.rb:24:in `call'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_dispatch/middleware/executor.rb:14:in `call'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_dispatch/middleware/static.rb:25:in `call'
/app/vendor/bundle/ruby/3.3.0/gems/rack-3.1.7/lib/rack/sendfile.rb:114:in `call'
/app/vendor/bundle/ruby/3.3.0/gems/actionpack-7.1.3.4/lib/action_dispatch/middleware/ssl.rb:79:in `call'
/app/vendor/bundle/ruby/3.3.0/gems/rorvswild-1.8.0/lib/rorvswild/plugin/middleware.rb:22:in `call'
/app/vendor/bundle/ruby/3.3.0/gems/railties-7.1.3.4/lib/rails/engine.rb:536:in `call'
/app/vendor/bundle/ruby/3.3.0/gems/puma-6.4.2/lib/puma/configuration.rb:272:in `call'
/app/vendor/bundle/ruby/3.3.0/gems/puma-6.4.2/lib/puma/request.rb:100:in `block in handle_request'
/app/vendor/bundle/ruby/3.3.0/gems/puma-6.4.2/lib/puma/thread_pool.rb:378:in `with_force_shutdown'
/app/vendor/bundle/ruby/3.3.0/gems/puma-6.4.2/lib/puma/request.rb:99:in `handle_request'
/app/vendor/bundle/ruby/3.3.0/gems/puma-6.4.2/lib/puma/server.rb:464:in `process_client'
/app/vendor/bundle/ruby/3.3.0/gems/puma-6.4.2/lib/puma/server.rb:245:in `block in run'
/app/vendor/bundle/ruby/3.3.0/gems/puma-6.4.2/lib/puma/thread_pool.rb:155:in `block in spawn_thread'
Parameters
{
"gem": "bivouac",
"action": "show",
"version": "0.2.4",
"controller": "gems"
}
Headers
| Via |
1.1 heroku-router |
| Host |
gem.sh |
| Accept |
*/* |
| Server |
Heroku |
| Referer |
https://gem.sh/ |
| Version |
HTTP/1.1 |
| User-Agent |
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36 |
| X-Request-Id |
64a3374c-7b8f-435a-e5de-b57c69084d0c |
| Accept-Encoding |
gzip, deflate, br |
| X-Forwarded-For |
47.82.11.2 |
| X-Request-Start |
1776197079484 |
| X-Forwarded-Port |
443 |
| X-Forwarded-Proto |
https |
Environment
| os |
Linux 5.15.0-1103-aws
|
| cwd |
/app
|
| pid |
15
|
| host |
web.1
|
| ruby |
ruby 3.3.0 (2023-12-25 revision 5124f9ac75) [x86_64-linux]
|
| rails |
7.1.3.4
|
Server
|
Load |
CPU |
RAM |
Swap |
Disk |
|
web.1
|
Load avg
26%
|
CPU
20%
|
RAM
39%
|
Swap
1%
|
Disk
100%
|