Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cannot bootup rails (github HEAD version) with devise (github HEAD version) #4941

Closed
oystersauce8 opened this issue Sep 25, 2018 · 2 comments

Comments

@oystersauce8
Copy link
Contributor

After installing devise on a rails edge app using the steps mentioned in this SO question, users get the error Please specify the Rails release the migration was written for

Steps to repro.

$ cd /tmp
$ ruby --version
ruby 2.3.3p222 (2016-11-21 revision 56859) [universal.x86_64-darwin17]
$ rbenv shell 2.5.1
$ ruby --version
ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-darwin17]
$ echo "source 'https://rubygems.org'" >> Gemfile
$ echo "gem 'rails', git: 'https://github.com/rails/rails.git'" >> Gemfile
$ bundle install
Fetching https://github.com/rails/rails.git
Fetching gem metadata from https://rubygems.org/.............
Fetching gem metadata from https://rubygems.org/..........
Fetching gem metadata from https://rubygems.org/..........
Resolving dependencies...
Using rake 12.3.1
Using concurrent-ruby 1.0.5
Using i18n 1.1.0
Using minitest 5.11.3
Using thread_safe 0.3.6
Using tzinfo 1.2.5
Using activesupport 6.0.0.alpha from https://github.com/rails/rails.git (at master@0627442)
Using builder 3.2.3
Using erubi 1.7.1
Using mini_portile2 2.3.0
Using nokogiri 1.8.4
Using rails-dom-testing 2.0.3
Using crass 1.0.4
Using loofah 2.2.2
Using rails-html-sanitizer 1.0.4
Using actionview 6.0.0.alpha from https://github.com/rails/rails.git (at master@0627442)
Using rack 2.0.5
Using rack-test 1.1.0
Using actionpack 6.0.0.alpha from https://github.com/rails/rails.git (at master@0627442)
Using nio4r 2.3.1
Using websocket-extensions 0.1.3
Using websocket-driver 0.7.0
Using actioncable 6.0.0.alpha from https://github.com/rails/rails.git (at master@0627442)
Using globalid 0.4.1
Using activejob 6.0.0.alpha from https://github.com/rails/rails.git (at master@0627442)
Using mini_mime 1.0.1
Using mail 2.7.0
Using actionmailer 6.0.0.alpha from https://github.com/rails/rails.git (at master@0627442)
Using activemodel 6.0.0.alpha from https://github.com/rails/rails.git (at master@0627442)
Using activerecord 6.0.0.alpha from https://github.com/rails/rails.git (at master@0627442)
Using mimemagic 0.3.2
Using marcel 0.3.3
Using activestorage 6.0.0.alpha from https://github.com/rails/rails.git (at master@0627442)
Using bundler 1.16.2
Using method_source 0.9.0
Using thor 0.20.0
Using railties 6.0.0.alpha from https://github.com/rails/rails.git (at master@0627442)
Using sprockets 3.7.2
Using sprockets-rails 3.2.1
Using rails 6.0.0.alpha from https://github.com/rails/rails.git (at master@0627442)
Bundle complete! 1 Gemfile dependency, 40 gems now installed.
Use `bundle info [gemname]` to see where a bundled gem is installed.
$
$
$ bundle exec rails new . --dev --force
       exist
      create  README.md
      create  Rakefile
      create  .ruby-version
      create  config.ru
      create  .gitignore
       force  Gemfile
         run  git init from "."
