schema_plus_foreign_keys 0.1.6 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (55) hide show
  1. checksums.yaml +5 -5
  2. data/.github/workflows/prs.yml +134 -0
  3. data/.gitignore +1 -0
  4. data/.simplecov +20 -0
  5. data/Gemfile +4 -1
  6. data/README.md +49 -35
  7. data/Rakefile +3 -1
  8. data/gemfiles/Gemfile.base +1 -1
  9. data/gemfiles/activerecord-5.2/Gemfile.base +4 -0
  10. data/gemfiles/activerecord-5.2/Gemfile.mysql2 +10 -0
  11. data/gemfiles/activerecord-5.2/Gemfile.postgresql +10 -0
  12. data/gemfiles/{activerecord-4.2.0 → activerecord-5.2}/Gemfile.sqlite3 +3 -3
  13. data/gemfiles/activerecord-6.0/Gemfile.base +4 -0
  14. data/gemfiles/activerecord-6.0/Gemfile.mysql2 +10 -0
  15. data/gemfiles/activerecord-6.0/Gemfile.postgresql +10 -0
  16. data/gemfiles/{activerecord-4.2.6 → activerecord-6.0}/Gemfile.sqlite3 +3 -3
  17. data/lib/schema_plus/foreign_keys/active_record/base.rb +2 -0
  18. data/lib/schema_plus/foreign_keys/active_record/connection_adapters/abstract/schema_creation.rb +20 -0
  19. data/lib/schema_plus/foreign_keys/active_record/connection_adapters/abstract_adapter.rb +9 -47
  20. data/lib/schema_plus/foreign_keys/active_record/connection_adapters/foreign_key_definition.rb +4 -35
  21. data/lib/schema_plus/foreign_keys/active_record/connection_adapters/mysql2_adapter.rb +15 -16
  22. data/lib/schema_plus/foreign_keys/active_record/connection_adapters/postgresql_adapter.rb +8 -6
  23. data/lib/schema_plus/foreign_keys/active_record/connection_adapters/sqlite3_adapter.rb +14 -6
  24. data/lib/schema_plus/foreign_keys/active_record/connection_adapters/table_definition.rb +10 -49
  25. data/lib/schema_plus/foreign_keys/active_record/migration/command_recorder.rb +4 -2
  26. data/lib/schema_plus/foreign_keys/middleware/dumper.rb +5 -3
  27. data/lib/schema_plus/foreign_keys/middleware/migration.rb +13 -5
  28. data/lib/schema_plus/foreign_keys/middleware/model.rb +2 -0
  29. data/lib/schema_plus/foreign_keys/middleware/mysql.rb +3 -1
  30. data/lib/schema_plus/foreign_keys/middleware/sql.rb +2 -15
  31. data/lib/schema_plus/foreign_keys/version.rb +3 -1
  32. data/lib/schema_plus/foreign_keys.rb +3 -1
  33. data/lib/schema_plus_foreign_keys.rb +2 -0
  34. data/schema_dev.yml +5 -4
  35. data/schema_plus_foreign_keys.gemspec +10 -8
  36. data/spec/deprecation_spec.rb +15 -112
  37. data/spec/foreign_key_definition_spec.rb +5 -3
  38. data/spec/foreign_key_spec.rb +26 -24
  39. data/spec/migration_spec.rb +73 -91
  40. data/spec/named_schemas_spec.rb +16 -14
  41. data/spec/schema_dumper_spec.rb +36 -35
  42. data/spec/spec_helper.rb +6 -4
  43. data/spec/support/reference.rb +3 -2
  44. metadata +48 -73
  45. data/.travis.yml +0 -24
  46. data/gemfiles/activerecord-4.2.0/Gemfile.base +0 -3
  47. data/gemfiles/activerecord-4.2.0/Gemfile.mysql2 +0 -10
  48. data/gemfiles/activerecord-4.2.0/Gemfile.postgresql +0 -10
  49. data/gemfiles/activerecord-4.2.1/Gemfile.base +0 -3
  50. data/gemfiles/activerecord-4.2.1/Gemfile.mysql2 +0 -10
  51. data/gemfiles/activerecord-4.2.1/Gemfile.postgresql +0 -10
  52. data/gemfiles/activerecord-4.2.1/Gemfile.sqlite3 +0 -10
  53. data/gemfiles/activerecord-4.2.6/Gemfile.base +0 -3
  54. data/gemfiles/activerecord-4.2.6/Gemfile.mysql2 +0 -10
  55. data/gemfiles/activerecord-4.2.6/Gemfile.postgresql +0 -10
