justalever / kickoff_tailwind

A rapid Rails 7 application template for personal use bundled with Tailwind CSS
https://webcrunch.com
575 stars 144 forks source link

Unable to resolve dependency on generate devise:install #24

Closed jdempcy closed 2 years ago

jdempcy commented 2 years ago

I just did a fresh clone and ran:

rails new myappname -j esbuid -m template.rb

I get the following error:

       rails  generate devise:install
/Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver.rb:233:in `search_for': Unable to resolve dependency: user requested 'executable-hooks (= 1.6.1)' (Gem::UnsatisfiableDependencyError)
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver.rb:288:in `block in sort_dependencies'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver.rb:282:in `each'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver.rb:282:in `sort_by'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver.rb:282:in `with_index'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver.rb:282:in `sort_dependencies'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver/molinillo/lib/molinillo/delegates/specification_provider.rb:60:in `block in sort_dependencies'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver/molinillo/lib/molinillo/delegates/specification_provider.rb:77:in `with_no_such_dependency_error_handling'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver/molinillo/lib/molinillo/delegates/specification_provider.rb:59:in `sort_dependencies'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver/molinillo/lib/molinillo/resolution.rb:754:in `push_state_for_requirements'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver/molinillo/lib/molinillo/resolution.rb:288:in `push_initial_state'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver/molinillo/lib/molinillo/resolution.rb:210:in `start_resolution'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver/molinillo/lib/molinillo/resolution.rb:168:in `resolve'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver/molinillo/lib/molinillo/resolver.rb:43:in `resolve'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver.rb:190:in `resolve'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/request_set.rb:411:in `resolve'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/request_set.rb:423:in `resolve_current'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems.rb:230:in `finish_resolve'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems.rb:287:in `block in activate_bin_path'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems.rb:285:in `synchronize'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems.rb:285:in `activate_bin_path'
    from /Users/jdempcy/.rvm/gems/ruby-3.1.0/bin/rails:25:in `<main>'
    from /Users/jdempcy/.rvm/gems/ruby-3.1.0/bin/ruby_executable_hooks:22:in `eval'
    from /Users/jdempcy/.rvm/gems/ruby-3.1.0/bin/ruby_executable_hooks:22:in `<main>'

I was able to cd into the folder and bundle install, and then run rails g devise:install and it worked fine.

jdempcy commented 2 years ago

I added gem 'executable-hooks' and got further. Now it conks out on bundler-unload:


       rails  generate devise:install
/Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver.rb:233:in `search_for': Unable to resolve dependency: user requested 'bundler-unload (= 1.0.2)' (Gem::UnsatisfiableDependencyError)
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver.rb:288:in `block in sort_dependencies'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver.rb:282:in `each'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver.rb:282:in `sort_by'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver.rb:282:in `with_index'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver.rb:282:in `sort_dependencies'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver/molinillo/lib/molinillo/delegates/specification_provider.rb:60:in `block in sort_dependencies'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver/molinillo/lib/molinillo/delegates/specification_provider.rb:77:in `with_no_such_dependency_error_handling'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver/molinillo/lib/molinillo/delegates/specification_provider.rb:59:in `sort_dependencies'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver/molinillo/lib/molinillo/resolution.rb:754:in `push_state_for_requirements'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver/molinillo/lib/molinillo/resolution.rb:288:in `push_initial_state'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver/molinillo/lib/molinillo/resolution.rb:210:in `start_resolution'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver/molinillo/lib/molinillo/resolution.rb:168:in `resolve'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver/molinillo/lib/molinillo/resolver.rb:43:in `resolve'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver.rb:190:in `resolve'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/request_set.rb:411:in `resolve'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/request_set.rb:423:in `resolve_current'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems.rb:230:in `finish_resolve'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems.rb:287:in `block in activate_bin_path'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems.rb:285:in `synchronize'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems.rb:285:in `activate_bin_path'
    from /Users/jdempcy/.rvm/gems/ruby-3.1.0/bin/rails:25:in `<main>'
    from /Users/jdempcy/.rvm/gems/ruby-3.1.0/bin/ruby_executable_hooks:22:in `eval'
    from /Users/jdempcy/.rvm/gems/ruby-3.1.0/bin/ruby_executable_hooks:22:in `<main>'
jdempcy commented 2 years ago

Same thing now with rubygems-bundler. I've added it to the template.rb and am trying again.

jdempcy commented 2 years ago

This is a fresh dev machine I have not done Rails development on before, and it's been some years—I was primarily a Rails dev from 2009-2014. So I apologize if there is some basic environment config I've failed to do! I just decided to get back into it and found kickoff_tailwind as my first foray into a modern Rails app :)

jdempcy commented 2 years ago

Same error now for 'bundler':


rails  generate devise:install
/Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver.rb:233:in `search_for': Unable to resolve dependency: user requested 'bundler (= 2.3.5)' (Gem::UnsatisfiableDependencyError)
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver.rb:288:in `block in sort_dependencies'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver.rb:282:in `each'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver.rb:282:in `sort_by'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver.rb:282:in `with_index'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver.rb:282:in `sort_dependencies'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver/molinillo/lib/molinillo/delegates/specification_provider.rb:60:in `block in sort_dependencies'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver/molinillo/lib/molinillo/delegates/specification_provider.rb:77:in `with_no_such_dependency_error_handling'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver/molinillo/lib/molinillo/delegates/specification_provider.rb:59:in `sort_dependencies'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver/molinillo/lib/molinillo/resolution.rb:754:in `push_state_for_requirements'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver/molinillo/lib/molinillo/resolution.rb:288:in `push_initial_state'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver/molinillo/lib/molinillo/resolution.rb:210:in `start_resolution'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver/molinillo/lib/molinillo/resolution.rb:168:in `resolve'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver/molinillo/lib/molinillo/resolver.rb:43:in `resolve'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver.rb:190:in `resolve'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/request_set.rb:411:in `resolve'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/request_set.rb:423:in `resolve_current'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems.rb:230:in `finish_resolve'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems.rb:287:in `block in activate_bin_path'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems.rb:285:in `synchronize'
    from /Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems.rb:285:in `activate_bin_path'
    from /Users/jdempcy/.rvm/gems/ruby-3.1.0/bin/rails:25:in `<main>'
    from /Users/jdempcy/.rvm/gems/ruby-3.1.0/bin/ruby_executable_hooks:22:in `eval'
    from /Users/jdempcy/.rvm/gems/ruby-3.1.0/bin/ruby_executable_hooks:22:in `<main>'```
jdempcy commented 2 years ago

My add_gems section of template.rb now looks like:

def add_gems
  gem 'bundler'
  gem 'bundler-unload'
  gem 'devise', '~> 4.8', '>= 4.8.1'
  gem 'executable-hooks'
  gem 'friendly_id', '~> 5.4', '>= 5.4.2'
  gem 'cssbundling-rails'
  gem 'name_of_person'
  gem 'rubygems-bundler'
  gem 'sidekiq', '~> 6.5', '>= 6.5.4'
  gem 'stripe'
end
jdempcy commented 2 years ago

Despite adding 'bundler' I am getting this error:

/Users/jdempcy/.rvm/rubies/ruby-3.1.0/lib/ruby/3.1.0/rubygems/resolver.rb:233:in `search_for': Unable to resolve dependency: user requested 'bundler (= 2.3.5)' (Gem::UnsatisfiableDependencyError)

I'll try specifying 2.3.5 and see if that fixes it.

jdempcy commented 2 years ago

That did not, so I just deleted the Gemfile.lock and ran bundle install and then ran rails generate devise:install again and this time it worked.

However, I see that it stopped working in add_users so I suppose I can try to manually complete the rest of the steps.

jdempcy commented 2 years ago

I was able to re-run the original rails new command after deleting the Gemfile.lock and running bundle install, and that worked! Resolving...