Initialized empty Git repository in /private/tmp/.git/
      create  package.json
      create  app
      create  app/assets/config/manifest.js
      create  app/assets/javascripts/application.js
      create  app/assets/javascripts/cable.js
      create  app/assets/stylesheets/application.css
      create  app/channels/application_cable/channel.rb
      create  app/channels/application_cable/connection.rb
      create  app/controllers/application_controller.rb
      create  app/helpers/application_helper.rb
      create  app/jobs/application_job.rb
      create  app/mailers/application_mailer.rb
      create  app/models/application_record.rb
      create  app/views/layouts/application.html.erb
      create  app/views/layouts/mailer.html.erb
      create  app/views/layouts/mailer.text.erb
      create  app/assets/images/.keep
      create  app/assets/javascripts/channels
      create  app/assets/javascripts/channels/.keep
      create  app/controllers/concerns/.keep
      create  app/models/concerns/.keep
      create  bin
      create  bin/rails
      create  bin/rake
      create  bin/setup
      create  bin/update
      create  bin/yarn
      create  config
      create  config/routes.rb
      create  config/application.rb
      create  config/environment.rb
      create  config/cable.yml
      create  config/puma.rb
      create  config/storage.yml
      create  config/environments
      create  config/environments/development.rb
      create  config/environments/production.rb
      create  config/environments/test.rb
      create  config/initializers
      create  config/initializers/application_controller_renderer.rb
      create  config/initializers/assets.rb
      create  config/initializers/backtrace_silencers.rb
      create  config/initializers/content_security_policy.rb
      create  config/initializers/cookies_serializer.rb
      create  config/initializers/cors.rb
      create  config/initializers/filter_parameter_logging.rb
      create  config/initializers/inflections.rb
      create  config/initializers/mime_types.rb
      create  config/initializers/new_framework_defaults_6_0.rb
      create  config/initializers/wrap_parameters.rb
      create  config/locales
      create  config/locales/en.yml
      create  config/master.key
      append  .gitignore
      create  config/boot.rb
      create  config/database.yml
      create  db
      create  db/seeds.rb
      create  lib
      create  lib/tasks
      create  lib/tasks/.keep
      create  lib/assets
      create  lib/assets/.keep
      create  log
      create  log/.keep
      create  public
      create  public/404.html
      create  public/422.html
      create  public/500.html
      create  public/apple-touch-icon-precomposed.png
      create  public/apple-touch-icon.png
      create  public/favicon.ico
      create  public/robots.txt
      create  tmp
      create  tmp/.keep
      create  tmp/cache
      create  tmp/cache/assets
      create  vendor
      create  vendor/.keep
      create  test/fixtures
      create  test/fixtures/.keep
      create  test/fixtures/files
      create  test/fixtures/files/.keep
      create  test/controllers
      create  test/controllers/.keep
      create  test/mailers
      create  test/mailers/.keep
      create  test/models
      create  test/models/.keep
      create  test/helpers
      create  test/helpers/.keep
      create  test/integration
      create  test/integration/.keep
      create  test/test_helper.rb
      create  test/system
      create  test/system/.keep
      create  test/application_system_test_case.rb
      create  storage
      create  storage/.keep
      create  tmp/storage
      create  tmp/storage/.keep
      remove  config/initializers/cors.rb
      remove  config/initializers/new_framework_defaults_6_0.rb
         run  bundle install
