fresh_connection 2.0.1 → 2.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Appraisals +4 -0
- data/README.md +2 -3
- data/fresh_connection.gemspec +1 -0
- data/gemfiles/rails40.gemfile +1 -0
- data/gemfiles/rails41.gemfile +1 -0
- data/gemfiles/rails42.gemfile +1 -0
- data/gemfiles/rails50.gemfile +1 -0
- data/lib/fresh_connection/connection_factory.rb +6 -3
- data/lib/fresh_connection/slave_connection_handler.rb +1 -1
- data/lib/fresh_connection/version.rb +1 -1
- metadata +51 -31
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4330f98daf1d87f09bb2fef08fbfca694a7ec97f
|
4
|
+
data.tar.gz: 079cdfe069e96842b58cd3f27c63f69075bd5993
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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
|
59
|
-
FreshConnection supports
|
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
|
data/fresh_connection.gemspec
CHANGED
@@ -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'
|
data/gemfiles/rails40.gemfile
CHANGED
data/gemfiles/rails41.gemfile
CHANGED
data/gemfiles/rails42.gemfile
CHANGED
data/gemfiles/rails50.gemfile
CHANGED
@@ -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
|
-
|
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
|
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.
|
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-
|
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
|
-
-
|
165
|
-
-
|
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.
|
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.
|