db-charmer 1.7.0.pre3 → 1.7.0.pre4

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.
@@ -1,11 +1,11 @@
1
1
  # Generated by jeweler
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{db-charmer}
8
- s.version = "1.7.0.pre3"
8
+ s.version = "1.7.0.pre4"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new("> 1.3.1") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Alexey Kovyrin"]
@@ -14,45 +14,44 @@ Gem::Specification.new do |s|
14
14
  s.email = %q{alexey@kovyrin.net}
15
15
  s.extra_rdoc_files = [
16
16
  "LICENSE",
17
- "README.rdoc"
17
+ "README.rdoc"
18
18
  ]
19
19
  s.files = [
20
- ".gitignore",
21
- "CHANGES",
22
- "LICENSE",
23
- "Makefile",
24
- "README.rdoc",
25
- "Rakefile",
26
- "db-charmer.gemspec",
27
- "init.rb",
28
- "lib/db_charmer.rb",
29
- "lib/db_charmer/abstract_adapter/log_formatting.rb",
30
- "lib/db_charmer/action_controller/force_slave_reads.rb",
31
- "lib/db_charmer/active_record/association_preload.rb",
32
- "lib/db_charmer/active_record/class_attributes.rb",
33
- "lib/db_charmer/active_record/connection_switching.rb",
34
- "lib/db_charmer/active_record/db_magic.rb",
35
- "lib/db_charmer/active_record/finder_overrides.rb",
36
- "lib/db_charmer/active_record/migration/multi_db_migrations.rb",
37
- "lib/db_charmer/active_record/multi_db_proxy.rb",
38
- "lib/db_charmer/active_record/named_scope/scope_proxy.rb",
39
- "lib/db_charmer/active_record/sharding.rb",
40
- "lib/db_charmer/connection_factory.rb",
41
- "lib/db_charmer/connection_proxy.rb",
42
- "lib/db_charmer/core_extensions.rb",
43
- "lib/db_charmer/force_slave_reads.rb",
44
- "lib/db_charmer/sharding.rb",
45
- "lib/db_charmer/sharding/connection.rb",
46
- "lib/db_charmer/sharding/method/db_block_group_map.rb",
47
- "lib/db_charmer/sharding/method/db_block_map.rb",
48
- "lib/db_charmer/sharding/method/hash_map.rb",
49
- "lib/db_charmer/sharding/method/range.rb",
50
- "lib/db_charmer/sharding/stub_connection.rb",
51
- "lib/db_charmer/version.rb",
52
- "lib/tasks/databases.rake"
20
+ "CHANGES",
21
+ "LICENSE",
22
+ "Makefile",
23
+ "README.rdoc",
24
+ "Rakefile",
25
+ "db-charmer.gemspec",
26
+ "init.rb",
27
+ "lib/db_charmer.rb",
28
+ "lib/db_charmer/abstract_adapter/log_formatting.rb",
29
+ "lib/db_charmer/action_controller/force_slave_reads.rb",
30
+ "lib/db_charmer/active_record/association_preload.rb",
31
+ "lib/db_charmer/active_record/class_attributes.rb",
32
+ "lib/db_charmer/active_record/connection_switching.rb",
33
+ "lib/db_charmer/active_record/db_magic.rb",
34
+ "lib/db_charmer/active_record/finder_overrides.rb",
35
+ "lib/db_charmer/active_record/migration/multi_db_migrations.rb",
36
+ "lib/db_charmer/active_record/multi_db_proxy.rb",
37
+ "lib/db_charmer/active_record/named_scope/scope_proxy.rb",
38
+ "lib/db_charmer/active_record/sharding.rb",
39
+ "lib/db_charmer/connection_factory.rb",
40
+ "lib/db_charmer/connection_proxy.rb",
41
+ "lib/db_charmer/core_extensions.rb",
42
+ "lib/db_charmer/force_slave_reads.rb",
43
+ "lib/db_charmer/sharding.rb",
44
+ "lib/db_charmer/sharding/connection.rb",
45
+ "lib/db_charmer/sharding/method.rb",
46
+ "lib/db_charmer/sharding/method/db_block_group_map.rb",
47
+ "lib/db_charmer/sharding/method/db_block_map.rb",
48
+ "lib/db_charmer/sharding/method/hash_map.rb",
49
+ "lib/db_charmer/sharding/method/range.rb",
50
+ "lib/db_charmer/sharding/stub_connection.rb",
51
+ "lib/db_charmer/version.rb",
52
+ "lib/tasks/databases.rake"
53
53
  ]
