tomichj / invitation

A Rails gem that can send 'scoped' invitations
MIT License
75 stars 28 forks source link

Issue using default generator #29

Open g3ortega opened 5 years ago

g3ortega commented 5 years ago

Hi,

I got an issue using the default migration for invites, I just fixed it by specifying the current version for `ActiveRecord::Migration. I'm using Rails 6.0 RC1.

If you haven't considered a fix, I can help with a pull request 😃

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 CreateInvites < ActiveRecord::Migration[4.2]
/home/ubuntu/.rvm/gems/ruby-2.6.0/gems/activerecord-6.0.0.rc1/lib/active_record/migration.rb:536:in `inherited'
/home/ubuntu/environment/app.opszero.com/db/migrate/20190502200420_create_invites.rb:1:in `<main>'
/home/ubuntu/.rvm/gems/ruby-2.6.0/gems/bootsnap-1.4.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require'
/home/ubuntu/.rvm/gems/ruby-2.6.0/gems/bootsnap-1.4.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `block in require_with_bootsnap_lfi'
/home/ubuntu/.rvm/gems/ruby-2.6.0/gems/bootsnap-1.4.2/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
/home/ubuntu/.rvm/gems/ruby-2.6.0/gems/bootsnap-1.4.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:21:in `require_with_bootsnap_lfi'
/home/ubuntu/.rvm/gems/ruby-2.6.0/gems/bootsnap-1.4.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in `require'
/home/ubuntu/.rvm/gems/ruby-2.6.0/gems/zeitwerk-2.1.4/lib/zeitwerk/kernel.rb:23:in `require'
/home/ubuntu/.rvm/gems/ruby-2.6.0/gems/activesupport-6.0.0.rc1/lib/active_support/dependencies.rb:302:in `block in require'
/home/ubuntu/.rvm/gems/ruby-2.6.0/gems/activesupport-6.0.0.rc1/lib/active_support/dependencies.rb:268:in `load_dependency'
/home/ubuntu/.rvm/gems/ruby-2.6.0/gems/activesupport-6.0.0.rc1/lib/active_support/dependencies.rb:302:in `require'
/home/ubuntu/.rvm/gems/ruby-2.6.0/gems/activerecord-6.0.0.rc1/lib/active_record/migration.rb:1001:in `load_migration'
/home/ubuntu/.rvm/gems/ruby-2.6.0/gems/activerecord-6.0.0.rc1/lib/active_record/migration.rb:997:in `migration'
/home/ubuntu/.rvm/gems/ruby-2.6.0/gems/activerecord-6.0.0.rc1/lib/active_record/migration.rb:992:in `disable_ddl_transaction'
/home/ubuntu/.rvm/gems/ruby-2.6.0/gems/activerecord-6.0.0.rc1/lib/active_record/migration.rb:1358:in `use_transaction?'
/home/ubuntu/.rvm/gems/ruby-2.6.0/gems/activerecord-6.0.0.rc1/lib/active_record/migration.rb:1350:in `ddl_transaction'
/home/ubuntu/.rvm/gems/ruby-2.6.0/gems/activerecord-6.0.0.rc1/lib/active_record/migration.rb:1299:in `execute_migration_in_transaction'
/home/ubuntu/.rvm/gems/ruby-2.6.0/gems/activerecord-6.0.0.rc1/lib/active_record/migration.rb:1271:in `block in migrate_without_lock'
/home/ubuntu/.rvm/gems/ruby-2.6.0/gems/activerecord-6.0.0.rc1/lib/active_record/migration.rb:1270:in `each'
/home/ubuntu/.rvm/gems/ruby-2.6.0/gems/activerecord-6.0.0.rc1/lib/active_record/migration.rb:1270:in `migrate_without_lock'
/home/ubuntu/.rvm/gems/ruby-2.6.0/gems/activerecord-6.0.0.rc1/lib/active_record/migration.rb:1218:in `block in migrate'
/home/ubuntu/.rvm/gems/ruby-2.6.0/gems/activerecord-6.0.0.rc1/lib/active_record/migration.rb:1371:in `with_advisory_lock'
/home/ubuntu/.rvm/gems/ruby-2.6.0/gems/activerecord-6.0.0.rc1/lib/active_record/migration.rb:1218:in `migrate'
/home/ubuntu/.rvm/gems/ruby-2.6.0/gems/activerecord-6.0.0.rc1/lib/active_record/migration.rb:1051:in `up'
/home/ubuntu/.rvm/gems/ruby-2.6.0/gems/activerecord-6.0.0.rc1/lib/active_record/migration.rb:1026:in `migrate'
/home/ubuntu/.rvm/gems/ruby-2.6.0/gems/activerecord-6.0.0.rc1/lib/active_record/tasks/database_tasks.rb:226:in `migrate'
/home/ubuntu/.rvm/gems/ruby-2.6.0/gems/activerecord-6.0.0.rc1/lib/active_record/railties/databases.rake:83:in `block (3 levels) in <main>'
/home/ubuntu/.rvm/gems/ruby-2.6.0/gems/activerecord-6.0.0.rc1/lib/active_record/railties/databases.rake:81:in `each'
/home/ubuntu/.rvm/gems/ruby-2.6.0/gems/activerecord-6.0.0.rc1/lib/active_record/railties/databases.rake:81:in `block (2 levels) in <main>'

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

  class CreateInvites < ActiveRecord::Migration[4.2]`
natecox commented 5 years ago

hmm, the testing suite passed when I issued the PR for rails 6 rc1, which seems like it would have failed on this. Admittedly, while I am using this on rails 6, I upgraded from 5 so I wouldn't have hit this on my current project.

The error message there is kind of confusing. It's complaining that we didn't specify a version, but the log clearly shows one. Maybe they mean it needs to be a newer one?