@@ -1,6 +1,8 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'spec_helper'
2
4
 
3
- describe "with multiple schemas" do
5
+ describe "with multiple schemas", sqlite3: :skip do
4
6
  def connection
5
7
  ActiveRecord::Base.connection
6
8
  end
@@ -22,7 +24,7 @@ describe "with multiple schemas" do
22
24
 
23
25
  before(:each) do
24
26
  define_schema do
25
- create_table :users, :force => true do |t|
27
+ create_table :users, force: true do |t|
26
28
  t.string :login
27
29
  end
28
30
  end
@@ -56,8 +58,8 @@ describe "with multiple schemas" do
56
58
  end
57
59
 
58
60
  it "should not find foreign keys in other schema" do
59
- connection.create_table :comments, :force => true do |t|
60
- t.integer :user_id, :foreign_key => false
61
+ connection.create_table :comments, force: true do |t|
62
+ t.references :user, foreign_key: false
61
63
  end
62
64
  Comment.reset_column_information
63
65
  expect(Comment.foreign_keys.length).to eq(0)
@@ -66,8 +68,8 @@ describe "with multiple schemas" do
66
68
  end
67
69
 
68
70
  it "should find foreign keys in this schema" do
69
- connection.create_table :comments, :force => true do |t|
70
- t.integer :user_id, :foreign_key => true
71
+ connection.create_table :comments, force: true do |t|
72
+ t.references :user, foreign_key: true
71
73
  end
72
74
  Comment.reset_column_information
73
75
  expect(Comment.foreign_keys.map(&:column).flatten).to eq(["user_id"])
@@ -80,13 +82,13 @@ describe "with multiple schemas" do
80
82
  context "foreign key migrations" do
81
83
  before(:each) do
82
84
  define_schema do
83
- create_table "items", :force => true do |t|
85
+ create_table "items", force: true do |t|
84
86
  end
85
- create_table "schema_plus_test2.groups", :force => true do |t|
87
+ create_table "schema_plus_test2.groups", force: true do |t|
86
88
  end
87
- create_table "schema_plus_test2.members", :force => true do |t|
88
- t.integer :item_id, :foreign_key => true unless SchemaDev::Rspec::Helpers.mysql?
89
- t.integer :group_id, :foreign_key => { references: "schema_plus_test2.groups" }
89
+ create_table "schema_plus_test2.members", force: true do |t|
90
+ t.references :item, foreign_key: { name: 'fk_test2_members_items' } unless SchemaDev::Rspec::Helpers.mysql?
91
+ t.references :group, foreign_key: { name: 'fk_test2_members_groups', references: "schema_plus_test2.groups" }
90
92
  end
91
93
  end
92
94
  class Group < ::ActiveRecord::Base
@@ -122,13 +124,13 @@ describe "with multiple schemas" do
122
124
  expect(Member.foreign_keys.map(&:to_table)).to include "schema_plus_test2.groups"
123
125
  end
124
126
 
125
- it "should reference table in default schema", :mysql => :skip do
127
+ it "should reference table in default schema", mysql: :skip do
126
128
  expect(Member.foreign_keys.map(&:to_table)).to include "items"
127
129
  end
128
130
 
129
131
  it "should include the schema in the constraint name" do