54
54
  s.homepage = %q{http://github.com/kovyrin/db-charmer}
55
- s.rdoc_options = ["--charset=UTF-8"]
56
55
  s.require_paths = ["lib"]
57
56
  s.rubygems_version = %q{1.6.2}
58
57
  s.summary = %q{ActiveRecord Connections Magic}
@@ -1,4 +1,5 @@
1
1
  module DbCharmer
2
+ # Accessors
2
3
  @@connections_should_exist = true
3
4
  mattr_accessor :connections_should_exist
4
5
 
@@ -66,25 +67,30 @@ require 'db_charmer/connection_proxy'
66
67
  require 'db_charmer/force_slave_reads'
67
68
 
68
69
  # Add our custom class-level attributes to AR models
69
- ::ActiveRecord::Base.extend(DbCharmer::ActiveRecord::ClassAttributes)
70
+ require 'db_charmer/active_record/class_attributes'
71
+ ActiveRecord::Base.extend(DbCharmer::ActiveRecord::ClassAttributes)
70
72
 
71
73
  # Enable connections switching in AR
72
- ::ActiveRecord::Base.extend(DbCharmer::ActiveRecord::ConnectionSwitching)
74
+ require 'db_charmer/active_record/connection_switching'
75
+ ActiveRecord::Base.extend(DbCharmer::ActiveRecord::ConnectionSwitching)
73
76
 
74
77
  # Enable misc AR extensions
75
- ::ActiveRecord::ConnectionAdapters::AbstractAdapter.send(:include, DbCharmer::AbstractAdapter::LogFormatting)
78
+ require 'db_charmer/abstract_adapter/log_formatting'
79
+ ActiveRecord::ConnectionAdapters::AbstractAdapter.send(:include, DbCharmer::AbstractAdapter::LogFormatting)
76
80
 
77
81
  # Enable connection proxy in AR
78
- ::ActiveRecord::Base.extend(DbCharmer::ActiveRecord::MultiDbProxy::ClassMethods)
79
- ::ActiveRecord::Base.extend(DbCharmer::ActiveRecord::MultiDbProxy::MasterSlaveClassMethods)
80
- ::ActiveRecord::Base.send(:include, DbCharmer::ActiveRecord::MultiDbProxy::InstanceMethods)
82
+ require 'db_charmer/active_record/multi_db_proxy'
83
+ ActiveRecord::Base.extend(DbCharmer::ActiveRecord::MultiDbProxy::ClassMethods)
84
+ ActiveRecord::Base.extend(DbCharmer::ActiveRecord::MultiDbProxy::MasterSlaveClassMethods)
85
+ ActiveRecord::Base.send(:include, DbCharmer::ActiveRecord::MultiDbProxy::InstanceMethods)
81
86
 
82
87
  # Enable connection proxy for scopes
83
- ::ActiveRecord::NamedScope::Scope.send(:include, DbCharmer::ActiveRecord::NamedScope::ScopeProxy)
88
+ require 'db_charmer/active_record/named_scope/scope_proxy'
89
+ ActiveRecord::NamedScope::Scope.send(:include, DbCharmer::ActiveRecord::NamedScope::ScopeProxy)
84
90
 
85
91
  # Enable connection proxy for associations
86
92
  # WARNING: Inject methods to association class right here (they proxy include calls somewhere else, so include does not work)
87
- module ::ActiveRecord
93
+ module ActiveRecord
88
94
  module Associations
89
95
  class AssociationProxy
90
96
  def proxy?
@@ -108,16 +114,21 @@ module ::ActiveRecord
108
114
  end
109
115
 
110
116
  # Enable multi-db migrations
111
- ::ActiveRecord::Migration.extend(DbCharmer::ActiveRecord::Migration::MultiDbMigrations)
117
+ require 'db_charmer/active_record/migration/multi_db_migrations'
118
+ ActiveRecord::Migration.extend(DbCharmer::ActiveRecord::Migration::MultiDbMigrations)
112
119
 
113
120
  # Enable the magic
114
- ::ActiveRecord::Base.extend(DbCharmer::ActiveRecord::DbMagic)
121
+ require 'db_charmer/active_record/finder_overrides'
122
+ require 'db_charmer/active_record/sharding'
123
+ require 'db_charmer/active_record/db_magic'
124
+ ActiveRecord::Base.extend(DbCharmer::ActiveRecord::DbMagic)
115
125
 
116
126
  # Setup association preload magic
117
- ::ActiveRecord::Base.extend(DbCharmer::ActiveRecord::AssociationPreload)
127
+ require 'db_charmer/active_record/association_preload'
128
+ ActiveRecord::Base.extend(DbCharmer::ActiveRecord::AssociationPreload)
118
129
 
119
130
  # Open up really useful API method
120
- ::ActiveRecord::AssociationPreload::ClassMethods.send(:public, :preload_associations)
131
+ ActiveRecord::AssociationPreload::ClassMethods.send(:public, :preload_associations)
121
132
 
122
133
  class ::ActiveRecord::Base
123
134
  class << self
@@ -133,5 +144,6 @@ end
133
144
 
134
145
  #-----------------------------------------------------------------------------------------------------------------------
135
146
  # Extend ActionController to support forcing slave reads
136
- ::ActionController::Base.extend(DbCharmer::ActionController::ForceSlaveReads::ClassMethods)
137
- ::ActionController::Base.send(:include, DbCharmer::ActionController::ForceSlaveReads::InstanceMethods)
147
+ require 'db_charmer/action_controller/force_slave_reads'
148
+ ActionController::Base.extend(DbCharmer::ActionController::ForceSlaveReads::ClassMethods)
149
+ ActionController::Base.send(:include, DbCharmer::ActionController::ForceSlaveReads::InstanceMethods)
@@ -1,5 +1,9 @@
1
1
  module DbCharmer
2
2
  module Sharding
3
+ autoload :Connection, 'db_charmer/sharding/connection'
4
+ autoload :StubConnection, 'db_charmer/sharding/stub_connection'
5
+ autoload :Method, 'db_charmer/sharding/method'
6
+
3
7
  @@sharded_connections = {}
4
8
 
5
9
  def self.register_connection(config)
@@ -12,4 +16,3 @@ module DbCharmer
12
16
  end
13
17
  end
14
18
  end
15
-
@@ -0,0 +1,10 @@
1
+ module DbCharmer
2
+ module Sharding
3
+ module Method
4
+ autoload :Range, 'db_charmer/sharding/method/range'
5
+ autoload :HashMap, 'db_charmer/sharding/method/hash_map'
6
+ autoload :DbBlockMap, 'db_charmer/sharding/method/db_block_map'
7
+ autoload :DbBlockGroupMap, 'db_charmer/sharding/method/db_block_group_map'
8
+ end
9
+ end
10
+ end
@@ -3,7 +3,7 @@ module DbCharmer
3
3
  MAJOR = 1
4
4
  MINOR = 7
5
5
  PATCH = 0
6
- BUILD = 'pre3'
6
+ BUILD = 'pre4'
7
7
 
8
8
  STRING = [MAJOR, MINOR, PATCH, BUILD].compact.join('.')
9
9
  end
metadata CHANGED
@@ -1,15 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: db-charmer
3
3
  version: !ruby/object:Gem::Version
4
- hash: 1923832063
4
+ hash: 1923832049
5
5
  prerelease: 6
6
6
  segments:
7
7
  - 1
8
8
  - 7
9
9
  - 0
10
10
  - pre
11
- - 3
12
- version: 1.7.0.pre3
11
+ - 4
12
+ version: 1.7.0.pre4
13
13
  platform: ruby
14
14
  authors:
15
15
  - Alexey Kovyrin
@@ -75,7 +75,6 @@ extra_rdoc_files:
75
75
  - LICENSE
76
76
  - README.rdoc
77
77
  files:
78
- - .gitignore
79
78
  - CHANGES
80
79
  - LICENSE
81
80
  - Makefile
@@ -101,6 +100,7 @@ files:
101
100
  - lib/db_charmer/force_slave_reads.rb
102
101
  - lib/db_charmer/sharding.rb
103
102
  - lib/db_charmer/sharding/connection.rb
103
+ - lib/db_charmer/sharding/method.rb
104
104
  - lib/db_charmer/sharding/method/db_block_group_map.rb
105
105
  - lib/db_charmer/sharding/method/db_block_map.rb
106
106
  - lib/db_charmer/sharding/method/hash_map.rb
@@ -113,8 +113,8 @@ homepage: http://github.com/kovyrin/db-charmer
113
113
  licenses: []
114
114
 
115
115
  post_install_message:
116
- rdoc_options:
117
- - --charset=UTF-8
116
+ rdoc_options: []
117
+
118
118
  require_paths:
119
119
  - lib
120
120
  required_ruby_version: !ruby/object:Gem::Requirement
data/.gitignore DELETED
@@ -1,2 +0,0 @@
1
- /doc
2
- /pkg