fresh_connection 2.0.1 → 2.0.2

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: 12ca23c67f58fc1267a7c12c01702713d3ed36cf
4
- data.tar.gz: f8098be42175bd0843137c2b2545bc13227c8c4f
3
+ metadata.gz: 4330f98daf1d87f09bb2fef08fbfca694a7ec97f
4
+ data.tar.gz: 079cdfe069e96842b58cd3f27c63f69075bd5993
5
5
  SHA512:
6
- metadata.gz: 33f0faf2d65c11cf23d695e2e4647408c6d3e34cedde24704461615bf2acf826fe506d6026a2ed4336d4faf97e774c5590d11ddbe31438025414310d9abcfef6
7
- data.tar.gz: 81fc8221dd4161d01306cb74bc4c5c466566a718210dfc167ee119fa8e0224d992575dfefa6c2ba15e8b9da8bf62f2804b8b78c440ff436be8576343e2d8a91c
6
+ metadata.gz: d46b96bdca166ba734884003d9b2b0576e6480308a1b4e809ec9488e001e903ef4fd0214330615312f453615a035eb4197aebab0e2554a158ed1c34b71ed10fa
7
+ data.tar.gz: c79941f7f6219a68a3da02ab8d101e055eed16a0321af5fc480b9e06df8dbe9637dbe391bd3fe2a68830f83148d4146ea4656e50f400ca08433ce8ea3858c9e2
data/Appraisals CHANGED
@@ -1,19 +1,23 @@
1
1
  appraise "rails40" do
2
2
  gem 'activerecord', '~> 4.0.0'
3
+ gem 'activesupport', '~> 4.0.0'
3
4
  gem 'mysql2', '~> 0.3.10'
4
5
  end
5
6
 
6
7
  appraise "rails41" do
7
8
  gem 'activerecord', '~> 4.1.0'
9
+ gem 'activesupport', '~> 4.1.0'
8
10
  gem 'mysql2', '~> 0.3.13'
9
11
  end
10
12
 
11
13
  appraise "rails42" do
12
14
  gem 'activerecord', '~> 4.2.0'
15
+ gem 'activesupport', '~> 4.2.0'
13
16
  gem 'mysql2', '~> 0.3.13'
14
17
  end
15
18
 
16
19
  appraise "rails50" do
17
20
  gem 'activerecord', '5.0.0.beta3'
21
+ gem 'activesupport', '5.0.0.beta3'
18
22
  gem 'mysql2', '>= 0.3.18', '< 0.5'
19
23
  end
data/README.md CHANGED
@@ -1,7 +1,6 @@
1
1
  # FreshConnection
2
2
  [![Gem Version](https://badge.fury.io/rb/fresh_connection.svg)](http://badge.fury.io/rb/fresh_connection) [![Build Status](https://travis-ci.org/tsukasaoishi/fresh_connection.svg?branch=master)](https://travis-ci.org/tsukasaoishi/fresh_connection) [![Code Climate](https://codeclimate.com/github/tsukasaoishi/fresh_connection/badges/gpa.svg)](https://codeclimate.com/github/tsukasaoishi/fresh_connection)
3
3
 
4
- ActiveRecord accesses a single server by default.
5
4
  FreshConnection can access to slave servers via a load balancer.
6
5
 
7
6
  For example.
@@ -55,8 +54,8 @@ article.save
55
54
  article.destory
56
55
  ```
57
56
 
58
- ## Support Rails version
59
- FreshConnection supports Rails version 4.0 or later.
57
+ ## Support ActiveRecord version
58
+ FreshConnection supports ActiveRecord version 4.0 or later.
60
59
  If you are using Rails 3.2, could use FreshConnection version 1.0.0 or before.
61
60
 
62
61
  ## Support DB
@@ -22,6 +22,7 @@ Gem::Specification.new do |spec|
22
22
  spec.required_ruby_version = '>= 2.0'
23
23
 
24
24
  spec.add_dependency 'activerecord', '>= 4.0.0', '< 5.0'
25
+ spec.add_dependency 'activesupport', '>= 4.0.0', '< 5.0'
25
26
  spec.add_dependency 'concurrent-ruby', '~> 1.0.0'
26
27
 
27
28
  spec.add_development_dependency 'mysql2', '>= 0.3.13', '< 0.5'
@@ -3,6 +3,7 @@
3
3
  source "https://rubygems.org"
4
4
 
5
5
  gem "activerecord", "~> 4.0.0"
6
+ gem "activesupport", "~> 4.0.0"
6
7
  gem "mysql2", "~> 0.3.10"
7
8
 
8
9
  gemspec :path => "../"
@@ -3,6 +3,7 @@
3
3
  source "https://rubygems.org"
4
4
 
5
5
  gem "activerecord", "~> 4.1.0"
6
+ gem "activesupport", "~> 4.1.0"
6
7
  gem "mysql2", "~> 0.3.13"
7
8
 
8
9
  gemspec :path => "../"
@@ -3,6 +3,7 @@
3
3
  source "https://rubygems.org"
4
4
 
5
5
  gem "activerecord", "~> 4.2.0"
6
+ gem "activesupport", "~> 4.2.0"
6
7
  gem "mysql2", "~> 0.3.13"
7
8
 
8
9
  gemspec :path => "../"
@@ -3,6 +3,7 @@
3
3
  source "https://rubygems.org"
4
4
 
5
5
  gem "activerecord", "5.0.0.beta3"
6
+ gem "activesupport", "5.0.0.beta3"
6
7
  gem "mysql2", ">= 0.3.18", "< 0.5"
7
8
 
8
9
  gemspec :path => "../"
@@ -1,8 +1,10 @@
1
+ require 'active_support/core_ext/hash/keys'
2
+
1
3
  module FreshConnection
2
4
  class ConnectionFactory
3
5
  def initialize(group, modify_spec = {})
4
6
  @group = group.to_sym
5
- @modify_spec = modify_spec
7
+ @modify_spec = modify_spec.symbolize_keys
6
8
  end
7
9
 
8
10
  def new_connection
@@ -20,8 +22,9 @@ module FreshConnection
20
22
  end
21
23
 
22
24
  def build_spec
23
- config = ar_spec.config
24
- config.merge(config[@group] || {}).merge(@modify_spec)
25
+ config = ar_spec.config.symbolize_keys
26
+ group_config = (config[@group] || {}).symbolize_keys
27
+ config.merge(group_config).merge(@modify_spec)
25
28
  end
26
29
 
27
30
  def ar_spec
@@ -41,7 +41,7 @@ module FreshConnection
41
41
  private
42
42
 
43
43
  def all_connection_managers
44
- class_to_pool.values.each do |connection_manager|
44
+ class_to_pool.each_value do |connection_manager|
45
45
  yield(connection_manager)
46
46
  end
47
47
  end
@@ -1,4 +1,4 @@
1
1
  module FreshConnection
2
- VERSION = "2.0.1"
2
+ VERSION = "2.0.2"
3
3
  end
4
4
 
metadata CHANGED
@@ -1,157 +1,177 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fresh_connection
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.1
4
+ version: 2.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tsukasa OISHI
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-03-27 00:00:00.000000000 Z
11
+ date: 2016-04-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">="
17
+ - - '>='
18
18
  - !ruby/object:Gem::Version
19
19
  version: 4.0.0
20
- - - "<"
20
+ - - <
21
21
  - !ruby/object:Gem::Version
22
22
  version: '5.0'
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
- - - ">="
27
+ - - '>='
28
28
  - !ruby/object:Gem::Version
29
29
  version: 4.0.0
30
- - - "<"
30
+ - - <
31
+ - !ruby/object:Gem::Version
32
+ version: '5.0'
33
+ - !ruby/object:Gem::Dependency
34
+ name: activesupport
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - '>='
38
+ - !ruby/object:Gem::Version
39
+ version: 4.0.0
40
+ - - <
41
+ - !ruby/object:Gem::Version
42
+ version: '5.0'
43
+ type: :runtime
44
+ prerelease: false
45
+ version_requirements: !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - '>='
48
+ - !ruby/object:Gem::Version
49
+ version: 4.0.0
50
+ - - <
31
51
  - !ruby/object:Gem::Version
32
52
  version: '5.0'
33
53
  - !ruby/object:Gem::Dependency
34
54
  name: concurrent-ruby
35
55
  requirement: !ruby/object:Gem::Requirement
36
56
  requirements:
37
- - - "~>"
57
+ - - ~>
38
58
  - !ruby/object:Gem::Version
39
59
  version: 1.0.0
40
60
  type: :runtime
41
61
  prerelease: false
42
62
  version_requirements: !ruby/object:Gem::Requirement
43
63
  requirements:
44
- - - "~>"
64
+ - - ~>
45
65
  - !ruby/object:Gem::Version
46
66
  version: 1.0.0
47
67
  - !ruby/object:Gem::Dependency
48
68
  name: mysql2
49
69
  requirement: !ruby/object:Gem::Requirement
50
70
  requirements:
51
- - - ">="
71
+ - - '>='
52
72
  - !ruby/object:Gem::Version
53
73
  version: 0.3.13
54
- - - "<"
74
+ - - <
55
75
  - !ruby/object:Gem::Version
56
76
  version: '0.5'
57
77
  type: :development
58
78
  prerelease: false
59
79
  version_requirements: !ruby/object:Gem::Requirement
60
80
  requirements:
61
- - - ">="
81
+ - - '>='
62
82
  - !ruby/object:Gem::Version
63
83
  version: 0.3.13
64
- - - "<"
84
+ - - <
65
85
  - !ruby/object:Gem::Version
66
86
  version: '0.5'
67
87
  - !ruby/object:Gem::Dependency
68
88
  name: pg
69
89
  requirement: !ruby/object:Gem::Requirement
70
90
  requirements:
71
- - - "~>"
91
+ - - ~>
72
92
  - !ruby/object:Gem::Version
73
93
  version: '0.11'
74
94
  type: :development
75
95
  prerelease: false
76
96
  version_requirements: !ruby/object:Gem::Requirement
77
97
  requirements:
78
- - - "~>"
98
+ - - ~>
79
99
  - !ruby/object:Gem::Version
80
100
  version: '0.11'
81
101
  - !ruby/object:Gem::Dependency
82
102
  name: bundler
83
103
  requirement: !ruby/object:Gem::Requirement
84
104
  requirements:
85
- - - ">="
105
+ - - '>='
86
106
  - !ruby/object:Gem::Version
87
107
  version: 1.3.0
88
- - - "<"
108
+ - - <
89
109
  - !ruby/object:Gem::Version
90
110
  version: '2.0'
91
111
  type: :development
92
112
  prerelease: false
93
113
  version_requirements: !ruby/object:Gem::Requirement
94
114
  requirements:
95
- - - ">="
115
+ - - '>='
96
116
  - !ruby/object:Gem::Version
97
117
  version: 1.3.0
98
- - - "<"
118
+ - - <
99
119
  - !ruby/object:Gem::Version
100
120
  version: '2.0'
101
121
  - !ruby/object:Gem::Dependency
102
122
  name: rake
103
123
  requirement: !ruby/object:Gem::Requirement
104
124
  requirements:
105
- - - ">="
125
+ - - '>='
106
126
  - !ruby/object:Gem::Version
107
127
  version: 0.8.7
108
128
  type: :development
109
129
  prerelease: false
110
130
  version_requirements: !ruby/object:Gem::Requirement
111
131
  requirements:
112
- - - ">="
132
+ - - '>='
113
133
  - !ruby/object:Gem::Version
114
134
  version: 0.8.7
115
135
  - !ruby/object:Gem::Dependency
116
136
  name: appraisal
117
137
  requirement: !ruby/object:Gem::Requirement
118
138
  requirements:
119
- - - ">="
139
+ - - '>='
120
140
  - !ruby/object:Gem::Version
121
141
  version: '0'
122
142
  type: :development
123
143
  prerelease: false
124
144
  version_requirements: !ruby/object:Gem::Requirement
125
145
  requirements:
126
- - - ">="
146
+ - - '>='
127
147
  - !ruby/object:Gem::Version
128
148
  version: '0'
129
149
  - !ruby/object:Gem::Dependency
130
150
  name: minitest
131
151
  requirement: !ruby/object:Gem::Requirement
132
152
  requirements:
133
- - - ">="
153
+ - - '>='
134
154
  - !ruby/object:Gem::Version
135
155
  version: '0'
136
156
  type: :development
137
157
  prerelease: false
138
158
  version_requirements: !ruby/object:Gem::Requirement
139
159
  requirements:
140
- - - ">="
160
+ - - '>='
141
161
  - !ruby/object:Gem::Version
142
162
  version: '0'
143
163
  - !ruby/object:Gem::Dependency
144
164
  name: minitest-reporters
145
165
  requirement: !ruby/object:Gem::Requirement
146
166
  requirements:
147
- - - ">="
167
+ - - '>='
148
168
  - !ruby/object:Gem::Version
149
169
  version: '0'
150
170
  type: :development
151
171
  prerelease: false
152
172
  version_requirements: !ruby/object:Gem::Requirement
153
173
  requirements:
154
- - - ">="
174
+ - - '>='
155
175
  - !ruby/object:Gem::Version
156
176
  version: '0'
157
177
  description: https://github.com/tsukasaoishi/fresh_connection
@@ -161,8 +181,8 @@ executables: []
161
181
  extensions: []
162
182
  extra_rdoc_files: []
163
183
  files:
164
- - ".gitignore"
165
- - ".travis.yml"
184
+ - .gitignore
185
+ - .travis.yml
166
186
  - Appraisals
167
187
  - CODE_OF_CONDUCT.md
168
188
  - Gemfile
@@ -202,17 +222,17 @@ require_paths:
202
222
  - lib
203
223
  required_ruby_version: !ruby/object:Gem::Requirement
204
224
  requirements:
205
- - - ">="
225
+ - - '>='
206
226
  - !ruby/object:Gem::Version
207
227
  version: '2.0'
208
228
  required_rubygems_version: !ruby/object:Gem::Requirement
209
229
  requirements:
210
- - - ">="
230
+ - - '>='
211
231
  - !ruby/object:Gem::Version
212
232
  version: '0'
213
233
  requirements: []
214
234
  rubyforge_project:
215
- rubygems_version: 2.5.1
235
+ rubygems_version: 2.0.14
216
236
  signing_key:
217
237
  specification_version: 4
218
238
  summary: FreshConnection supports to connect with Mysql slave servers via Load Balancers.