130
- expected_names = ["fk_schema_plus_test2_members_group_id"]
131
- expected_names << "fk_schema_plus_test2_members_item_id" unless SchemaDev::Rspec::Helpers.mysql?
132
+ expected_names = ["fk_test2_members_groups"]
133
+ expected_names << "fk_test2_members_items" unless SchemaDev::Rspec::Helpers.mysql?
132
134
  expect(Member.foreign_keys.map(&:name).sort).to match_array(expected_names.sort)
133
135
  end
134
136
  end
@@ -1,23 +1,24 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'spec_helper'
2
4
  require 'stringio'
3
5
 
4
6
  describe "Schema dump" do
5
-
6
7
  before(:each) do
7
8
  ActiveRecord::Migration.suppress_messages do
8
9
  ActiveRecord::Schema.define do
9
- connection.tables.each do |table| drop_table table, force: :cascade end
10
+ connection.tables_only.each do |table| drop_table table, force: :cascade end
10
11
 
11
- create_table :users, :force => true do |t|
12
+ create_table :users, force: true do |t|
12
13
  t.string :login
13
14
  t.datetime :deleted_at
14
- t.integer :first_post_id, index: { unique: true }
15
+ t.references :first_post, index: { unique: true }
15
16
  end
16
17
 
17
- create_table :posts, :force => true do |t|
18
+ create_table :posts, force: true do |t|
18
19
  t.text :body
19
- t.integer :user_id
20
- t.integer :first_comment_id
20
+ t.references :user
21
+ t.references :first_comment
21
22
  t.string :string_no_default
22
23
  t.integer :short_id
23
24
  t.string :str_short
@@ -32,10 +33,10 @@ describe "Schema dump" do
32
33
  t.boolean :boolean_col
33
34
  end
34
35
 
35
- create_table :comments, :force => true do |t|
36
+ create_table :comments, force: true do |t|
36
37
  t.text :body
37
- t.integer :post_id
38
- t.integer :commenter_id
38
+ t.references :post
39
+ t.references :commenter
39
40
  end
40
41
  end
41
42
  end
@@ -53,25 +54,25 @@ describe "Schema dump" do
53
54
 
54
55
  it "should include foreign_key definition" do
55
56
  with_foreign_key Post, :user_id, :users, :id do
56
- expect(dump_posts).to match(%r{t.integer\s+"user_id".*foreign_key.*users})
57
+ expect(dump_posts).to match(%r{t.(integer|bigint)\s+"user_id".*foreign_key.*users})
57
58
  end
58
59
  end
59
60
 
60
61
  it "should include foreign_key name" do
61
- with_foreign_key Post, :user_id, :users, :id, :name => "yippee" do
62
+ with_foreign_key Post, :user_id, :users, :id, name: "yippee" do
62
63
  expect(dump_posts).to match(/user_id.*foreign_key.*users.*:name=>"yippee"/)
63
64
  end
64
65
  end
65
66
 
66
67
  it "should respect foreign key's primary key" do
67
68
  with_foreign_key Post, :user_id, :users, :first_post_id do
68
- expect(dump_posts).to match(%r{t.integer\s+"user_id".*foreign_key.*:primary_key=>"first_post_id"})
69
+ expect(dump_posts).to match(%r{t.(integer|bigint)\s+"user_id".*foreign_key.*:primary_key=>"first_post_id"})
69
70
  end
70
71
  end
71
72
 
72
73
 
73
74
  it "should include foreign_key exactly once" do
