Skip to content

Circular dependency issue #196

@lindevloeberghs

Description

@lindevloeberghs

I added a Formtastic form, and after a difficult installation of Rich with version issues etc. added ':as => :rich' to one field of the form. When loading the form the first time, I get a LoadError "Unable to autoload constant RichInput, expected /Users/.../.rvm/gems/ruby-2.0.0-p598/gems/rich-1.4.6/app/inputs/rich_input.rb to define it", when reloading the page I get a RunTimeError "Circular dependency detected while autoloading constant RichInput".
I researched the issue and it seems to be an autoloading issue with Rails 4 & Ruby 2 which was encountered by many gems. Many report having solved it by removing 'unloadable' from models and controllers. I am new to Rails and don't know how I can solve this issue in my app. Any help would be much appreciated! Thanks!

_ PS. This is my trace:

RuntimeError - Circular dependency detected while autoloading constant RichInput:
activesupport (4.0.2) lib/active_support/dependencies.rb:461:in load_missing_constant' activesupport (4.0.2) lib/active_support/dependencies.rb:184:inconst_missing'
formtastic (3.1.3) lib/formtastic/namespaced_class_finder.rb:93:in block in find_by_trying' formtastic (3.1.3) lib/formtastic/namespaced_class_finder.rb:91:infind_by_trying'
formtastic (3.1.3) lib/formtastic/namespaced_class_finder.rb:75:in finder' formtastic (3.1.3) lib/formtastic/namespaced_class_finder.rb:55:inresolve'
formtastic (3.1.3) lib/formtastic/namespaced_class_finder.rb:49:in find' formtastic (3.1.3) lib/formtastic/helpers/input_helper.rb:330:innamespaced_input_class'
formtastic (3.1.3) lib/formtastic/helpers/input_helper.rb:338:in input_class' formtastic (3.1.3) lib/formtastic/helpers/input_helper.rb:238:ininput'
app/views/shared/editor/_shared_editor_2.html.erb:25:in block in _app_views_shared_editor__shared_editor___html_erb___1719591169495697512_70354341425960' actionpack (4.0.2) lib/action_view/helpers/capture_helper.rb:38:inblock in capture'
actionpack (4.0.2) lib/action_view/helpers/capture_helper.rb:200:in with_output_buffer' actionpack (4.0.2) lib/action_view/helpers/capture_helper.rb:38:incapture'
formtastic (3.1.3) lib/formtastic/helpers/fieldset_wrapper.rb:32:in field_set_and_list_wrapping' formtastic (3.1.3) lib/formtastic/helpers/inputs_helper.rb:297:ininputs'
app/views/shared/editor/_shared_editor_2.html.erb:4:in _app_views_shared_editor__shared_editor___html_erb___1719591169495697512_70354341425960' actionpack (4.0.2) lib/action_view/template.rb:143:inblock in render'
activesupport (4.0.2) lib/active_support/notifications.rb:159:in block in instrument' activesupport (4.0.2) lib/active_support/notifications/instrumenter.rb:20:ininstrument'
activesupport (4.0.2) lib/active_support/notifications.rb:159:in instrument' actionpack (4.0.2) lib/action_view/template.rb:141:inrender'
actionpack (4.0.2) lib/action_view/renderer/partial_renderer.rb:306:in render_partial' actionpack (4.0.2) lib/action_view/renderer/partial_renderer.rb:279:inblock in render'
actionpack (4.0.2) lib/action_view/renderer/abstract_renderer.rb:38:in block in instrument' activesupport (4.0.2) lib/active_support/notifications.rb:159:inblock in instrument'
activesupport (4.0.2) lib/active_support/notifications/instrumenter.rb:20:in instrument' activesupport (4.0.2) lib/active_support/notifications.rb:159:ininstrument'
actionpack (4.0.2) lib/action_view/renderer/abstract_renderer.rb:38:in instrument' actionpack (4.0.2) lib/action_view/renderer/partial_renderer.rb:278:inrender'
actionpack (4.0.2) lib/action_view/renderer/renderer.rb:47:in render_partial' actionpack (4.0.2) lib/action_view/helpers/rendering_helper.rb:27:inrender'
app/views/shared/editor/_post_editor_2.html.erb:14:in block in _app_views_shared_editor__post_editor___html_erb___2695801043815433226_70354346672200' actionpack (4.0.2) lib/action_view/helpers/capture_helper.rb:38:inblock in capture'
actionpack (4.0.2) lib/action_view/helpers/capture_helper.rb:200:in with_output_buffer' actionpack (4.0.2) lib/action_view/helpers/capture_helper.rb:38:incapture'
actionpack (4.0.2) lib/action_view/helpers/form_helper.rb:435:in form_for' formtastic (3.1.3) lib/formtastic/helpers/form_helper.rb:174:inblock in semantic_form_for'
formtastic (3.1.3) lib/formtastic/helpers/form_helper.rb:197:in with_custom_field_error_proc' formtastic (3.1.3) lib/formtastic/helpers/form_helper.rb:173:insemantic_form_for'
app/views/shared/editor/_post_editor_2.html.erb:7:in _app_views_shared_editor__post_editor___html_erb___2695801043815433226_70354346672200' actionpack (4.0.2) lib/action_view/template.rb:143:inblock in render'
activesupport (4.0.2) lib/active_support/notifications.rb:159:in block in instrument' activesupport (4.0.2) lib/active_support/notifications/instrumenter.rb:20:ininstrument'
activesupport (4.0.2) lib/active_support/notifications.rb:159:in instrument' actionpack (4.0.2) lib/action_view/template.rb:141:inrender'
actionpack (4.0.2) lib/action_view/renderer/partial_renderer.rb:306:in render_partial' actionpack (4.0.2) lib/action_view/renderer/partial_renderer.rb:279:inblock in render'
actionpack (4.0.2) lib/action_view/renderer/abstract_renderer.rb:38:in block in instrument' activesupport (4.0.2) lib/active_support/notifications.rb:159:inblock in instrument'
activesupport (4.0.2) lib/active_support/notifications/instrumenter.rb:20:in instrument' activesupport (4.0.2) lib/active_support/notifications.rb:159:ininstrument'
actionpack (4.0.2) lib/action_view/renderer/abstract_renderer.rb:38:in instrument' actionpack (4.0.2) lib/action_view/renderer/partial_renderer.rb:278:inrender'
actionpack (4.0.2) lib/action_view/renderer/renderer.rb:47:in render_partial' actionpack (4.0.2) lib/action_view/helpers/rendering_helper.rb:27:inrender'
app/views/community/author/posts/edit.html.erb:9:in _app_views_community_author_posts_edit_html_erb__425930888278284860_70354346049560' actionpack (4.0.2) lib/action_view/template.rb:143:inblock in render'
activesupport (4.0.2) lib/active_support/notifications.rb:159:in block in instrument' activesupport (4.0.2) lib/active_support/notifications/instrumenter.rb:20:ininstrument'
activesupport (4.0.2) lib/active_support/notifications.rb:159:in instrument' actionpack (4.0.2) lib/action_view/template.rb:141:inrender'
actionpack (4.0.2) lib/action_view/renderer/template_renderer.rb:49:in block (2 levels) in render_template' actionpack (4.0.2) lib/action_view/renderer/abstract_renderer.rb:38:inblock in instrument'
activesupport (4.0.2) lib/active_support/notifications.rb:159:in block in instrument' activesupport (4.0.2) lib/active_support/notifications/instrumenter.rb:20:ininstrument'
activesupport (4.0.2) lib/active_support/notifications.rb:159:in instrument' actionpack (4.0.2) lib/action_view/renderer/abstract_renderer.rb:38:ininstrument'
actionpack (4.0.2) lib/action_view/renderer/template_renderer.rb:48:in block in render_template' actionpack (4.0.2) lib/action_view/renderer/template_renderer.rb:56:inrender_with_layout'
actionpack (4.0.2) lib/action_view/renderer/template_renderer.rb:47:in render_template' actionpack (4.0.2) lib/action_view/renderer/template_renderer.rb:17:inrender'
actionpack (4.0.2) lib/action_view/renderer/renderer.rb:42:in render_template' actionpack (4.0.2) lib/action_view/renderer/renderer.rb:23:inrender'
actionpack (4.0.2) lib/abstract_controller/rendering.rb:127:in _render_template' actionpack (4.0.2) lib/action_controller/metal/streaming.rb:219:inrender_template'
actionpack (4.0.2) lib/abstract_controller/rendering.rb:120:in render_to_body' actionpack (4.0.2) lib/action_controller/metal/rendering.rb:33:inrender_to_body'
actionpack (4.0.2) lib/action_controller/metal/renderers.rb:26:in render_to_body' actionpack (4.0.2) lib/abstract_controller/rendering.rb:97:inrender'
actionpack (4.0.2) lib/action_controller/metal/rendering.rb:16:in render' actionpack (4.0.2) lib/action_controller/metal/instrumentation.rb:41:inblock (2 levels) in render'
activesupport (4.0.2) lib/active_support/core_ext/benchmark.rb:12:in block in ms' /Users/nicolevandeneynde/.rvm/rubies/ruby-2.0.0-p598/lib/ruby/2.0.0/benchmark.rb:296:inrealtime'
activesupport (4.0.2) lib/active_support/core_ext/benchmark.rb:12:in ms' actionpack (4.0.2) lib/action_controller/metal/instrumentation.rb:41:inblock in render'
actionpack (4.0.2) lib/action_controller/metal/instrumentation.rb:84:in cleanup_view_runtime' activerecord (4.0.2) lib/active_record/railties/controller_runtime.rb:25:incleanup_view_runtime'
actionpack (4.0.2) lib/action_controller/metal/instrumentation.rb:40:in render' actionpack (4.0.2) lib/action_controller/metal/implicit_render.rb:10:indefault_render'
actionpack (4.0.2) lib/action_controller/metal/implicit_render.rb:5:in send_action' actionpack (4.0.2) lib/abstract_controller/base.rb:189:inprocess_action'
actionpack (4.0.2) lib/action_controller/metal/rendering.rb:10:in process_action' actionpack (4.0.2) lib/abstract_controller/callbacks.rb:18:inblock in process_action'
activesupport (4.0.2) lib/active_support/callbacks.rb:433:in _run__1274145001659742792__process_action__callbacks' activesupport (4.0.2) lib/active_support/callbacks.rb:80:inrun_callbacks'
actionpack (4.0.2) lib/abstract_controller/callbacks.rb:17:in process_action' actionpack (4.0.2) lib/action_controller/metal/rescue.rb:29:inprocess_action'
actionpack (4.0.2) lib/action_controller/metal/instrumentation.rb:31:in block in process_action' activesupport (4.0.2) lib/active_support/notifications.rb:159:inblock in instrument'
activesupport (4.0.2) lib/active_support/notifications/instrumenter.rb:20:in instrument' activesupport (4.0.2) lib/active_support/notifications.rb:159:ininstrument'
actionpack (4.0.2) lib/action_controller/metal/instrumentation.rb:30:in process_action' actionpack (4.0.2) lib/action_controller/metal/params_wrapper.rb:245:inprocess_action'
activerecord (4.0.2) lib/active_record/railties/controller_runtime.rb:18:in process_action' actionpack (4.0.2) lib/abstract_controller/base.rb:136:inprocess'
actionpack (4.0.2) lib/abstract_controller/rendering.rb:44:in process' actionpack (4.0.2) lib/action_controller/metal.rb:195:indispatch'
actionpack (4.0.2) lib/action_controller/metal/rack_delegation.rb:13:in dispatch' actionpack (4.0.2) lib/action_controller/metal.rb:231:inblock in action'
actionpack (4.0.2) lib/action_dispatch/routing/route_set.rb:80:in dispatch' actionpack (4.0.2) lib/action_dispatch/routing/route_set.rb:48:incall'
actionpack (4.0.2) lib/action_dispatch/journey/router.rb:71:in block in call' actionpack (4.0.2) lib/action_dispatch/journey/router.rb:59:incall'
actionpack (4.0.2) lib/action_dispatch/routing/route_set.rb:680:in call' newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:incall'
rack-raw-upload (1.1.1) lib/rack/raw_upload.rb:18:in call' newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:incall'
newrelic_rpm (3.9.9.275) lib/new_relic/rack/agent_hooks.rb:30:in traced_call' newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:55:incall'
newrelic_rpm (3.9.9.275) lib/new_relic/rack/browser_monitoring.rb:23:in traced_call' newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:55:incall'
newrelic_rpm (3.9.9.275) lib/new_relic/rack/developer_mode.rb:56:in traced_call' newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:55:incall'
rack (1.5.5) lib/rack/etag.rb:23:in call' newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:incall'
rack (1.5.5) lib/rack/conditionalget.rb:25:in call' newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:incall'
rack (1.5.5) lib/rack/head.rb:11:in call' newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:incall'
actionpack (4.0.2) lib/action_dispatch/middleware/params_parser.rb:27:in call' newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:incall'
actionpack (4.0.2) lib/action_dispatch/middleware/flash.rb:241:in call' newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:incall'
rack (1.5.5) lib/rack/session/abstract/id.rb:225:in context' rack (1.5.5) lib/rack/session/abstract/id.rb:220:incall'
newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in call' actionpack (4.0.2) lib/action_dispatch/middleware/cookies.rb:486:incall'
newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in call' activerecord (4.0.2) lib/active_record/query_cache.rb:36:incall'
newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in call' activerecord (4.0.2) lib/active_record/connection_adapters/abstract/connection_pool.rb:626:incall'
newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in call' activerecord (4.0.2) lib/active_record/migration.rb:369:incall'
newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in call' actionpack (4.0.2) lib/action_dispatch/middleware/callbacks.rb:29:inblock in call'
activesupport (4.0.2) lib/active_support/callbacks.rb:373:in _run__2635566826616986378__call__callbacks' activesupport (4.0.2) lib/active_support/callbacks.rb:80:inrun_callbacks'
actionpack (4.0.2) lib/action_dispatch/middleware/callbacks.rb:27:in call' newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:incall'
actionpack (4.0.2) lib/action_dispatch/middleware/reloader.rb:64:in call' newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:incall'
actionpack (4.0.2) lib/action_dispatch/middleware/remote_ip.rb:76:in call' newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:incall'
better_errors (2.1.1) lib/better_errors/middleware.rb:84:in protected_app_call' better_errors (2.1.1) lib/better_errors/middleware.rb:79:inbetter_errors_call'
better_errors (2.1.1) lib/better_errors/middleware.rb:57:in call' newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:incall'
actionpack (4.0.2) lib/action_dispatch/middleware/debug_exceptions.rb:17:in call' newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:incall'
actionpack (4.0.2) lib/action_dispatch/middleware/show_exceptions.rb:30:in call' newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:incall'
railties (4.0.2) lib/rails/rack/logger.rb:38:in call_app' railties (4.0.2) lib/rails/rack/logger.rb:20:inblock in call'
activesupport (4.0.2) lib/active_support/tagged_logging.rb:67:in block in tagged' activesupport (4.0.2) lib/active_support/tagged_logging.rb:25:intagged'
activesupport (4.0.2) lib/active_support/tagged_logging.rb:67:in tagged' railties (4.0.2) lib/rails/rack/logger.rb:20:incall'
newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in call' actionpack (4.0.2) lib/action_dispatch/middleware/request_id.rb:21:incall'
newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in call' rack (1.5.5) lib/rack/methodoverride.rb:21:incall'
newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in call' rack (1.5.5) lib/rack/runtime.rb:17:incall'
newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in call' activesupport (4.0.2) lib/active_support/cache/strategy/local_cache.rb:83:incall'
newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in call' rack (1.5.5) lib/rack/lock.rb:17:incall'
newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in call' actionpack (4.0.2) lib/action_dispatch/middleware/static.rb:64:incall'
newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in call' rack (1.5.5) lib/rack/sendfile.rb:112:incall'
newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in call' railties (4.0.2) lib/rails/engine.rb:511:incall'
railties (4.0.2) lib/rails/application.rb:97:in call' newrelic_rpm (3.9.9.275) lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:incall'
rack (1.5.5) lib/rack/lock.rb:17:in call' rack (1.5.5) lib/rack/content_length.rb:14:incall'
rack (1.5.5) lib/rack/handler/webrick.rb:60:in service' /Users/.../.rvm/rubies/ruby-2.0.0-p598/lib/ruby/2.0.0/webrick/httpserver.rb:138:inservice'
/Users/.../.rvm/rubies/ruby-2.0.0-p598/lib/ruby/2.0.0/webrick/httpserver.rb:94:in run' /Users/.../.rvm/rubies/ruby-2.0.0-p598/lib/ruby/2.0.0/webrick/server.rb:295:inblock in start_thread'

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions