Skip to content

Can't run with Rails 6.1 / Zeitwerk #3328

@josephferrairo

Description

@josephferrairo

Steps to reproduce

  • Spin up a new rails app on version 6.1. Standard rails new is fine.
  • add rails_admin to Gemfile and bundle install
  • Attempt to spin up a server or console in production mode. rails c -e production, rails s -e production
  • You will see the error /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rails_admin-2.0.2/app/helpers/rails_admin/form_builder.rb:3:in class:FormBuilder': uninitialized constant NestedForm::BuilderMixin (NameError)`
  • If I change the autloader from :zeitwerk to :classic it works but :classic is going to be deprecated soon.
  • I can't seem to figure out how to resolve this issue without changing the autoloader to classic.

Full Trace

=> Booting Puma
=> Rails 6.1.0 application starting in production
=> Run `bin/rails server --help` for more startup options
Exiting
Traceback (most recent call last):
	88: from bin/rails:2:in `<main>'
	87: from bin/rails:2:in `load'
	86: from /Users/joe/Desktop/Code/rails_admin_test/bin/spring:5:in `<top (required)>'
	85: from /Users/joe/Desktop/Code/rails_admin_test/bin/spring:5:in `tap'
	84: from /Users/joe/Desktop/Code/rails_admin_test/bin/spring:8:in `block in <top (required)>'
	83: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require'
	82: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require'
	81: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/spring-2.1.1/lib/spring/binstub.rb:11:in `<top (required)>'
	80: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/spring-2.1.1/lib/spring/binstub.rb:11:in `load'
	79: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/spring-2.1.1/bin/spring:49:in `<top (required)>'
	78: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/spring-2.1.1/lib/spring/client.rb:30:in `run'
	77: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/spring-2.1.1/lib/spring/client/command.rb:7:in `call'
	76: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/spring-2.1.1/lib/spring/client/rails.rb:28:in `call'
	75: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/spring-2.1.1/lib/spring/client/rails.rb:28:in `load'
	74: from /Users/joe/Desktop/Code/rails_admin_test/bin/rails:5:in `<top (required)>'
	73: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/activesupport-6.1.0/lib/active_support/dependencies.rb:332:in `require'
	72: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/activesupport-6.1.0/lib/active_support/dependencies.rb:299:in `load_dependency'
	71: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/activesupport-6.1.0/lib/active_support/dependencies.rb:332:in `block in require'
	70: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/bootsnap-1.5.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:31:in `require'
	69: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/bootsnap-1.5.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require_with_bootsnap_lfi'
	68: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/bootsnap-1.5.1/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
	67: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/bootsnap-1.5.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `block in require_with_bootsnap_lfi'
	66: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/bootsnap-1.5.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `require'
	65: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-6.1.0/lib/rails/commands.rb:18:in `<main>'
	64: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-6.1.0/lib/rails/command.rb:50:in `invoke'
	63: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-6.1.0/lib/rails/command/base.rb:69:in `perform'
	62: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/thor-1.0.1/lib/thor.rb:392:in `dispatch'
	61: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/thor-1.0.1/lib/thor/invocation.rb:127:in `invoke_command'
	60: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/thor-1.0.1/lib/thor/command.rb:27:in `run'
	59: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-6.1.0/lib/rails/commands/server/server_command.rb:135:in `perform'
	58: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-6.1.0/lib/rails/commands/server/server_command.rb:135:in `tap'
	57: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-6.1.0/lib/rails/commands/server/server_command.rb:144:in `block in perform'
	56: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-6.1.0/lib/rails/commands/server/server_command.rb:39:in `start'
	55: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rack-2.2.3/lib/rack/server.rb:311:in `start'
	54: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rack-2.2.3/lib/rack/server.rb:379:in `handle_profiling'
	53: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rack-2.2.3/lib/rack/server.rb:312:in `block in start'
	52: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rack-2.2.3/lib/rack/server.rb:422:in `wrapped_app'
	51: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rack-2.2.3/lib/rack/server.rb:249:in `app'
	50: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rack-2.2.3/lib/rack/server.rb:349:in `build_app_and_options_from_config'
	49: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rack-2.2.3/lib/rack/builder.rb:66:in `parse_file'
	48: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rack-2.2.3/lib/rack/builder.rb:105:in `load_file'
	47: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rack-2.2.3/lib/rack/builder.rb:116:in `new_from_string'
	46: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rack-2.2.3/lib/rack/builder.rb:116:in `eval'
	45: from config.ru:3:in `block in <main>'
	44: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/bootsnap-1.5.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:53:in `require_relative'
	43: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/activesupport-6.1.0/lib/active_support/dependencies.rb:332:in `require'
	42: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/activesupport-6.1.0/lib/active_support/dependencies.rb:299:in `load_dependency'
	41: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/activesupport-6.1.0/lib/active_support/dependencies.rb:332:in `block in require'
	40: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/zeitwerk-2.4.2/lib/zeitwerk/kernel.rb:34:in `require'
	39: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/bootsnap-1.5.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:31:in `require'
	38: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/bootsnap-1.5.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require_with_bootsnap_lfi'
	37: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/bootsnap-1.5.1/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
	36: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/bootsnap-1.5.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `block in require_with_bootsnap_lfi'
	35: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/bootsnap-1.5.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `require'
	34: from /Users/joe/Desktop/Code/rails_admin_test/config/environment.rb:5:in `<main>'
	33: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-6.1.0/lib/rails/application.rb:384:in `initialize!'
	32: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-6.1.0/lib/rails/initializable.rb:60:in `run_initializers'
	31: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/2.6.0/tsort.rb:205:in `tsort_each'
	30: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/2.6.0/tsort.rb:226:in `tsort_each'
	29: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/2.6.0/tsort.rb:347:in `each_strongly_connected_component'
	28: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/2.6.0/tsort.rb:347:in `call'
	27: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/2.6.0/tsort.rb:347:in `each'
	26: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/2.6.0/tsort.rb:349:in `block in each_strongly_connected_component'
	25: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/2.6.0/tsort.rb:431:in `each_strongly_connected_component_from'
	24: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/2.6.0/tsort.rb:350:in `block (2 levels) in each_strongly_connected_component'
	23: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/2.6.0/tsort.rb:228:in `block in tsort_each'
	22: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-6.1.0/lib/rails/initializable.rb:61:in `block in run_initializers'
	21: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-6.1.0/lib/rails/initializable.rb:32:in `run'
	20: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-6.1.0/lib/rails/initializable.rb:32:in `instance_exec'
	19: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-6.1.0/lib/rails/application/finisher.rb:133:in `block in <module:Finisher>'
	18: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/zeitwerk-2.4.2/lib/zeitwerk/loader.rb:508:in `eager_load_all'
	17: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/zeitwerk-2.4.2/lib/zeitwerk/loader.rb:508:in `each'
	16: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/zeitwerk-2.4.2/lib/zeitwerk/loader.rb:393:in `eager_load'
	15: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/zeitwerk-2.4.2/lib/zeitwerk/loader.rb:393:in `synchronize'
	14: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/zeitwerk-2.4.2/lib/zeitwerk/loader.rb:404:in `block in eager_load'
	13: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/zeitwerk-2.4.2/lib/zeitwerk/loader.rb:725:in `ls'
	12: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/zeitwerk-2.4.2/lib/zeitwerk/loader.rb:725:in `foreach'
	11: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/zeitwerk-2.4.2/lib/zeitwerk/loader.rb:733:in `block in ls'
	10: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/zeitwerk-2.4.2/lib/zeitwerk/loader.rb:409:in `block (2 levels) in eager_load'
	 9: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/zeitwerk-2.4.2/lib/zeitwerk/loader.rb:409:in `const_get'
	 8: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/zeitwerk-2.4.2/lib/zeitwerk/kernel.rb:26:in `require'
	 7: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/bootsnap-1.5.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:31:in `require'
	 6: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/bootsnap-1.5.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require_with_bootsnap_lfi'
	 5: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/bootsnap-1.5.1/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
	 4: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/bootsnap-1.5.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `block in require_with_bootsnap_lfi'
	 3: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/bootsnap-1.5.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `require'
	 2: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rails_admin-2.0.2/app/helpers/rails_admin/form_builder.rb:1:in `<main>'
	 1: from /Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rails_admin-2.0.2/app/helpers/rails_admin/form_builder.rb:2:in `<module:RailsAdmin>'
/Users/joe/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rails_admin-2.0.2/app/helpers/rails_admin/form_builder.rb:3:in `<class:FormBuilder>': uninitialized constant NestedForm::BuilderMixin (NameError)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions