schema_plus 2.0.0.pre7 → 2.0.0.pre8

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: aaba43d34df0accaa981d624082fa7e8f8179029
4
- data.tar.gz: da8fb2f9b6aa8c36e55449889304c07450f639d1
3
+ metadata.gz: 0f841ad3a38cc1fc65ca2ddf36fdd44568165445
4
+ data.tar.gz: bc199b47eb9924938016e662d9c060417fa817ba
5
5
  SHA512:
6
- metadata.gz: 2c211b1b568712234f41659aae7c42d7aceae6e749c9445453eb115cdb4c9fb20055ee9e25dc1639626d3ba0530f53336bbd7e41ceae20c75d16335fce0335b8
7
- data.tar.gz: 368cacb87bd95602fb2b7ab3d641c8f9988553c878d7c1835693411c191adf25ebac4462de0db229e7bc24954f08acbb70615916818a97c1f53de221de11b16e
6
+ metadata.gz: 0b081af031147830bde1beba8c2481ec9c987b8d8d529b1383cf234e900bfec973ef9adfa5123df5d919975da4a91ef3680fc8553874698b0cb7830bbfc64933
7
+ data.tar.gz: 91e463eea4332315156e6a1444f5b599f496f72211c2b907191f749b3c4b0e19283759d643c649e023de7d19b6699a54ea8e276273ac2433e9a34f78bc4f0d3c
data/README.md CHANGED
@@ -24,7 +24,7 @@ Gem | Description | Included In `schema_plus` gem?
24
24
  <p style="color:grey">schema_plus_foreign_keys | Extended support for foreign keys, including creation as column options, `:deferrable`, and SQLite3 support | Y
