redhillonrails_core 1.2.0 → 2.0.0.pre
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.
- data/CHANGELOG +2 -0
- data/Gemfile +1 -0
- data/Gemfile.lock +32 -27
- data/README.rdoc +2 -1
- data/lib/redhillonrails_core.rb +0 -2
- data/lib/redhillonrails_core/active_record/base.rb +0 -16
- data/lib/redhillonrails_core/active_record/connection_adapters/abstract_adapter.rb +3 -3
- data/lib/redhillonrails_core/active_record/connection_adapters/mysql_adapter.rb +1 -1
- data/lib/redhillonrails_core/active_record/connection_adapters/sqlite3_adapter.rb +1 -1
- data/lib/redhillonrails_core/version.rb +1 -1
- data/redhillonrails_core.gemspec +4 -4
- metadata +25 -26
- data/lib/redhillonrails_core/active_record/connection_adapters/column.rb +0 -25
data/CHANGELOG
CHANGED
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,38 +1,42 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
redhillonrails_core (
|
5
|
-
activerecord (
|
4
|
+
redhillonrails_core (2.0.0.pre)
|
5
|
+
activerecord (~> 3.1.0.rc)
|
6
6
|
|
7
7
|
GEM
|
8
8
|
remote: http://rubygems.org/
|
9
9
|
specs:
|
10
|
-
activemodel (3.0.
|
11
|
-
activesupport (= 3.0.
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
10
|
+
activemodel (3.1.0.rc4)
|
11
|
+
activesupport (= 3.1.0.rc4)
|
12
|
+
bcrypt-ruby (~> 2.1.4)
|
13
|
+
builder (~> 3.0.0)
|
14
|
+
i18n (~> 0.6)
|
15
|
+
activerecord (3.1.0.rc4)
|
16
|
+
activemodel (= 3.1.0.rc4)
|
17
|
+
activesupport (= 3.1.0.rc4)
|
18
|
+
arel (~> 2.1.1)
|
19
|
+
tzinfo (~> 0.3.27)
|
20
|
+
activesupport (3.1.0.rc4)
|
21
|
+
multi_json (~> 1.0)
|
22
|
+
arel (2.1.3)
|
23
|
+
bcrypt-ruby (2.1.4)
|
24
|
+
builder (3.0.0)
|
22
25
|
diff-lcs (1.1.2)
|
23
|
-
i18n (0.
|
26
|
+
i18n (0.6.0)
|
27
|
+
multi_json (1.0.3)
|
24
28
|
mysql (2.8.1)
|
25
|
-
mysql2 (0.
|
26
|
-
pg (0.
|
29
|
+
mysql2 (0.3.6)
|
30
|
+
pg (0.11.0)
|
27
31
|
rake (0.8.7)
|
28
|
-
rspec (2.
|
29
|
-
rspec-core (~> 2.
|
30
|
-
rspec-expectations (~> 2.
|
31
|
-
rspec-mocks (~> 2.
|
32
|
-
rspec-core (2.4
|
33
|
-
rspec-expectations (2.
|
32
|
+
rspec (2.6.0)
|
33
|
+
rspec-core (~> 2.6.0)
|
34
|
+
rspec-expectations (~> 2.6.0)
|
35
|
+
rspec-mocks (~> 2.6.0)
|
36
|
+
rspec-core (2.6.4)
|
37
|
+
rspec-expectations (2.6.0)
|
34
38
|
diff-lcs (~> 1.1.2)
|
35
|
-
rspec-mocks (2.
|
39
|
+
rspec-mocks (2.6.0)
|
36
40
|
sqlite3 (1.3.3)
|
37
41
|
sqlite3-ruby (1.3.3)
|
38
42
|
sqlite3 (>= 1.3.3)
|
@@ -42,10 +46,11 @@ PLATFORMS
|
|
42
46
|
ruby
|
43
47
|
|
44
48
|
DEPENDENCIES
|
49
|
+
activerecord (~> 3.1.0.rc)
|
45
50
|
mysql
|
46
|
-
mysql2 (~> 0.
|
47
|
-
pg
|
51
|
+
mysql2 (~> 0.3.0)
|
52
|
+
pg (~> 0.11)
|
48
53
|
rake
|
49
54
|
redhillonrails_core!
|
50
|
-
rspec (~> 2.
|
55
|
+
rspec (~> 2.6.0)
|
51
56
|
sqlite3-ruby (~> 1.3.1)
|
data/README.rdoc
CHANGED
@@ -26,7 +26,8 @@ As a gem
|
|
26
26
|
== Compatibility
|
27
27
|
|
28
28
|
* Ruby - 1.8, 1.9
|
29
|
-
* ActiveRecord - 2.X, 3.
|
29
|
+
* ActiveRecord - 2.X, 3.0
|
30
|
+
* ActiveRecord - 3.1 in rails31 branch
|
30
31
|
* Databases - PostgreSQL, MySQL, SQLite3 (most features should also run on others)
|
31
32
|
|
32
33
|
=== Foreign Key Support
|
data/lib/redhillonrails_core.rb
CHANGED
@@ -12,7 +12,6 @@ require 'redhillonrails_core/active_record/schema'
|
|
12
12
|
require 'redhillonrails_core/active_record/schema_dumper'
|
13
13
|
require 'redhillonrails_core/active_record/connection_adapters/abstract_adapter'
|
14
14
|
require 'redhillonrails_core/active_record/connection_adapters/foreign_key_definition'
|
15
|
-
require 'redhillonrails_core/active_record/connection_adapters/column'
|
16
15
|
require 'redhillonrails_core/active_record/connection_adapters/index_definition'
|
17
16
|
require 'redhillonrails_core/active_record/connection_adapters/mysql_column'
|
18
17
|
require 'redhillonrails_core/active_record/connection_adapters/schema_statements'
|
@@ -30,6 +29,5 @@ ActiveRecord::Schema.send(:include, RedhillonrailsCore::ActiveRecord::Schema)
|
|
30
29
|
ActiveRecord::SchemaDumper.send(:include, RedhillonrailsCore::ActiveRecord::SchemaDumper)
|
31
30
|
ActiveRecord::ConnectionAdapters::IndexDefinition.send(:include, RedhillonrailsCore::ActiveRecord::ConnectionAdapters::IndexDefinition)
|
32
31
|
ActiveRecord::ConnectionAdapters::TableDefinition.send(:include, RedhillonrailsCore::ActiveRecord::ConnectionAdapters::TableDefinition)
|
33
|
-
ActiveRecord::ConnectionAdapters::Column.send(:include, RedhillonrailsCore::ActiveRecord::ConnectionAdapters::Column)
|
34
32
|
ActiveRecord::ConnectionAdapters::AbstractAdapter.send(:include, RedhillonrailsCore::ActiveRecord::ConnectionAdapters::AbstractAdapter)
|
35
33
|
ActiveRecord::ConnectionAdapters::SchemaStatements.send(:include, RedhillonrailsCore::ActiveRecord::ConnectionAdapters::SchemaStatements)
|
@@ -8,7 +8,6 @@ module RedhillonrailsCore
|
|
8
8
|
module ClassMethods
|
9
9
|
def self.extended(base)
|
10
10
|
class << base
|
11
|
-
alias_method_chain :columns, :redhillonrails_core
|
12
11
|
alias_method_chain :abstract_class?, :redhillonrails_core
|
13
12
|
alias_method_chain :reset_column_information, :redhillonrails_core
|
14
13
|
end
|
@@ -22,21 +21,6 @@ module RedhillonrailsCore
|
|
22
21
|
abstract_class_without_redhillonrails_core? || !(name =~ /^Abstract/).nil?
|
23
22
|
end
|
24
23
|
|
25
|
-
def columns_with_redhillonrails_core
|
26
|
-
unless @columns
|
27
|
-
columns_without_redhillonrails_core
|
28
|
-
cols = columns_hash
|
29
|
-
indexes.each do |index|
|
30
|
-
next if index.columns.blank?
|
31
|
-
column_name = index.columns.reverse.detect { |name| name !~ /_id$/ } || index.columns.last
|
32
|
-
column = cols[column_name]
|
33
|
-
column.case_sensitive = index.case_sensitive?
|
34
|
-
column.unique_scope = index.columns.reject { |name| name == column_name } if index.unique
|
35
|
-
end
|
36
|
-
end
|
37
|
-
@columns
|
38
|
-
end
|
39
|
-
|
40
24
|
def reset_column_information_with_redhillonrails_core
|
41
25
|
reset_column_information_without_redhillonrails_core
|
42
26
|
@indexes = @foreign_keys = nil
|
@@ -60,9 +60,9 @@ module RedhillonrailsCore
|
|
60
60
|
execute "ALTER TABLE #{quote_table_name(table_name)} DROP CONSTRAINT #{foreign_key_name}"
|
61
61
|
end
|
62
62
|
|
63
|
-
def drop_table_with_redhillonrails_core(name,
|
64
|
-
reverse_foreign_keys(name).each { |foreign_key| remove_foreign_key(foreign_key.table_name, foreign_key.name
|
65
|
-
drop_table_without_redhillonrails_core(name
|
63
|
+
def drop_table_with_redhillonrails_core(name, *args)
|
64
|
+
reverse_foreign_keys(name).each { |foreign_key| remove_foreign_key(foreign_key.table_name, foreign_key.name) }
|
65
|
+
drop_table_without_redhillonrails_core(name)
|
66
66
|
end
|
67
67
|
|
68
68
|
def supports_partial_indexes?
|
@@ -82,7 +82,7 @@ module RedhillonrailsCore
|
|
82
82
|
end
|
83
83
|
|
84
84
|
def view_definition(view_name, name = nil)
|
85
|
-
|
85
|
+
execute("SHOW CREATE VIEW #{quote_table_name(view_name)}", name).first[1]
|
86
86
|
end
|
87
87
|
|
88
88
|
end
|
@@ -10,7 +10,7 @@ module RedhillonrailsCore
|
|
10
10
|
|
11
11
|
def move_table(from, to, options = {}, &block) #:nodoc:
|
12
12
|
copy_table(from, to, options, &block)
|
13
|
-
drop_table(from
|
13
|
+
drop_table(from)
|
14
14
|
end
|
15
15
|
|
16
16
|
def add_foreign_key(from_table_name, from_column_names, to_table_name, to_column_names, options = {})
|
data/redhillonrails_core.gemspec
CHANGED
@@ -19,12 +19,12 @@ Gem::Specification.new do |s|
|
|
19
19
|
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
20
20
|
s.require_paths = ["lib"]
|
21
21
|
|
22
|
-
s.add_dependency("activerecord", "
|
22
|
+
s.add_dependency("activerecord", "~> 3.1.0.rc")
|
23
23
|
|
24
|
-
s.add_development_dependency("rspec", "~> 2.
|
25
|
-
s.add_development_dependency("pg")
|
24
|
+
s.add_development_dependency("rspec", "~> 2.6.0")
|
25
|
+
s.add_development_dependency("pg", "~> 0.11")
|
26
26
|
s.add_development_dependency("mysql")
|
27
|
-
s.add_development_dependency("mysql2", "~> 0.
|
27
|
+
s.add_development_dependency("mysql2", "~> 0.3.0")
|
28
28
|
s.add_development_dependency("sqlite3-ruby", "~> 1.3.1")
|
29
29
|
s.add_development_dependency("rake")
|
30
30
|
end
|
metadata
CHANGED
@@ -1,53 +1,53 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: redhillonrails_core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
5
|
-
prerelease:
|
4
|
+
version: 2.0.0.pre
|
5
|
+
prerelease: 6
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Michał Łomnicki
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2011-07-
|
12
|
+
date: 2011-07-22 00:00:00.000000000 +02:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: activerecord
|
17
|
-
requirement: &
|
17
|
+
requirement: &84750110 !ruby/object:Gem::Requirement
|
18
18
|
none: false
|
19
19
|
requirements:
|
20
|
-
- -
|
20
|
+
- - ~>
|
21
21
|
- !ruby/object:Gem::Version
|
22
|
-
version:
|
22
|
+
version: 3.1.0.rc
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
|
-
version_requirements: *
|
25
|
+
version_requirements: *84750110
|
26
26
|
- !ruby/object:Gem::Dependency
|
27
27
|
name: rspec
|
28
|
-
requirement: &
|
28
|
+
requirement: &84749820 !ruby/object:Gem::Requirement
|
29
29
|
none: false
|
30
30
|
requirements:
|
31
31
|
- - ~>
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 2.
|
33
|
+
version: 2.6.0
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
|
-
version_requirements: *
|
36
|
+
version_requirements: *84749820
|
37
37
|
- !ruby/object:Gem::Dependency
|
38
38
|
name: pg
|
39
|
-
requirement: &
|
39
|
+
requirement: &84749560 !ruby/object:Gem::Requirement
|
40
40
|
none: false
|
41
41
|
requirements:
|
42
|
-
- -
|
42
|
+
- - ~>
|
43
43
|
- !ruby/object:Gem::Version
|
44
|
-
version: '0'
|
44
|
+
version: '0.11'
|
45
45
|
type: :development
|
46
46
|
prerelease: false
|
47
|
-
version_requirements: *
|
47
|
+
version_requirements: *84749560
|
48
48
|
- !ruby/object:Gem::Dependency
|
49
49
|
name: mysql
|
50
|
-
requirement: &
|
50
|
+
requirement: &84749350 !ruby/object:Gem::Requirement
|
51
51
|
none: false
|
52
52
|
requirements:
|
53
53
|
- - ! '>='
|
@@ -55,21 +55,21 @@ dependencies:
|
|
55
55
|
version: '0'
|
56
56
|
type: :development
|
57
57
|
prerelease: false
|
58
|
-
version_requirements: *
|
58
|
+
version_requirements: *84749350
|
59
59
|
- !ruby/object:Gem::Dependency
|
60
60
|
name: mysql2
|
61
|
-
requirement: &
|
61
|
+
requirement: &84749040 !ruby/object:Gem::Requirement
|
62
62
|
none: false
|
63
63
|
requirements:
|
64
64
|
- - ~>
|
65
65
|
- !ruby/object:Gem::Version
|
66
|
-
version: 0.
|
66
|
+
version: 0.3.0
|
67
67
|
type: :development
|
68
68
|
prerelease: false
|
69
|
-
version_requirements: *
|
69
|
+
version_requirements: *84749040
|
70
70
|
- !ruby/object:Gem::Dependency
|
71
71
|
name: sqlite3-ruby
|
72
|
-
requirement: &
|
72
|
+
requirement: &84748750 !ruby/object:Gem::Requirement
|
73
73
|
none: false
|
74
74
|
requirements:
|
75
75
|
- - ~>
|
@@ -77,10 +77,10 @@ dependencies:
|
|
77
77
|
version: 1.3.1
|
78
78
|
type: :development
|
79
79
|
prerelease: false
|
80
|
-
version_requirements: *
|
80
|
+
version_requirements: *84748750
|
81
81
|
- !ruby/object:Gem::Dependency
|
82
82
|
name: rake
|
83
|
-
requirement: &
|
83
|
+
requirement: &84748560 !ruby/object:Gem::Requirement
|
84
84
|
none: false
|
85
85
|
requirements:
|
86
86
|
- - ! '>='
|
@@ -88,7 +88,7 @@ dependencies:
|
|
88
88
|
version: '0'
|
89
89
|
type: :development
|
90
90
|
prerelease: false
|
91
|
-
version_requirements: *
|
91
|
+
version_requirements: *84748560
|
92
92
|
description: Adds support in ActiveRecord for foreign_keys, complex indexes and other
|
93
93
|
database-related stuff. Easily create foreign_keys, complex indexes and views.
|
94
94
|
email:
|
@@ -108,7 +108,6 @@ files:
|
|
108
108
|
- lib/redhillonrails_core.rb
|
109
109
|
- lib/redhillonrails_core/active_record/base.rb
|
110
110
|
- lib/redhillonrails_core/active_record/connection_adapters/abstract_adapter.rb
|
111
|
-
- lib/redhillonrails_core/active_record/connection_adapters/column.rb
|
112
111
|
- lib/redhillonrails_core/active_record/connection_adapters/foreign_key_definition.rb
|
113
112
|
- lib/redhillonrails_core/active_record/connection_adapters/index_definition.rb
|
114
113
|
- lib/redhillonrails_core/active_record/connection_adapters/mysql_adapter.rb
|
@@ -156,9 +155,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
156
155
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
157
156
|
none: false
|
158
157
|
requirements:
|
159
|
-
- - ! '
|
158
|
+
- - ! '>'
|
160
159
|
- !ruby/object:Gem::Version
|
161
|
-
version:
|
160
|
+
version: 1.3.1
|
162
161
|
requirements: []
|
163
162
|
rubyforge_project: redhillonrails_core
|
164
163
|
rubygems_version: 1.6.2
|
@@ -1,25 +0,0 @@
|
|
1
|
-
module RedhillonrailsCore
|
2
|
-
module ActiveRecord
|
3
|
-
module ConnectionAdapters
|
4
|
-
module Column
|
5
|
-
attr_accessor :unique_scope
|
6
|
-
attr_accessor :case_sensitive
|
7
|
-
alias case_sensitive? case_sensitive
|
8
|
-
|
9
|
-
def unique?
|
10
|
-
!unique_scope.nil?
|
11
|
-
end
|
12
|
-
|
13
|
-
def required_on
|
14
|
-
if null
|
15
|
-
nil
|
16
|
-
elsif default.nil?
|
17
|
-
:save
|
18
|
-
else
|
19
|
-
:update
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
25
|
-
end
|