Fetching https://github.com/rails/web-console.git
The dependency tzinfo-data (>= 0) will be unused by any of the platforms Bundler is installing for. Bundler is installing for ruby but the dependency is only for x86-mingw32, x86-mswin32, x64-mingw32, java. To add those platforms to the bundle, run `bundle lock --add-platform x86-mingw32 x86-mswin32 x64-mingw32 java`.
Fetching gem metadata from https://rubygems.org/.........
Fetching gem metadata from https://rubygems.org/..........
Fetching gem metadata from https://rubygems.org/..........
Resolving dependencies....
Using rake 12.3.1
Using concurrent-ruby 1.0.5
Using i18n 1.1.0
Using minitest 5.11.3
Using thread_safe 0.3.6
Using tzinfo 1.2.5
Using activesupport 6.0.0.alpha from source at `/Users/user/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/bundler/gems/rails-06274428e534`
Using builder 3.2.3
Using erubi 1.7.1
Using mini_portile2 2.3.0
Using nokogiri 1.8.4
Using rails-dom-testing 2.0.3
Using crass 1.0.4
Using loofah 2.2.2
Using rails-html-sanitizer 1.0.4
Using actionview 6.0.0.alpha from source at `/Users/user/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/bundler/gems/rails-06274428e534`
Using rack 2.0.5
Using rack-test 1.1.0
Using actionpack 6.0.0.alpha from source at `/Users/user/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/bundler/gems/rails-06274428e534`
Using nio4r 2.3.1
Using websocket-extensions 0.1.3
Using websocket-driver 0.7.0
Using actioncable 6.0.0.alpha from source at `/Users/user/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/bundler/gems/rails-06274428e534`
Using globalid 0.4.1
Using activejob 6.0.0.alpha from source at `/Users/user/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/bundler/gems/rails-06274428e534`
Using mini_mime 1.0.1
Using mail 2.7.0
Using actionmailer 6.0.0.alpha from source at `/Users/user/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/bundler/gems/rails-06274428e534`
Using activemodel 6.0.0.alpha from source at `/Users/user/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/bundler/gems/rails-06274428e534`
Using activerecord 6.0.0.alpha from source at `/Users/user/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/bundler/gems/rails-06274428e534`
Using mimemagic 0.3.2
Using marcel 0.3.3
Using activestorage 6.0.0.alpha from source at `/Users/user/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/bundler/gems/rails-06274428e534`
Using public_suffix 3.0.3
Using addressable 2.5.2
Using io-like 0.3.0
Using archive-zip 0.11.0
Using bindex 0.5.0
Using bundler 1.16.2
Using byebug 10.0.2
Using xpath 3.1.0
Using capybara 3.8.1
Using ffi 1.9.25
Using childprocess 0.9.0
Using chromedriver-helper 2.1.0
Using coffee-script-source 1.12.2
Using execjs 2.7.0
Using coffee-script 2.4.1
Using method_source 0.9.0
Using thor 0.20.0
Using railties 6.0.0.alpha from source at `/Users/user/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/bundler/gems/rails-06274428e534`
Using coffee-rails 4.2.2
Using multi_json 1.13.1
Using jbuilder 2.7.0
Using rb-fsevent 0.10.3
Using rb-inotify 0.9.10
Using ruby_dep 1.5.0
Using listen 3.1.5
Using puma 3.12.0
Using sprockets 3.7.2
Using sprockets-rails 3.2.1
Using rails 6.0.0.alpha from source at `/Users/user/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/bundler/gems/rails-06274428e534`
Using rubyzip 1.2.2
Using sass-listen 4.0.0
Using sass 3.6.0
Using tilt 2.0.8
Using sass-rails 5.0.7
Using selenium-webdriver 3.14.0
Using sqlite3 1.3.13
Using turbolinks-source 5.2.0
Using turbolinks 5.2.0
Using uglifier 4.1.19
Using web-console 3.7.0 from https://github.com/rails/web-console.git (at master@a46d9ff)
Bundle complete! 15 Gemfile dependencies, 73 gems now installed.
Use `bundle info [gemname]` to see where a bundled gem is installed.
         run  bundle binstubs bundler
$
$
$
$
$ bundle exec rails server
=> Booting Puma
=> Rails 6.0.0.alpha application starting in development
=> Run `rails server --help` for more startup options
Puma starting in single mode...
* Version 3.12.0 (ruby 2.5.1-p57), codename: Llamas in Pajamas
* Min threads: 5, max threads: 5
* Environment: development
* Listening on tcp://0.0.0.0:3000
Use Ctrl-C to stop
Started GET "/" for 127.0.0.1 at 2018-09-24 13:36:08 -0700
   (1.7ms)  SELECT sqlite_version(*)
Processing by Rails::WelcomeController#index as HTML
  Rendering /Users/user/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/bundler/gems/rails-06274428e534/railties/lib/rails/templates/rails/welcome/index.html.erb
  Rendered /Users/user/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/bundler/gems/rails-06274428e534/railties/lib/rails/templates/rails/welcome/index.html.erb (6.9ms)
Completed 200 OK in 17ms (Views: 10.8ms | ActiveRecord: 0.0ms)