25
25
  [schema_plus_indexes](https://github.com/SchemaPlus/schema_plus_indexes) | Convenience and consistency in using indexes | Y
26
26
  [schema_plus_pg_indexes](https://github.com/SchemaPlus/schema_plus_pg_indexes) |PostgreSQL index features: `case_insenstive`, `expression` and `operator_class` | Y
27
- [schema_plus_tables](https://github.com/SchemaPlus/schema_plus_views) | Convenience and consistency in using tables | Y
27
+ [schema_plus_tables](https://github.com/SchemaPlus/schema_plus_tables) | Convenience and consistency in using tables | Y
28
28
  [schema_plus_views](https://github.com/SchemaPlus/schema_plus_views) | Create and drop views in migrations | Y
29
29
  [schema_validations](https://github.com/SchemaPlus/schema_validations) | Automatically defines ActiveRecord validations based on database constraints |
30
30
 
@@ -95,8 +95,6 @@ or in a Gemfile
95
95
 
96
96
  gem "schema_plus"
97
97
 
98
- `schema_plus` includes [schema_monkey_rails](https://github.com/SchemaPlus/schema_monkey_rails) so it will automatically be inserted in Rails apps. To use with Padrino, see [schema_monkey_padrino](https://github.com/SchemaPlus/schema_monkey_padrino)
99
-
100
98
  ## History
101
99
 
102
100
  * See [CHANGELOG](CHANGELOG.md) for per-version release notes.
data/lib/schema_plus.rb CHANGED
@@ -1,4 +1,3 @@
1
- require 'schema_monkey_rails'
2
1
  require 'schema_plus/columns'
3
2
  require 'schema_plus/db_default'
4
3
  require 'schema_plus/default_expr'
@@ -5,13 +5,13 @@ require_relative 'foreign_keys/version'
5
5
  require_relative 'foreign_keys/active_record/base'
6
6
  require_relative 'foreign_keys/active_record/connection_adapters/abstract_adapter'
7
7
  require_relative 'foreign_keys/active_record/connection_adapters/table_definition'
8
- require_relative 'foreign_keys/active_record/schema'
9
8
  require_relative 'foreign_keys/active_record/connection_adapters/foreign_key_definition'
10
9
  require_relative 'foreign_keys/active_record/migration/command_recorder'
11
10
  require_relative 'foreign_keys/middleware/dumper'
12
11
  require_relative 'foreign_keys/middleware/migration'
13
12
  require_relative 'foreign_keys/middleware/model'
14
13
  require_relative 'foreign_keys/middleware/mysql'
14
+ require_relative 'foreign_keys/middleware/schema'
15
15
  require_relative 'foreign_keys/middleware/sql'
16
16
 
17
17
  module SchemaPlus::ForeignKeys
@@ -18,13 +18,13 @@ module SchemaPlus::ForeignKeys
18
18
  end
19
19
 
20
20
  def reset_foreign_key_information
21
- @foreign_keys = nil
21
+ @foreign_keys = @reverse_foreign_keys = nil
22
22
  end
23
23
 
24
24
  # Returns a list of ForeignKeyDefinition objects, for each foreign
25
25
  # key constraint of other tables that refer to this model's table
26
26
  def reverse_foreign_keys
27
- connection.reverse_foreign_keys(table_name, "#{name} Reverse Foreign Keys")
27
+ @reverse_foreign_keys ||= connection.reverse_foreign_keys(table_name, "#{name} Reverse Foreign Keys")
28
28
  end
29
29
 
30
30
  end
@@ -12,19 +12,6 @@ module SchemaPlus::ForeignKeys
12
12
  #
13
13
  module AbstractAdapter
14
14
 
15
- def create_table(table, options = {})
16
- options = options.dup
17
- config_options = options.delete(:foreign_keys) || {}
18
-
19
- # override rails' :force to cascade
20
- # drop_table(table, if_exists: true, force: true) if options.delete(:force)
21
-
22
- super(table, options) do |table_definition|
23
- table_definition.schema_plus_config = SchemaPlus::ForeignKeys.config.merge(config_options)
24
- yield table_definition if block_given?
25
- end
26
- end
27
-
28
15
  # Define a foreign key constraint. Valid options are :on_update,
29
16
  # :on_delete, and :deferrable, with values as described at
30
17
  # ConnectionAdapters::ForeignKeyDefinition
@@ -18,22 +18,22 @@ module SchemaPlus::ForeignKeys
18
18
  module ForeignKeyDefinition
19
19
 
20
20
  def column_names
21
- ActiveSupport::Deprecation.warn "ForeignKeyDefinition#column_names is depcreated, use Array.wrap(column)"
21
+ ActiveSupport::Deprecation.warn "ForeignKeyDefinition#column_names is deprecated, use Array.wrap(column)"
22
22
  Array.wrap(column)
23
23
  end
24
24
 
25
25
  def references_column_names
26
- ActiveSupport::Deprecation.warn "ForeignKeyDefinition#references_column_names is depcreated, use Array.wrap(primary_key)"
26
+ ActiveSupport::Deprecation.warn "ForeignKeyDefinition#references_column_names is deprecated, use Array.wrap(primary_key)"
27
27
  Array.wrap(primary_key)
28
28
  end
29
29
 
30
30
  def references_table_name
31
- ActiveSupport::Deprecation.warn "ForeignKeyDefinition#references_table_name is depcreated, use #to_table"
31
+ ActiveSupport::Deprecation.warn "ForeignKeyDefinition#references_table_name is deprecated, use #to_table"
32
32
  to_table
33
33
  end
34
34
 
35
35
  def table_name
36
- ActiveSupport::Deprecation.warn "ForeignKeyDefinition#table_name is depcreated, use #from_table"
36
+ ActiveSupport::Deprecation.warn "ForeignKeyDefinition#table_name is deprecated, use #from_table"
37
37
  from_table
38
38
  end
39
39
 
@@ -2,6 +2,19 @@ module SchemaPlus::ForeignKeys
2
2
  module Middleware
3
3
  module Migration
4
4
 
5
+ module CreateTable
6
+ def around(env)
7
+ if (original_block = env.block)
8
+ config_options = env.options.delete(:foreign_keys) || {}
9
+ env.block = -> (table_definition) {
10
+ table_definition.schema_plus_config = SchemaPlus::ForeignKeys.config.merge(config_options)
11
+ original_block.call table_definition
12
+ }
13
+ end
14
+ yield env
15
+ end
16
+ end
17
+
5
18
  module Column
6
19
 
7
20
  #
@@ -1,14 +1,13 @@
1
1
  module SchemaPlus::ForeignKeys
2
- module ActiveRecord
2
+ module Middleware
3
3
  module Schema
4
- module ClassMethods
5
-
6
- def define(*args)
4
+ module Define
5
+ def around(env)
7
6
  fk_override = { :auto_create => false, :auto_index => false }
8
7
  save = Hash[fk_override.keys.collect{|key| [key, SchemaPlus::ForeignKeys.config.send(key)]}]
9
8
  begin
10
9
  SchemaPlus::ForeignKeys.config.update_attributes(fk_override)
11
- super
10
+ yield env
12
11
  ensure
13
12
  SchemaPlus::ForeignKeys.config.update_attributes(save)
14
13
  end
@@ -1,3 +1,3 @@
1
1
  module SchemaPlus
2
- VERSION = "2.0.0.pre7"
2
+ VERSION = "2.0.0.pre8"
3
3
  end
data/schema_plus.gemspec CHANGED
@@ -24,7 +24,7 @@ Gem::Specification.new do |gem|
24
24
  gem.add_dependency "activerecord", "~> 4.2"
25
25
  gem.add_dependency "valuable"
26
26
  gem.add_dependency "schema_plus_core", "~> 0.2"
27
- gem.add_dependency "schema_monkey_rails", "~> 0.1", ">= 0.1.2"
27
+ gem.add_dependency "schema_monkey", "~> 2.1"
28
28
  gem.add_dependency "schema_plus_columns", "~> 0.1"
29
29
  gem.add_dependency "schema_plus_indexes", "~> 0.1", ">= 0.1.3"
30
30
  gem.add_dependency "schema_plus_pg_indexes", "~> 0.1", ">= 0.1.3"
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: 2.0.0.pre7
4
+ version: 2.0.0.pre8
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-02-14 00:00:00.000000000 Z
12
+ date: 2015-02-27 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activerecord
@@ -54,25 +54,19 @@ dependencies:
54
54
  - !ruby/object:Gem::Version
55
55
  version: '0.2'
56
56
  - !ruby/object:Gem::Dependency
57
- name: schema_monkey_rails
57
+ name: schema_monkey
58
58
  requirement: !ruby/object:Gem::Requirement
59
59
  requirements:
60
60
  - - "~>"
61
61
  - !ruby/object:Gem::Version
62
- version: '0.1'
63
- - - ">="
64
- - !ruby/object:Gem::Version
65
- version: 0.1.2
62
+ version: '2.1'
66
63
  type: :runtime
67
64
  prerelease: false
68
65
  version_requirements: !ruby/object:Gem::Requirement
69
66
  requirements:
70
67
  - - "~>"
71
68
  - !ruby/object:Gem::Version
72
- version: '0.1'
73
- - - ">="
74
- - !ruby/object:Gem::Version
75
- version: 0.1.2
69
+ version: '2.1'
76
70
  - !ruby/object:Gem::Dependency
77
71
  name: schema_plus_columns
78
72
  requirement: !ruby/object:Gem::Requirement
@@ -286,11 +280,11 @@ files:
286
280
  - lib/schema_plus/foreign_keys/active_record/connection_adapters/sqlite3_adapter.rb
287
281
  - lib/schema_plus/foreign_keys/active_record/connection_adapters/table_definition.rb
288
282
  - lib/schema_plus/foreign_keys/active_record/migration/command_recorder.rb
289
- - lib/schema_plus/foreign_keys/active_record/schema.rb
290
283
  - lib/schema_plus/foreign_keys/middleware/dumper.rb
291
284
  - lib/schema_plus/foreign_keys/middleware/migration.rb
292
285
  - lib/schema_plus/foreign_keys/middleware/model.rb
293
286
  - lib/schema_plus/foreign_keys/middleware/mysql.rb
287
+ - lib/schema_plus/foreign_keys/middleware/schema.rb
294
288
  - lib/schema_plus/foreign_keys/middleware/sql.rb
295
289
  - lib/schema_plus/foreign_keys/version.rb
296
290
  - lib/schema_plus/version.rb