74
- with_foreign_key Post, :user_id, :users, :id, :name => "yippee" do
75
+ with_foreign_key Post, :user_id, :users, :id, name: "yippee" do
75
76
  expect(dump_posts.scan(/foreign_key.*yippee"/).length).to eq 1
76
77
  end
77
78
  end
@@ -97,7 +98,7 @@ describe "Schema dump" do
97
98
 
98
99
  it "should handle regexp in ignore_tables" do
99
100
  with_foreign_key Comment, :post_id, :posts, :id do
100
- dump = dump_schema(:ignore => /post/)
101
+ dump = dump_schema(ignore: /post/)
101
102
  expect(dump).to match(/create_table "comments"/)
102
103
  expect(dump).not_to match(/create_table "posts"/)
103
104
  end
@@ -106,12 +107,12 @@ describe "Schema dump" do
106
107
  end
107
108
 
108
109
  it "should include foreign_key options" do
109
- with_foreign_key Post, :user_id, :users, :id, :on_update => :cascade, :on_delete => :nullify do
110
- expect(dump_posts).to match(%q[t.integer\s*"user_id",.*:foreign_key=>{:references=>"users", :name=>"fk_posts_user_id", :on_update=>:cascade, :on_delete=>:nullify}])
110
+ with_foreign_key Post, :user_id, :users, :id, on_update: :cascade, on_delete: :nullify do
111
+ expect(dump_posts).to match(%q[t.(integer|bigint)\s*"user_id",.*:foreign_key=>{:references=>"users", :name=>"fk_rails_\w+", :on_update=>:cascade, :on_delete=>:nullify}])
111
112
  end
112
113
  end
113
114
 
114
- context "with cyclic foreign key constraints", :sqlite3 => :skip do
115
+ context "with cyclic foreign key constraints", sqlite3: :skip do
115
116
  before(:each) do
116
117
  ActiveRecord::Base.connection.add_foreign_key(Comment.table_name, User.table_name, column: :commenter_id)
117
118
  ActiveRecord::Base.connection.add_foreign_key(Comment.table_name, Post.table_name, column: :post_id)
@@ -143,33 +144,33 @@ describe "Schema dump" do
143
144
 
144
145
  ActiveRecord::Migration.suppress_messages do
145
146
  ActiveRecord::Schema.define do
146
- connection.tables.each do |table| drop_table table, force: :cascade end
147
+ connection.tables_only.each do |table| drop_table table, force: :cascade end
147
148
 
148
149
  create_table :grade_systems, force: true do |t|
149
- t.string :name
150
- t.integer :school_id
151
- t.integer :parent_id
152
- t.integer :profile_id
150
+ t.string :name
151
+ t.references :school
152
+ t.references :parent
153
+ t.references :profile
153
154
  end
154
155
 
155
156
  create_table :schools, force: true do |t|
156
- t.string :name
157
- t.integer :default_grade_system_id
157
+ t.string :name
158
+ t.references :default_grade_system
158
159
  end
159
160
 
160
161
  create_table :academic_years, force: true do |t|
161
- t.string :name
162
- t.integer :school_id
162
+ t.string :name
163
+ t.references :school
163
164
  end
164
165
 
165
166
  create_table :buildings, force: true do |t|
166
- t.string :name
167
- t.integer :school_id
167
+ t.string :name
168
+ t.references :school
168
169
  end
169
170
 
170
171
  create_table :profiles, force: true do |t|
171
- t.integer :school_id
172
- t.integer :building_id
172
+ t.references :school
173
+ t.references :building
173
174
  end
174
175
 
175
176
  end
@@ -215,12 +216,12 @@ describe "Schema dump" do
215
216
  def with_foreign_keys(model, columnsets)
216
217
  table_columns = model.columns.reject{|column| column.name == 'id'}
217
218
  ActiveRecord::Migration.suppress_messages do
218
- ActiveRecord::Migration.create_table model.table_name, :force => true do |t|
219
+ ActiveRecord::Migration.create_table model.table_name, force: true do |t|
219
220
  table_columns.each do |column|
220
- t.column column.name, column.type
221
+ t.column column.name, column.type, limit: column.limit
221
222
  end
222
223
  columnsets.each do |columns, referenced_table_name, referenced_columns, options|
223
- t.foreign_key columns, referenced_table_name, (options||{}).merge(primary_key: referenced_columns)
224
+ t.foreign_key referenced_table_name, **(options||{}).merge(column: columns, primary_key: referenced_columns)
224
225
  end
225
226
  end
226
227
  end
@@ -231,7 +232,7 @@ describe "Schema dump" do
231
232
  ActiveRecord::Migration.suppress_messages do
232
233
  ActiveRecord::Migration.create_table model.table_name, :force => true do |t|
233
234
  table_columns.each do |column|
234
- t.column column.name, column.type
235
+ t.column column.name, column.type, limit: column.limit
235
236
  end
236
237
  end
237
238
  end
data/spec/spec_helper.rb CHANGED
@@ -1,6 +1,8 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'simplecov'
2
- require 'simplecov-gem-profile'
3
- SimpleCov.start "gem"
4
+
5
+ SimpleCov.start
4
6
 
5
7
  $LOAD_PATH.unshift(File.dirname(__FILE__))
6
8
  $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
@@ -22,7 +24,7 @@ RSpec.configure do |config|
22
24
  begin
23
25
  example.run
24
26
  ensure
25
- ActiveRecord::Base.connection.tables.each do |table|
27
+ ActiveRecord::Base.connection.tables_only.each do |table|
26
28
  ActiveRecord::Migration.drop_table table, force: :cascade
27
29
  end
28
30
  end
@@ -48,7 +50,7 @@ def define_schema(config={}, &block)
48
50
  with_fk_config(config) do
49
51
  ActiveRecord::Migration.suppress_messages do
50
52
  ActiveRecord::Schema.define do
51
- connection.tables.each do |table|
53
+ connection.tables_only.each do |table|
52
54
  drop_table table, force: :cascade
53
55
  end
54
56
  instance_eval &block
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module SchemaPlus::Matchers
2
4
 
3
5
  class Reference
@@ -22,7 +24,7 @@ module SchemaPlus::Matchers
22
24
  @result.keep_if {|fk| fk.on_update == @on_update } if @on_update
23
25
  @result.keep_if {|fk| fk.on_delete == @on_delete } if @on_delete
24
26
  @result.keep_if {|fk| fk.deferrable == @deferrable } if @deferrable
25
- @result.keep_if {|fk| fk.name == @name } if @name
27
+ @result.keep_if {|fk| @name.is_a?(String) ? fk.name == @name : fk.name.match?(@name) } if @name
26
28
  !@result.empty?
27
29
  end
28
30
 
@@ -76,4 +78,3 @@ module SchemaPlus::Matchers
76
78
  end
77
79
 
78
80
  end
79
-
metadata CHANGED
@@ -1,99 +1,105 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: schema_plus_foreign_keys
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.6
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - ronen barzel
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-06-27 00:00:00.000000000 Z
11
+ date: 2022-05-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '4.2'
19
+ version: '5.2'
20
+ - - "<"
21
+ - !ruby/object:Gem::Version
22
+ version: '6.1'
20
23
  type: :runtime
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
23
26
  requirements:
24
- - - "~>"
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ version: '5.2'
30
+ - - "<"
25
31
  - !ruby/object:Gem::Version
26
- version: '4.2'
32
+ version: '6.1'
27
33
  - !ruby/object:Gem::Dependency
28
34
  name: schema_plus_core
29
35
  requirement: !ruby/object:Gem::Requirement
30
36
  requirements:
31
37
  - - "~>"
32
38
  - !ruby/object:Gem::Version
33
- version: '1.0'
39
+ version: 3.0.0
34
40
  type: :runtime
35
41
  prerelease: false
36
42
  version_requirements: !ruby/object:Gem::Requirement
37
43
  requirements:
38
44
  - - "~>"
39
45
  - !ruby/object:Gem::Version
40
- version: '1.0'
46
+ version: 3.0.0
41
47
  - !ruby/object:Gem::Dependency
42
- name: valuable
48
+ name: schema_plus_compatibility
43
49
  requirement: !ruby/object:Gem::Requirement
44
50
  requirements:
45
- - - ">="
51
+ - - "~>"
46
52
  - !ruby/object:Gem::Version
47
- version: '0'
53
+ version: 1.0.0
48
54
  type: :runtime
49
55
  prerelease: false
50
56
  version_requirements: !ruby/object:Gem::Requirement
51
57
  requirements:
52
- - - ">="
58
+ - - "~>"
53
59
  - !ruby/object:Gem::Version
54
- version: '0'
60
+ version: 1.0.0
55
61
  - !ruby/object:Gem::Dependency
56
- name: its-it
62
+ name: valuable
57
63
  requirement: !ruby/object:Gem::Requirement
58
64
  requirements:
59
- - - "~>"
65
+ - - ">="
60
66
  - !ruby/object:Gem::Version
61
- version: '1.2'
67
+ version: '0'
62
68
  type: :runtime
63
69
  prerelease: false
64
70
  version_requirements: !ruby/object:Gem::Requirement
65
71
  requirements:
66
- - - "~>"
72
+ - - ">="
67
73
  - !ruby/object:Gem::Version
68
- version: '1.2'
74
+ version: '0'
69
75
  - !ruby/object:Gem::Dependency
70
76
  name: bundler
71
77
  requirement: !ruby/object:Gem::Requirement
72
78
  requirements:
73
- - - "~>"
79
+ - - ">="
74
80
  - !ruby/object:Gem::Version
75
- version: '1.7'
81
+ version: '0'
76
82
  type: :development
77
83
  prerelease: false
78
84
  version_requirements: !ruby/object:Gem::Requirement
79
85
  requirements:
80
- - - "~>"
86
+ - - ">="
81
87
  - !ruby/object:Gem::Version
82
- version: '1.7'
88
+ version: '0'
83
89
  - !ruby/object:Gem::Dependency
84
90
  name: rake
85
91
  requirement: !ruby/object:Gem::Requirement
86
92
  requirements:
87
93
  - - "~>"
88
94
  - !ruby/object:Gem::Version
89
- version: '10.0'
95
+ version: '13.0'
90
96
  type: :development
91
97
  prerelease: false
92
98
  version_requirements: !ruby/object:Gem::Requirement
93
99
  requirements:
94
100
  - - "~>"
95
101
  - !ruby/object:Gem::Version
96
- version: '10.0'
102
+ version: '13.0'
97
103
  - !ruby/object:Gem::Dependency
98
104
  name: rspec
99
105
  requirement: !ruby/object:Gem::Requirement
@@ -114,42 +120,14 @@ dependencies:
114
120
  requirements:
115
121
  - - "~>"
116
122
  - !ruby/object:Gem::Version
117
- version: '3.5'
123
+ version: '4.1'
118
124
  type: :development
119
125
  prerelease: false
120
126
  version_requirements: !ruby/object:Gem::Requirement
121
127
  requirements:
122
128
  - - "~>"
123
129
  - !ruby/object:Gem::Version
124
- version: '3.5'
125
- - !ruby/object:Gem::Dependency
126
- name: simplecov
127
- requirement: !ruby/object:Gem::Requirement
128
- requirements:
129
- - - ">="
130
- - !ruby/object:Gem::Version
131
- version: '0'
132
- type: :development
133
- prerelease: false
134
- version_requirements: !ruby/object:Gem::Requirement
135
- requirements:
136
- - - ">="
137
- - !ruby/object:Gem::Version
138
- version: '0'
139
- - !ruby/object:Gem::Dependency
140
- name: simplecov-gem-profile
141
- requirement: !ruby/object:Gem::Requirement
142
- requirements:
143
- - - ">="
144
- - !ruby/object:Gem::Version
145
- version: '0'
146
- type: :development
147
- prerelease: false
148
- version_requirements: !ruby/object:Gem::Requirement
149
- requirements:
150
- - - ">="
151
- - !ruby/object:Gem::Version
152
- version: '0'
130
+ version: '4.1'
153
131
  description: 'Extended support for foreign key constraints in ActiveRecord, including:
154
132
  definition as column attribute; deferrable; and SQLite3 support; cleaner dumps;
155
133
  and more!'
@@ -159,27 +137,25 @@ executables: []
159
137
  extensions: []
160
138
  extra_rdoc_files: []
161
139
  files:
140
+ - ".github/workflows/prs.yml"
162
141
  - ".gitignore"
163
- - ".travis.yml"
142
+ - ".simplecov"
164
143
  - Gemfile
165
144
  - LICENSE.txt
166
145
  - README.md
167
146
  - Rakefile
168
147
  - gemfiles/Gemfile.base
169
- - gemfiles/activerecord-4.2.0/Gemfile.base
170
- - gemfiles/activerecord-4.2.0/Gemfile.mysql2
171
- - gemfiles/activerecord-4.2.0/Gemfile.postgresql
172
- - gemfiles/activerecord-4.2.0/Gemfile.sqlite3
173
- - gemfiles/activerecord-4.2.1/Gemfile.base
174
- - gemfiles/activerecord-4.2.1/Gemfile.mysql2
175
- - gemfiles/activerecord-4.2.1/Gemfile.postgresql
176
- - gemfiles/activerecord-4.2.1/Gemfile.sqlite3
177
- - gemfiles/activerecord-4.2.6/Gemfile.base
178
- - gemfiles/activerecord-4.2.6/Gemfile.mysql2
179
- - gemfiles/activerecord-4.2.6/Gemfile.postgresql
180
- - gemfiles/activerecord-4.2.6/Gemfile.sqlite3
148
+ - gemfiles/activerecord-5.2/Gemfile.base
149
+ - gemfiles/activerecord-5.2/Gemfile.mysql2
150
+ - gemfiles/activerecord-5.2/Gemfile.postgresql
151
+ - gemfiles/activerecord-5.2/Gemfile.sqlite3
152
+ - gemfiles/activerecord-6.0/Gemfile.base
153
+ - gemfiles/activerecord-6.0/Gemfile.mysql2
154
+ - gemfiles/activerecord-6.0/Gemfile.postgresql
155
+ - gemfiles/activerecord-6.0/Gemfile.sqlite3
181
156
  - lib/schema_plus/foreign_keys.rb
182
157
  - lib/schema_plus/foreign_keys/active_record/base.rb
158
+ - lib/schema_plus/foreign_keys/active_record/connection_adapters/abstract/schema_creation.rb
183
159
  - lib/schema_plus/foreign_keys/active_record/connection_adapters/abstract_adapter.rb
184
160
  - lib/schema_plus/foreign_keys/active_record/connection_adapters/foreign_key_definition.rb
185
161
  - lib/schema_plus/foreign_keys/active_record/connection_adapters/mysql2_adapter.rb
@@ -208,7 +184,7 @@ homepage: https://github.com/SchemaPlus/schema_plus_foreign_keys
208
184
  licenses:
209
185
  - MIT
210
186
  metadata: {}
211
- post_install_message:
187
+ post_install_message:
212
188
  rdoc_options: []
213
189
  require_paths:
214
190
  - lib
@@ -216,16 +192,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
216
192
  requirements:
217
193
  - - ">="
218
194
  - !ruby/object:Gem::Version
219
- version: '0'
195
+ version: 2.5.0
220
196
  required_rubygems_version: !ruby/object:Gem::Requirement
221
197
  requirements:
222
198
  - - ">="
223
199
  - !ruby/object:Gem::Version
224
200
  version: '0'
225
201
  requirements: []
226
- rubyforge_project:
227
- rubygems_version: 2.2.2
228
- signing_key:
202
+ rubygems_version: 3.0.8
203
+ signing_key:
229
204
  specification_version: 4
230
205
  summary: Extended support for foreign key constraints in ActiveRecord
231
206
  test_files:
data/.travis.yml DELETED
@@ -1,24 +0,0 @@
1
- # This file was auto-generated by the schema_dev tool, based on the data in
2
- # ./schema_dev.yml
3
- # Please do not edit this file; any changes will be overwritten next time
4
- # schema_dev gets run.
5
- ---
6
- sudo: false
7
- rvm:
8
- - 2.1.8
9
- gemfile:
10
- - gemfiles/activerecord-4.2.0/Gemfile.mysql2
11
- - gemfiles/activerecord-4.2.0/Gemfile.postgresql
12
- - gemfiles/activerecord-4.2.0/Gemfile.sqlite3
13
- - gemfiles/activerecord-4.2.1/Gemfile.mysql2
14
- - gemfiles/activerecord-4.2.1/Gemfile.postgresql
15
- - gemfiles/activerecord-4.2.1/Gemfile.sqlite3
16
- - gemfiles/activerecord-4.2.6/Gemfile.mysql2
17
- - gemfiles/activerecord-4.2.6/Gemfile.postgresql
18
- - gemfiles/activerecord-4.2.6/Gemfile.sqlite3
19
- env: POSTGRESQL_DB_USER=postgres MYSQL_DB_USER=travis
20
- addons:
21
- postgresql: '9.4'
22
- before_script: bundle exec rake create_databases
23
- after_script: bundle exec rake drop_databases
24
- script: bundle exec rake travis
@@ -1,3 +0,0 @@
1
- eval File.read File.expand_path('../../Gemfile.base', __FILE__)
2
-
3
- gem "activerecord", "4.2.0"
@@ -1,10 +0,0 @@
1
- require "pathname"
2
- eval(Pathname.new(__FILE__).dirname.join("Gemfile.base").read, binding)
3
-
4
- platform :ruby do
5
- gem 'mysql2', '~> 0.3.13'
6
- end
7
-
8
- platform :jruby do
9
- gem 'activerecord-jdbcmysql-adapter'
10
- end
@@ -1,10 +0,0 @@
1
- require "pathname"
2
- eval(Pathname.new(__FILE__).dirname.join("Gemfile.base").read, binding)
3
-
4
- platform :ruby do
5
- gem "pg"
6
- end
7
-
8
- platform :jruby do
9
- gem 'activerecord-jdbcpostgresql-adapter'
10
- end
@@ -1,3 +0,0 @@
1
- eval File.read File.expand_path('../../Gemfile.base', __FILE__)
2
-
3
- gem "activerecord", "4.2.1"
@@ -1,10 +0,0 @@
1
- require "pathname"
2
- eval(Pathname.new(__FILE__).dirname.join("Gemfile.base").read, binding)
3
-
4
- platform :ruby do
5
- gem 'mysql2', '~> 0.3.13'
6
- end
7
-
8
- platform :jruby do
9
- gem 'activerecord-jdbcmysql-adapter'
10
- end
@@ -1,10 +0,0 @@
1
- require "pathname"
2
- eval(Pathname.new(__FILE__).dirname.join("Gemfile.base").read, binding)
3
-
4
- platform :ruby do
5
- gem "pg"
6
- end
7
-
8
- platform :jruby do
9
- gem 'activerecord-jdbcpostgresql-adapter'
10
- end
@@ -1,10 +0,0 @@
1
- require "pathname"
2
- eval(Pathname.new(__FILE__).dirname.join("Gemfile.base").read, binding)
3
-
4
- platform :ruby do
5
- gem "sqlite3"
6
- end
7
-
8
- platform :jruby do
9
- gem 'activerecord-jdbcsqlite3-adapter', '>=1.3.0.beta2'
10
- end
@@ -1,3 +0,0 @@
1
- eval File.read File.expand_path('../../Gemfile.base', __FILE__)
2
-
3
- gem "activerecord", "4.2.6"
@@ -1,10 +0,0 @@
1
- require "pathname"
2
- eval(Pathname.new(__FILE__).dirname.join("Gemfile.base").read, binding)
3
-
4
- platform :ruby do
5
- gem "mysql2", '>= 0.3.18', '< 0.5'
6
- end
7
-
8
- platform :jruby do
9
- gem 'activerecord-jdbcmysql-adapter'
10
- end
@@ -1,10 +0,0 @@
1
- require "pathname"
2
- eval(Pathname.new(__FILE__).dirname.join("Gemfile.base").read, binding)
3
-
4
- platform :ruby do
5
- gem "pg"
6
- end
7
-
8
- platform :jruby do
9
- gem 'activerecord-jdbcpostgresql-adapter'
10
- end