schema_plus 1.8.9 → 2.0.0.pre1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitignore +4 -4
- data/.travis.yml +1 -47
- data/CHANGELOG.md +0 -35
- data/README.md +73 -107
- data/Rakefile +7 -10
- data/TODO.md +51 -0
- data/gemfiles/Gemfile.base +2 -0
- data/lib/schema_column_plus.rb +7 -0
- data/lib/{schema_plus → schema_column_plus}/active_record/connection_adapters/column.rb +13 -11
- data/lib/schema_column_plus/middleware/model.rb +22 -0
- data/lib/schema_db_default.rb +13 -0
- data/lib/{schema_plus → schema_db_default}/active_record/attribute.rb +4 -4
- data/lib/schema_db_default/db_default.rb +17 -0
- data/lib/schema_db_default/middleware.rb +30 -0
- data/lib/schema_default_expr.rb +32 -0
- data/lib/schema_default_expr/active_record/connection_adapters/mysql_adapter.rb +17 -0
- data/lib/schema_default_expr/active_record/connection_adapters/postgresql_adapter.rb +18 -0
- data/lib/schema_default_expr/active_record/connection_adapters/sqlite3_adapter.rb +35 -0
- data/lib/schema_default_expr/middleware.rb +54 -0
- data/lib/schema_pg_enums.rb +6 -0
- data/lib/schema_pg_enums/active_record.rb +69 -0
- data/lib/schema_pg_enums/middleware.rb +23 -0
- data/lib/schema_plus.rb +17 -45
- data/lib/schema_plus/active_record/base.rb +6 -23
- data/lib/schema_plus/active_record/connection_adapters/abstract_adapter.rb +80 -181
- data/lib/schema_plus/active_record/connection_adapters/foreign_key_definition.rb +78 -99
- data/lib/schema_plus/active_record/connection_adapters/mysql_adapter.rb +34 -114
- data/lib/schema_plus/active_record/connection_adapters/postgresql_adapter.rb +16 -370
- data/lib/schema_plus/active_record/connection_adapters/schema_statements.rb +1 -67
- data/lib/schema_plus/active_record/connection_adapters/sqlite3_adapter.rb +18 -112
- data/lib/schema_plus/active_record/connection_adapters/table_definition.rb +14 -116
- data/lib/schema_plus/active_record/migration/command_recorder.rb +8 -59
- data/lib/schema_plus/middleware/dumper.rb +94 -0
- data/lib/schema_plus/middleware/migration.rb +167 -0
- data/lib/schema_plus/middleware/model.rb +17 -0
- data/lib/schema_plus/version.rb +1 -1
- data/lib/schema_plus_tables.rb +15 -0
- data/lib/schema_plus_tables/active_record/connection_adapters/abstract_adapter.rb +20 -0
- data/lib/schema_plus_tables/active_record/connection_adapters/mysql_adapter.rb +25 -0
- data/lib/schema_plus_tables/active_record/connection_adapters/postgresql_adapter.rb +13 -0
- data/lib/schema_plus_tables/active_record/connection_adapters/sqlite3_adapter.rb +12 -0
- data/lib/schema_views.rb +16 -0
- data/lib/schema_views/active_record/connection_adapters/abstract_adapter.rb +41 -0
- data/lib/schema_views/active_record/connection_adapters/mysql_adapter.rb +30 -0
- data/lib/schema_views/active_record/connection_adapters/postgresql_adapter.rb +31 -0
- data/lib/schema_views/active_record/connection_adapters/sqlite3_adapter.rb +18 -0
- data/lib/schema_views/middleware.rb +47 -0
- data/schema_dev.yml +1 -31
- data/schema_plus.gemspec +11 -9
- data/spec/foreign_key_definition_spec.rb +7 -7
- data/spec/foreign_key_spec.rb +63 -48
- data/spec/migration_spec.rb +58 -203
- data/spec/named_schemas_spec.rb +5 -88
- data/spec/{column_spec.rb → schema_column_plus/column_spec.rb} +26 -48
- data/spec/schema_db_default/column_spec.rb +58 -0
- data/spec/{column_default_spec.rb → schema_default_expr/column_default_spec.rb} +1 -2
- data/spec/schema_default_expr/schema_dumper_spec.rb +116 -0
- data/spec/schema_dumper_spec.rb +22 -327
- data/spec/{enum_spec.rb → schema_pg_enums/enum_spec.rb} +1 -1
- data/spec/schema_pg_enums/schema_dumper_spec.rb +37 -0
- data/spec/schema_views/named_schemas_spec.rb +97 -0
- data/spec/{views_spec.rb → schema_views/views_spec.rb} +1 -1
- data/spec/spec_helper.rb +2 -1
- data/spec/support/matchers/reference.rb +11 -12
- metadata +104 -57
- data/gemfiles/rails-3.2/Gemfile.base +0 -3
- data/gemfiles/rails-3.2/Gemfile.mysql +0 -10
- data/gemfiles/rails-3.2/Gemfile.mysql2 +0 -10
- data/gemfiles/rails-3.2/Gemfile.postgresql +0 -10
- data/gemfiles/rails-3.2/Gemfile.sqlite3 +0 -10
- data/gemfiles/rails-4.0/Gemfile.base +0 -3
- data/gemfiles/rails-4.0/Gemfile.mysql2 +0 -10
- data/gemfiles/rails-4.0/Gemfile.postgresql +0 -10
- data/gemfiles/rails-4.0/Gemfile.sqlite3 +0 -10
- data/gemfiles/rails-4.1/Gemfile.base +0 -3
- data/gemfiles/rails-4.1/Gemfile.mysql2 +0 -10
- data/gemfiles/rails-4.1/Gemfile.postgresql +0 -10
- data/gemfiles/rails-4.1/Gemfile.sqlite3 +0 -10
- data/lib/schema_plus/active_record/column_options_handler.rb +0 -117
- data/lib/schema_plus/active_record/connection_adapters/index_definition.rb +0 -70
- data/lib/schema_plus/active_record/db_default.rb +0 -19
- data/lib/schema_plus/active_record/foreign_keys.rb +0 -137
- data/lib/schema_plus/active_record/schema_dumper.rb +0 -171
- data/lib/schema_plus/railtie.rb +0 -20
- data/spec/index_definition_spec.rb +0 -211
- data/spec/index_spec.rb +0 -249
@@ -0,0 +1,37 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
require 'stringio'
|
3
|
+
|
4
|
+
describe "Schema dump" do
|
5
|
+
|
6
|
+
context 'with enum', :postgresql => :only do
|
7
|
+
let(:connection) { ActiveRecord::Base.connection }
|
8
|
+
|
9
|
+
it 'should include enum' do
|
10
|
+
begin
|
11
|
+
connection.execute "CREATE TYPE color AS ENUM ('red', 'green', 'blue')"
|
12
|
+
expect(dump_schema).to match(%r{create_enum "color", "red", "green", "blue"})
|
13
|
+
ensure
|
14
|
+
connection.execute "DROP TYPE color"
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
it 'should include enum with schema' do
|
19
|
+
begin
|
20
|
+
connection.execute "CREATE SCHEMA cmyk; CREATE TYPE cmyk.color AS ENUM ('cyan', 'magenta', 'yellow', 'black')"
|
21
|
+
expect(dump_schema).to match(%r{create_enum "color", "cyan", "magenta", "yellow", "black", :schema => "cmyk"})
|
22
|
+
ensure
|
23
|
+
connection.execute "DROP SCHEMA cmyk CASCADE"
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
protected
|
29
|
+
|
30
|
+
def dump_schema(opts={})
|
31
|
+
stream = StringIO.new
|
32
|
+
ActiveRecord::SchemaDumper.ignore_tables = Array.wrap(opts[:ignore]) || []
|
33
|
+
ActiveRecord::SchemaDumper.dump(ActiveRecord::Base.connection, stream)
|
34
|
+
stream.string
|
35
|
+
end
|
36
|
+
|
37
|
+
end
|
@@ -0,0 +1,97 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe "with multiple schemas" do
|
4
|
+
def connection
|
5
|
+
ActiveRecord::Base.connection
|
6
|
+
end
|
7
|
+
|
8
|
+
before(:all) do
|
9
|
+
newdb = case connection.adapter_name
|
10
|
+
when /^mysql/i then "CREATE SCHEMA IF NOT EXISTS schema_views_test2"
|
11
|
+
when /^postgresql/i then "CREATE SCHEMA schema_views_test2"
|
12
|
+
when /^sqlite/i then "ATTACH ':memory:' AS schema_views_test2"
|
13
|
+
end
|
14
|
+
begin
|
15
|
+
ActiveRecord::Base.connection.execute newdb
|
16
|
+
rescue ActiveRecord::StatementInvalid => e
|
17
|
+
raise unless e.message =~ /already exists/
|
18
|
+
end
|
19
|
+
|
20
|
+
class User < ::ActiveRecord::Base ; end
|
21
|
+
end
|
22
|
+
|
23
|
+
before(:each) do
|
24
|
+
define_schema(:auto_create => false) do
|
25
|
+
create_table :users, :force => true do |t|
|
26
|
+
t.string :login
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
connection.execute 'DROP TABLE IF EXISTS schema_views_test2.users'
|
31
|
+
connection.execute 'CREATE TABLE schema_views_test2.users (id ' + case connection.adapter_name
|
32
|
+
when /^mysql/i then "integer primary key auto_increment"
|
33
|
+
when /^postgresql/i then "serial primary key"
|
34
|
+
when /^sqlite/i then "integer primary key autoincrement"
|
35
|
+
end + ", login varchar(255))"
|
36
|
+
end
|
37
|
+
|
38
|
+
context "with views in each schema" do
|
39
|
+
around(:each) do |example|
|
40
|
+
begin
|
41
|
+
example.run
|
42
|
+
ensure
|
43
|
+
connection.execute 'DROP VIEW schema_views_test2.myview' rescue nil
|
44
|
+
connection.execute 'DROP VIEW myview' rescue nil
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
48
|
+
before(:each) do
|
49
|
+
connection.views.each { |view| connection.drop_view view }
|
50
|
+
connection.execute 'CREATE VIEW schema_views_test2.myview AS SELECT * FROM users'
|
51
|
+
end
|
52
|
+
|
53
|
+
it "should not find views in other schema" do
|
54
|
+
expect(connection.views).to be_empty
|
55
|
+
end
|
56
|
+
|
57
|
+
it "should find views in this schema" do
|
58
|
+
connection.execute 'CREATE VIEW myview AS SELECT * FROM users'
|
59
|
+
expect(connection.views).to eq(['myview'])
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
context "when using PostGIS", :postgresql => :only do
|
64
|
+
before(:all) do
|
65
|
+
begin
|
66
|
+
connection.execute "CREATE SCHEMA postgis"
|
67
|
+
rescue ActiveRecord::StatementInvalid => e
|
68
|
+
raise unless e.message =~ /already exists/
|
69
|
+
end
|
70
|
+
end
|
71
|
+
|
72
|
+
around(:each) do |example|
|
73
|
+
begin
|
74
|
+
connection.execute "SET search_path to '$user','public','postgis'"
|
75
|
+
example.run
|
76
|
+
ensure
|
77
|
+
connection.execute "SET search_path to '$user','public'"
|
78
|
+
end
|
79
|
+
end
|
80
|
+
|
81
|
+
before(:each) do
|
82
|
+
allow(connection).to receive(:adapter_name).and_return('PostGIS')
|
83
|
+
end
|
84
|
+
|
85
|
+
it "should hide views in postgis schema" do
|
86
|
+
begin
|
87
|
+
connection.create_view "postgis.hidden", "select 1", :force => true
|
88
|
+
connection.create_view :myview, "select 2", :force => true
|
89
|
+
expect(connection.views).to eq(["myview"])
|
90
|
+
ensure
|
91
|
+
connection.execute 'DROP VIEW postgis.hidden' rescue nil
|
92
|
+
connection.execute 'DROP VIEW myview' rescue nil
|
93
|
+
end
|
94
|
+
end
|
95
|
+
end
|
96
|
+
|
97
|
+
end
|
data/spec/spec_helper.rb
CHANGED
@@ -13,7 +13,7 @@ require 'schema_plus'
|
|
13
13
|
require 'schema_dev/rspec'
|
14
14
|
require 'its-it'
|
15
15
|
|
16
|
-
SchemaDev::Rspec.
|
16
|
+
SchemaDev::Rspec.setup
|
17
17
|
|
18
18
|
Dir[File.dirname(__FILE__) + "/support/**/*.rb"].each {|f| require f}
|
19
19
|
|
@@ -60,3 +60,4 @@ def remove_all_models
|
|
60
60
|
end
|
61
61
|
|
62
62
|
SimpleCov.command_name "[ruby #{RUBY_VERSION} - ActiveRecord #{::ActiveRecord::VERSION::STRING} - #{ActiveRecord::Base.connection.adapter_name}]"
|
63
|
+
|
@@ -2,24 +2,23 @@ module SchemaPlusMatchers
|
|
2
2
|
|
3
3
|
class Reference
|
4
4
|
def initialize(expected)
|
5
|
-
@
|
5
|
+
@column = @on_update = @on_delete = @deferrable = @name = @to_table = @primary_key = nil
|
6
6
|
unless expected.empty?
|
7
|
-
@
|
8
|
-
@references_table_name = @references_column_names.shift
|
7
|
+
@to_table, @primary_key = Array(expected).map(&:to_s)
|
9
8
|
end
|
10
9
|
end
|
11
10
|
|
12
11
|
def matches?(model)
|
13
12
|
@model = model
|
14
|
-
if @
|
13
|
+
if @to_table
|
15
14
|
@result = @model.foreign_keys.select do |fk|
|
16
|
-
fk.
|
17
|
-
@
|
15
|
+
fk.to_table == @to_table &&
|
16
|
+
@primary_key.blank? ? true : fk.primary_key == @primary_key
|
18
17
|
end
|
19
18
|
else
|
20
19
|
@result = @model.foreign_keys
|
21
20
|
end
|
22
|
-
@result.keep_if {|fk| fk.
|
21
|
+
@result.keep_if {|fk| Array.wrap(fk.column) == @column } if @column
|
23
22
|
@result.keep_if {|fk| fk.on_update == @on_update } if @on_update
|
24
23
|
@result.keep_if {|fk| fk.on_delete == @on_delete } if @on_delete
|
25
24
|
@result.keep_if {|fk| fk.deferrable == @deferrable } if @deferrable
|
@@ -28,10 +27,10 @@ module SchemaPlusMatchers
|
|
28
27
|
end
|
29
28
|
|
30
29
|
def failure_message(should_not = false)
|
31
|
-
|
32
|
-
|
30
|
+
target_column = @column.present? ? "(#{Array.wrap(@column).join(', ')})" : ""
|
31
|
+
destinantion_column = @to_table ? "#{@to_table}(#{Array.wrap(@primary_key).join(', ')})" : "anything"
|
33
32
|
invert = should_not ? 'not' : ''
|
34
|
-
msg = "Expected #{@model.table_name}#{
|
33
|
+
msg = "Expected #{@model.table_name}#{target_column} to #{invert} reference #{destinantion_column}"
|
35
34
|
with = []
|
36
35
|
with << "on_update=#{@on_update.inspect}" if @on_update
|
37
36
|
with << "on_delete=#{@on_delete.inspect}" if @on_delete
|
@@ -45,8 +44,8 @@ module SchemaPlusMatchers
|
|
45
44
|
failure_message(true)
|
46
45
|
end
|
47
46
|
|
48
|
-
def on(*
|
49
|
-
@
|
47
|
+
def on(*column)
|
48
|
+
@column = column.collect(&:to_s)
|
50
49
|
self
|
51
50
|
end
|
52
51
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: schema_plus
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 2.0.0.pre1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ronen Barzel
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2015-
|
12
|
+
date: 2015-01-26 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: activerecord
|
@@ -18,9 +18,9 @@ dependencies:
|
|
18
18
|
- - ">="
|
19
19
|
- !ruby/object:Gem::Version
|
20
20
|
version: '3.2'
|
21
|
-
- - "
|
21
|
+
- - "<"
|
22
22
|
- !ruby/object:Gem::Version
|
23
|
-
version: 4.
|
23
|
+
version: '4.3'
|
24
24
|
type: :runtime
|
25
25
|
prerelease: false
|
26
26
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -28,9 +28,9 @@ dependencies:
|
|
28
28
|
- - ">="
|
29
29
|
- !ruby/object:Gem::Version
|
30
30
|
version: '3.2'
|
31
|
-
- - "
|
31
|
+
- - "<"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 4.
|
33
|
+
version: '4.3'
|
34
34
|
- !ruby/object:Gem::Dependency
|
35
35
|
name: valuable
|
36
36
|
requirement: !ruby/object:Gem::Requirement
|
@@ -45,20 +45,68 @@ dependencies:
|
|
45
45
|
- - ">="
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: '0'
|
48
|
+
- !ruby/object:Gem::Dependency
|
49
|
+
name: schema_monkey
|
50
|
+
requirement: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0.1'
|
55
|
+
type: :runtime
|
56
|
+
prerelease: false
|
57
|
+
version_requirements: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - "~>"
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0.1'
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
name: schema_plus_indexes
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - "~>"
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0.1'
|
69
|
+
type: :runtime
|
70
|
+
prerelease: false
|
71
|
+
version_requirements: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - "~>"
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0.1'
|
76
|
+
- !ruby/object:Gem::Dependency
|
77
|
+
name: schema_plus_pg_indexes
|
78
|
+
requirement: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - "~>"
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0.1'
|
83
|
+
type: :runtime
|
84
|
+
prerelease: false
|
85
|
+
version_requirements: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - "~>"
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0.1'
|
48
90
|
- !ruby/object:Gem::Dependency
|
49
91
|
name: schema_dev
|
50
92
|
requirement: !ruby/object:Gem::Requirement
|
51
93
|
requirements:
|
52
94
|
- - "~>"
|
53
95
|
- !ruby/object:Gem::Version
|
54
|
-
version: '
|
96
|
+
version: '2.0'
|
97
|
+
- - ">="
|
98
|
+
- !ruby/object:Gem::Version
|
99
|
+
version: 2.0.3
|
55
100
|
type: :development
|
56
101
|
prerelease: false
|
57
102
|
version_requirements: !ruby/object:Gem::Requirement
|
58
103
|
requirements:
|
59
104
|
- - "~>"
|
60
105
|
- !ruby/object:Gem::Version
|
61
|
-
version: '
|
106
|
+
version: '2.0'
|
107
|
+
- - ">="
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: 2.0.3
|
62
110
|
- !ruby/object:Gem::Dependency
|
63
111
|
name: rake
|
64
112
|
requirement: !ruby/object:Gem::Requirement
|
@@ -129,20 +177,6 @@ dependencies:
|
|
129
177
|
- - ">="
|
130
178
|
- !ruby/object:Gem::Version
|
131
179
|
version: '0'
|
132
|
-
- !ruby/object:Gem::Dependency
|
133
|
-
name: its-it
|
134
|
-
requirement: !ruby/object:Gem::Requirement
|
135
|
-
requirements:
|
136
|
-
- - ">="
|
137
|
-
- !ruby/object:Gem::Version
|
138
|
-
version: '0'
|
139
|
-
type: :development
|
140
|
-
prerelease: false
|
141
|
-
version_requirements: !ruby/object:Gem::Requirement
|
142
|
-
requirements:
|
143
|
-
- - ">="
|
144
|
-
- !ruby/object:Gem::Version
|
145
|
-
version: '0'
|
146
180
|
description: 'SchemaPlus is an ActiveRecord extension that provides enhanced capabilities
|
147
181
|
for schema definition and querying, including: enhanced and more DRY index capabilities,
|
148
182
|
support and automation for foreign key constraints, and support for views.'
|
@@ -161,68 +195,79 @@ files:
|
|
161
195
|
- MIT-LICENSE
|
162
196
|
- README.md
|
163
197
|
- Rakefile
|
198
|
+
- TODO.md
|
164
199
|
- gemfiles/Gemfile.base
|
165
|
-
- gemfiles/rails-3.2/Gemfile.base
|
166
|
-
- gemfiles/rails-3.2/Gemfile.mysql
|
167
|
-
- gemfiles/rails-3.2/Gemfile.mysql2
|
168
|
-
- gemfiles/rails-3.2/Gemfile.postgresql
|
169
|
-
- gemfiles/rails-3.2/Gemfile.sqlite3
|
170
|
-
- gemfiles/rails-4.0/Gemfile.base
|
171
|
-
- gemfiles/rails-4.0/Gemfile.mysql2
|
172
|
-
- gemfiles/rails-4.0/Gemfile.postgresql
|
173
|
-
- gemfiles/rails-4.0/Gemfile.sqlite3
|
174
|
-
- gemfiles/rails-4.1/Gemfile.base
|
175
|
-
- gemfiles/rails-4.1/Gemfile.mysql2
|
176
|
-
- gemfiles/rails-4.1/Gemfile.postgresql
|
177
|
-
- gemfiles/rails-4.1/Gemfile.sqlite3
|
178
200
|
- gemfiles/rails-4.2/Gemfile.base
|
179
201
|
- gemfiles/rails-4.2/Gemfile.mysql2
|
180
202
|
- gemfiles/rails-4.2/Gemfile.postgresql
|
181
203
|
- gemfiles/rails-4.2/Gemfile.sqlite3
|
182
204
|
- init.rb
|
183
205
|
- lib/rails/tasks/database.rake
|
206
|
+
- lib/schema_column_plus.rb
|
207
|
+
- lib/schema_column_plus/active_record/connection_adapters/column.rb
|
208
|
+
- lib/schema_column_plus/middleware/model.rb
|
209
|
+
- lib/schema_db_default.rb
|
210
|
+
- lib/schema_db_default/active_record/attribute.rb
|
211
|
+
- lib/schema_db_default/db_default.rb
|
212
|
+
- lib/schema_db_default/middleware.rb
|
213
|
+
- lib/schema_default_expr.rb
|
214
|
+
- lib/schema_default_expr/active_record/connection_adapters/mysql_adapter.rb
|
215
|
+
- lib/schema_default_expr/active_record/connection_adapters/postgresql_adapter.rb
|
216
|
+
- lib/schema_default_expr/active_record/connection_adapters/sqlite3_adapter.rb
|
217
|
+
- lib/schema_default_expr/middleware.rb
|
218
|
+
- lib/schema_pg_enums.rb
|
219
|
+
- lib/schema_pg_enums/active_record.rb
|
220
|
+
- lib/schema_pg_enums/middleware.rb
|
184
221
|
- lib/schema_plus.rb
|
185
|
-
- lib/schema_plus/active_record/attribute.rb
|
186
222
|
- lib/schema_plus/active_record/base.rb
|
187
|
-
- lib/schema_plus/active_record/column_options_handler.rb
|
188
223
|
- lib/schema_plus/active_record/connection_adapters/abstract_adapter.rb
|
189
|
-
- lib/schema_plus/active_record/connection_adapters/column.rb
|
190
224
|
- lib/schema_plus/active_record/connection_adapters/foreign_key_definition.rb
|
191
|
-
- lib/schema_plus/active_record/connection_adapters/index_definition.rb
|
192
225
|
- lib/schema_plus/active_record/connection_adapters/mysql_adapter.rb
|
193
226
|
- lib/schema_plus/active_record/connection_adapters/postgresql_adapter.rb
|
194
227
|
- lib/schema_plus/active_record/connection_adapters/schema_statements.rb
|
195
228
|
- lib/schema_plus/active_record/connection_adapters/sqlite3_adapter.rb
|
196
229
|
- lib/schema_plus/active_record/connection_adapters/table_definition.rb
|
197
|
-
- lib/schema_plus/active_record/db_default.rb
|
198
|
-
- lib/schema_plus/active_record/foreign_keys.rb
|
199
230
|
- lib/schema_plus/active_record/migration/command_recorder.rb
|
200
231
|
- lib/schema_plus/active_record/schema.rb
|
201
|
-
- lib/schema_plus/
|
202
|
-
- lib/schema_plus/
|
232
|
+
- lib/schema_plus/middleware/dumper.rb
|
233
|
+
- lib/schema_plus/middleware/migration.rb
|
234
|
+
- lib/schema_plus/middleware/model.rb
|
203
235
|
- lib/schema_plus/version.rb
|
236
|
+
- lib/schema_plus_tables.rb
|
237
|
+
- lib/schema_plus_tables/active_record/connection_adapters/abstract_adapter.rb
|
238
|
+
- lib/schema_plus_tables/active_record/connection_adapters/mysql_adapter.rb
|
239
|
+
- lib/schema_plus_tables/active_record/connection_adapters/postgresql_adapter.rb
|
240
|
+
- lib/schema_plus_tables/active_record/connection_adapters/sqlite3_adapter.rb
|
241
|
+
- lib/schema_views.rb
|
242
|
+
- lib/schema_views/active_record/connection_adapters/abstract_adapter.rb
|
243
|
+
- lib/schema_views/active_record/connection_adapters/mysql_adapter.rb
|
244
|
+
- lib/schema_views/active_record/connection_adapters/postgresql_adapter.rb
|
245
|
+
- lib/schema_views/active_record/connection_adapters/sqlite3_adapter.rb
|
246
|
+
- lib/schema_views/middleware.rb
|
204
247
|
- schema_dev.yml
|
205
248
|
- schema_plus.gemspec
|
206
|
-
- spec/column_default_spec.rb
|
207
|
-
- spec/column_spec.rb
|
208
249
|
- spec/connection_spec.rb
|
209
|
-
- spec/enum_spec.rb
|
210
250
|
- spec/foreign_key_definition_spec.rb
|
211
251
|
- spec/foreign_key_spec.rb
|
212
|
-
- spec/index_definition_spec.rb
|
213
|
-
- spec/index_spec.rb
|
214
252
|
- spec/migration_spec.rb
|
215
253
|
- spec/named_schemas_spec.rb
|
216
254
|
- spec/schema/auto_schema.rb
|
217
255
|
- spec/schema/core_schema.rb
|
256
|
+
- spec/schema_column_plus/column_spec.rb
|
257
|
+
- spec/schema_db_default/column_spec.rb
|
258
|
+
- spec/schema_default_expr/column_default_spec.rb
|
259
|
+
- spec/schema_default_expr/schema_dumper_spec.rb
|
218
260
|
- spec/schema_dumper_spec.rb
|
261
|
+
- spec/schema_pg_enums/enum_spec.rb
|
262
|
+
- spec/schema_pg_enums/schema_dumper_spec.rb
|
219
263
|
- spec/schema_spec.rb
|
264
|
+
- spec/schema_views/named_schemas_spec.rb
|
265
|
+
- spec/schema_views/views_spec.rb
|
220
266
|
- spec/spec_helper.rb
|
221
267
|
- spec/support/helpers.rb
|
222
268
|
- spec/support/matchers/automatic_foreign_key_matchers.rb
|
223
269
|
- spec/support/matchers/have_index.rb
|
224
270
|
- spec/support/matchers/reference.rb
|
225
|
-
- spec/views_spec.rb
|
226
271
|
homepage: https://github.com/SchemaPlus/schema_plus
|
227
272
|
licenses:
|
228
273
|
- MIT
|
@@ -238,9 +283,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
238
283
|
version: 1.9.2
|
239
284
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
240
285
|
requirements:
|
241
|
-
- - "
|
286
|
+
- - ">"
|
242
287
|
- !ruby/object:Gem::Version
|
243
|
-
version:
|
288
|
+
version: 1.3.1
|
244
289
|
requirements: []
|
245
290
|
rubyforge_project: schema_plus
|
246
291
|
rubygems_version: 2.2.2
|
@@ -249,23 +294,25 @@ specification_version: 4
|
|
249
294
|
summary: Enhances ActiveRecord schema mechanism, including more DRY index creation
|
250
295
|
and support for foreign key constraints and views.
|
251
296
|
test_files:
|
252
|
-
- spec/column_default_spec.rb
|
253
|
-
- spec/column_spec.rb
|
254
297
|
- spec/connection_spec.rb
|
255
|
-
- spec/enum_spec.rb
|
256
298
|
- spec/foreign_key_definition_spec.rb
|
257
299
|
- spec/foreign_key_spec.rb
|
258
|
-
- spec/index_definition_spec.rb
|
259
|
-
- spec/index_spec.rb
|
260
300
|
- spec/migration_spec.rb
|
261
301
|
- spec/named_schemas_spec.rb
|
262
302
|
- spec/schema/auto_schema.rb
|
263
303
|
- spec/schema/core_schema.rb
|
304
|
+
- spec/schema_column_plus/column_spec.rb
|
305
|
+
- spec/schema_db_default/column_spec.rb
|
306
|
+
- spec/schema_default_expr/column_default_spec.rb
|
307
|
+
- spec/schema_default_expr/schema_dumper_spec.rb
|
264
308
|
- spec/schema_dumper_spec.rb
|
309
|
+
- spec/schema_pg_enums/enum_spec.rb
|
310
|
+
- spec/schema_pg_enums/schema_dumper_spec.rb
|
265
311
|
- spec/schema_spec.rb
|
312
|
+
- spec/schema_views/named_schemas_spec.rb
|
313
|
+
- spec/schema_views/views_spec.rb
|
266
314
|
- spec/spec_helper.rb
|
267
315
|
- spec/support/helpers.rb
|
268
316
|
- spec/support/matchers/automatic_foreign_key_matchers.rb
|
269
317
|
- spec/support/matchers/have_index.rb
|
270
318
|
- spec/support/matchers/reference.rb
|
271
|
-
- spec/views_spec.rb
|