^C- Gracefully stopping, waiting for requests to finish
=== puma shutdown: 2018-09-24 13:36:12 -0700 ===
- Goodbye!
Exiting
$
$
$ # Yay! You’re on Rails!
$
$
$
$ echo 'gem "devise"' >> Gemfile
$ bundle install
The dependency tzinfo-data (>= 0) will be unused by any of the platforms Bundler is installing for. Bundler is installing for ruby but the dependency is only for x86-mingw32, x86-mswin32, x64-mingw32, java. To add those platforms to the bundle, run `bundle lock --add-platform x86-mingw32 x86-mswin32 x64-mingw32 java`.
Fetching gem metadata from https://rubygems.org/.........
Fetching gem metadata from https://rubygems.org/..........
Fetching gem metadata from https://rubygems.org/..........
Resolving dependencies...
Using rake 12.3.1
Using concurrent-ruby 1.0.5
Using i18n 1.1.0
Using minitest 5.11.3
Using thread_safe 0.3.6
Using tzinfo 1.2.5
Using activesupport 6.0.0.alpha from source at `/Users/user/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/bundler/gems/rails-06274428e534`
Using builder 3.2.3
Using erubi 1.7.1
Using mini_portile2 2.3.0
Using nokogiri 1.8.4
Using rails-dom-testing 2.0.3
Using crass 1.0.4
Using loofah 2.2.2
Using rails-html-sanitizer 1.0.4
Using actionview 6.0.0.alpha from source at `/Users/user/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/bundler/gems/rails-06274428e534`
Using rack 2.0.5
Using rack-test 1.1.0
Using actionpack 6.0.0.alpha from source at `/Users/user/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/bundler/gems/rails-06274428e534`
Using nio4r 2.3.1
Using websocket-extensions 0.1.3
Using websocket-driver 0.7.0
Using actioncable 6.0.0.alpha from source at `/Users/user/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/bundler/gems/rails-06274428e534`
Using globalid 0.4.1
Using activejob 6.0.0.alpha from source at `/Users/user/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/bundler/gems/rails-06274428e534`
Using mini_mime 1.0.1
Using mail 2.7.0
Using actionmailer 6.0.0.alpha from source at `/Users/user/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/bundler/gems/rails-06274428e534`
Using activemodel 6.0.0.alpha from source at `/Users/user/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/bundler/gems/rails-06274428e534`
Using activerecord 6.0.0.alpha from source at `/Users/user/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/bundler/gems/rails-06274428e534`
Using mimemagic 0.3.2
Using marcel 0.3.3
Using activestorage 6.0.0.alpha from source at `/Users/user/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/bundler/gems/rails-06274428e534`
Using public_suffix 3.0.3
Using addressable 2.5.2
Using io-like 0.3.0
Using archive-zip 0.11.0
Using bcrypt 3.1.12
Using bindex 0.5.0
Using bundler 1.16.2
Using byebug 10.0.2
Using xpath 3.1.0
Using capybara 3.8.1
Using ffi 1.9.25
Using childprocess 0.9.0
Using chromedriver-helper 2.1.0
Using coffee-script-source 1.12.2
Using execjs 2.7.0
Using coffee-script 2.4.1
Using method_source 0.9.0
Using thor 0.20.0
Using railties 6.0.0.alpha from source at `/Users/user/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/bundler/gems/rails-06274428e534`
Using coffee-rails 4.2.2
Using orm_adapter 0.5.0
Using responders 0.6.5
Using warden 1.2.7
Using devise 4.5.0
Using multi_json 1.13.1
Using jbuilder 2.7.0
Using rb-fsevent 0.10.3
Using rb-inotify 0.9.10
Using ruby_dep 1.5.0
Using listen 3.1.5
Using puma 3.12.0
Using sprockets 3.7.2
Using sprockets-rails 3.2.1
Using rails 6.0.0.alpha from source at `/Users/user/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/bundler/gems/rails-06274428e534`
Using rubyzip 1.2.2
Using sass-listen 4.0.0
Using sass 3.6.0
Using tilt 2.0.8
Using sass-rails 5.0.7
Using selenium-webdriver 3.14.0
Using sqlite3 1.3.13
Using turbolinks-source 5.2.0
Using turbolinks 5.2.0
Using uglifier 4.1.19
Using web-console 3.7.0 from https://github.com/rails/web-console.git (at master@a46d9ff)
Bundle complete! 16 Gemfile dependencies, 78 gems now installed.
Use `bundle info [gemname]` to see where a bundled gem is installed.
$
$
$
$
$
$
$
$
$ bundle exec rails generate devise:install
      create  config/initializers/devise.rb
      create  config/locales/devise.en.yml
