schema_plus 2.0.0.pre7 → 2.0.0.pre8

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 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