===============================================================================

Some setup you must do manually if you haven't yet:

  1. Ensure you have defined default url options in your environments files. Here
     is an example of default_url_options appropriate for a development environment
     in config/environments/development.rb:

       config.action_mailer.default_url_options = { host: 'localhost', port: 3000 }

     In production, :host should be set to the actual host of your application.

  2. Ensure you have defined root_url to *something* in your config/routes.rb.
     For example:

       root to: "home#index"

  3. Ensure you have flash messages in app/views/layouts/application.html.erb.
     For example:

       <p class="notice"><%= notice %></p>
       <p class="alert"><%= alert %></p>

  4. You can copy Devise views (for customization) to your app by running:

       rails g devise:views

===============================================================================
$
$
$
$
$
$ bundle exec rails generate devise User
      invoke  active_record
      create    db/migrate/20180924203813_devise_create_users.rb
      create    app/models/user.rb
      invoke    test_unit
      create      test/models/user_test.rb
      create      test/fixtures/users.yml
      insert    app/models/user.rb
       route  devise_for :users
$
$
$
$
$
$ bundle exec rails server
=> Booting Puma
=> Rails 6.0.0.alpha application starting in development
=> Run `rails server --help` for more startup options
Puma starting in single mode...
* Version 3.12.0 (ruby 2.5.1-p57), codename: Llamas in Pajamas
* Min threads: 5, max threads: 5
* Environment: development
* Listening on tcp://0.0.0.0:3000
Use Ctrl-C to stop
Started GET "/" for 127.0.0.1 at 2018-09-24 13:38:24 -0700
   (1.4ms)  SELECT sqlite_version(*)

ActiveRecord::PendingMigrationError (

Migrations are pending. To resolve this issue, run:

        rails db:migrate RAILS_ENV=development

):
^C- Gracefully stopping, waiting for requests to finish
=== puma shutdown: 2018-09-24 13:38:31 -0700 ===
- Goodbye!
Exiting
$
$
$
$ # ActiveRecord::PendingMigrationError
$
$ bundle exec rake db:migrate
rake aborted!
StandardError: An error has occurred, this and all later migrations canceled:

Directly inheriting from ActiveRecord::Migration is not supported. Please specify the Rails release the migration was written for:

  class DeviseCreateUsers < ActiveRecord::Migration[4.2]
/private/tmp/db/migrate/20180924203813_devise_create_users.rb:3:in `<top (required)>'
/Users/user/.rbenv/versions/2.5.1/bin/bundle:23:in `load'
/Users/user/.rbenv/versions/2.5.1/bin/bundle:23:in `<main>'

Caused by:
StandardError: Directly inheriting from ActiveRecord::Migration is not supported. Please specify the Rails release the migration was written for:

  class DeviseCreateUsers < ActiveRecord::Migration[4.2]
/private/tmp/db/migrate/20180924203813_devise_create_users.rb:3:in `<top (required)>'
/Users/user/.rbenv/versions/2.5.1/bin/bundle:23:in `load'
/Users/user/.rbenv/versions/2.5.1/bin/bundle:23:in `<main>'
Tasks: TOP => db:migrate
(See full trace by running task with --trace)
$
@oystersauce8
Copy link
Contributor Author

Made a pull request #4942

tegon pushed a commit that referenced this issue Oct 3, 2018
@tegon
Copy link
Member

tegon commented Oct 3, 2018

Closed via #4942

@tegon tegon closed this as completed Oct 3, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

2 participants