slaver 0.2.0 → 0.2.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: 1195fe5705334e98e82be1ea709878b918f927fd
4
- data.tar.gz: c835149d6c8a7bd3e7d5910c148032b2fadd3546
3
+ metadata.gz: c3a9d0de100e324111ce57dce5c64413f08f3cf6
4
+ data.tar.gz: d5cd0db08e4f0e54a1d28bcdca40d1e8338a5d55
5
5
  SHA512:
6
- metadata.gz: fa306f8b191c439d002a186c79ba6d326e7372f350f6156f6cc72e8cb0d9b26c0463163798a06dc7ba5a6e8eedad0f6d6d64e8f888e165c5ee541183a6457b6b
7
- data.tar.gz: f558a3b437af32175fe0544ad4654758c6da9c3398855d2ad66ea3105e251e092c635e61635fb9a537b35fbaf6d615db89343b8668a9eb959a649634827c4580
6
+ metadata.gz: 74a4dddceb87270b94cdf89c6a9ad43b038a4335e55b340b6c4d66b892cf2547e584eb860e9cfe8e7023c0ff7bf4535343b03e481d801bca7bc67897a176c886
7
+ data.tar.gz: d9301338a24300226f16eda68f2fc1673f0afafe24e825916459135f76a9b14e93471d19b6f6e16e0777cc36afd25e6ce9fecc19abba2800c8283f7977d11b40
@@ -0,0 +1,38 @@
1
+ matrix:
2
+ include:
3
+ - DOCKER_RUBY_VERSION: 2.2
4
+ RUBY_IMAGE_TAG: 2.2-latest
5
+
6
+ - DOCKER_RUBY_VERSION: 2.3
7
+ RUBY_IMAGE_TAG: 2.3-latest
8
+
9
+ build:
10
+ test:
11
+ image: abakpress/dind-testing
12
+ privileged: true
13
+ volumes:
14
+ - /home/data/drone/images:/images
15
+ - /home/data/drone/gems:/bundle
16
+ environment:
17
+ - COMPOSE_FILE_EXT=drone
18
+ - RAILS_ENV=test
19
+ - RUBY_IMAGE_TAG=2.2-latest
20
+ commands:
21
+ - wrapdocker docker -v
22
+
23
+ - fetch-images
24
+ --image abakpress/ruby-app:$RUBY_IMAGE_TAG
25
+
26
+ - dip provision
27
+ - dip rspec
28
+
29
+ release:
30
+ image: abakpress/gem-publication
31
+ pull: true
32
+ when:
33
+ event: push
34
+ branch: master
35
+ volumes:
36
+ - /home/data/drone/rubygems:/root/.gem
37
+ commands:
38
+ - release-gem --public
data/.gitignore CHANGED
@@ -9,6 +9,5 @@
9
9
  /spec/reports/
10
10
  /tmp/
11
11
  gemfiles/
12
- spec/internal/config/database.yml
13
12
  spec/internal/test_other
14
13
  spec/internal/test
data/Appraisals CHANGED
@@ -1,19 +1,14 @@
1
- appraise 'rails3.1' do
2
- gem 'rails', '~> 3.1.0'
3
- end
4
-
5
- appraise 'rails3.2' do
6
- gem 'rails', '~> 3.2.0'
7
- end
8
-
9
1
  appraise 'rails4.0' do
10
2
  gem 'rails', '~> 4.0.0'
3
+ gem 'sqlite3', '~> 1.3.6'
11
4
  end
12
5
 
13
6
  appraise 'rails4.1' do
14
7
  gem 'rails', '~> 4.1.0'
8
+ gem 'sqlite3', '~> 1.3.6'
15
9
  end
16
10
 
17
11
  appraise 'rails4.2' do
18
12
  gem 'rails', '~> 4.2.0'
13
+ gem 'sqlite3', '~> 1.3.6'
19
14
  end
@@ -1,12 +1,35 @@
1
+ # v0.2.2
1
2
 
2
- #### [Current]
3
- * 2015-11-23 [f186f6c](../../commit/f186f6c) - __(Denis Korobitcin)__ fix(slavable): special methods capability
4
-
5
- #### v0.0.1
6
- * 2015-11-16 [0c6b8ad](../../commit/0c6b8ad) - __(Denis Korobitcin)__ Release 0.0.1
7
- * 2015-11-03 [172eda3](../../commit/172eda3) - __(Denis Korobitcin)__ fix(slavable): add block support
8
- * 2015-10-22 [b67f807](../../commit/b67f807) - __(Denis Korobitcin)__ feature: added slavable extension
9
- * 2015-10-23 [9dc8cf0](../../commit/9dc8cf0) - __(Denis Korobitcin)__ chore(readme): fixed within section [skip ci]
10
- * 2015-10-22 [bbb2535](../../commit/bbb2535) - __(Denis Korobitcin)__ chore: Big refactoring
11
- * 2015-10-19 [b64de51](../../commit/b64de51) - __(Denis Korobitcin)__ feature: added main slaver logic
12
- * 2015-10-19 [4441efa](../../commit/4441efa) - __(Artem Napolskih)__ Initial commit
3
+ * 2019-12-16 [6f4f370](../../commit/6f4f370) - __(ZhidkovDenis)__ Release 0.2.2
4
+ * 2019-12-16 [d25637b](../../commit/d25637b) - __(ZhidkovDenis)__ fix: separate test and release sections in drone config
5
+ * 2019-12-02 [94932dc](../../commit/94932dc) - __(ZhidkovDenis)__ Release 0.2.1
6
+ * 2019-12-02 [e842c9f](../../commit/e842c9f) - __(ZhidkovDenis)__ fix: add missed definition for Slaver::Proxy#respond_to_missing?
7
+ Slaver::Proxy#respond_to? now will check if Slaver::Proxy#safe_connection
8
+ could respond to specified method.
9
+
10
+ * 2019-12-02 [29081ac](../../commit/29081ac) - __(ZhidkovDenis)__ chore: remove old rails and ruby support, actualize .drone.yml
11
+ * 2016-12-27 [7cb588c](../../commit/7cb588c) - __(Denis Korobicyn)__ chore: add dip & drone
12
+
13
+ # v0.2.0
14
+
15
+ * 2016-12-14 [019562a](../../commit/019562a) - __(TamarinEA)__ feat: support rails 4
16
+ * 2015-11-24 [12c8036](../../commit/12c8036) - __(Denis Korobitcin)__ Release 0.0.2
17
+ * 2015-11-23 [a93dd20](../../commit/a93dd20) - __(Denis Korobitcin)__ chore(readme): within method and some spelling [skip ci]
18
+ * 2015-11-23 [f186f6c](../../commit/f186f6c) - __(Denis Korobitcin)__ fix(slavable): special methods capability
19
+
20
+ # v0.0.1
21
+
22
+ * 2015-11-03 [172eda3](../../commit/172eda3) - __(Denis Korobitcin)__ fix(slavable): add block support
23
+ * 2015-10-22 [b67f807](../../commit/b67f807) - __(Denis Korobitcin)__ feature: added slavable extension
24
+ * 2015-10-23 [9dc8cf0](../../commit/9dc8cf0) - __(Denis Korobitcin)__ chore(readme): fixed within section [skip ci]
25
+ * 2015-10-22 [bbb2535](../../commit/bbb2535) - __(Denis Korobitcin)__ chore: Big refactoring
26
+ Changes:
27
+ 1. `on` now working throught `within`
28
+ 2. For `within` config independent of class on which it used
29
+ 3. Moved all logic to different classes
30
+ 3.1. pools -> PoolsHandler
31
+ 3.2. config -> ConfigHandler
32
+ 3.3. `on` now creaating ScopeProxy which send all missing_methods to base class with within block
33
+
34
+ * 2015-10-19 [b64de51](../../commit/b64de51) - __(Denis Korobitcin)__ feature: added main slaver logic
35
+ * 2015-10-19 [4441efa](../../commit/4441efa) - __(Artem Napolskih)__ Initial commit
data/Gemfile CHANGED
@@ -2,7 +2,13 @@ source 'https://rubygems.org'
2
2
 
3
3
  gemspec
4
4
 
5
- if RUBY_VERSION < '2'
6
- gem 'mime-types', '< 3.0'
7
- gem 'json', '< 2.0'
5
+ group :test do
6
+ if RUBY_VERSION < '2'
7
+ gem 'mime-types', '< 3.0'
8
+ gem 'json', '< 2.0'
9
+ gem 'nokogiri', '< 1.7.0'
10
+ else
11
+ gem 'test-unit'
12
+ gem 'pry-byebug'
13
+ end
8
14
  end
data/dip.yml ADDED
@@ -0,0 +1,45 @@
1
+ version: '1'
2
+
3
+ environment:
4
+ DOCKER_RUBY_VERSION: 2.2
5
+ RUBY_IMAGE_TAG: 2.2-latest
6
+ COMPOSE_FILE_EXT: development
7
+ RAILS_ENV: test
8
+
9
+ compose:
10
+ files:
11
+ - docker-compose.yml
12
+ - docker-compose.${COMPOSE_FILE_EXT}.yml
13
+
14
+ interaction:
15
+ sh:
16
+ service: app
17
+
18
+ irb:
19
+ service: app
20
+ command: irb
21
+
22
+ bundle:
23
+ service: app
24
+ command: bundle
25
+
26
+ rake:
27
+ service: app
28
+ command: bundle exec rake
29
+
30
+ appraisal:
31
+ service: app
32
+ command: bundle exec appraisal
33
+
34
+ rspec:
35
+ service: app
36
+ command: bundle exec appraisal bundle exec rspec
37
+
38
+ clean:
39
+ service: app
40
+ command: rm -f Gemfile.lock gemfiles/*.gemfile.*
41
+
42
+ provision:
43
+ - docker volume create --name bundler_data
44
+ - dip bundle install
45
+ - dip appraisal install
@@ -0,0 +1,14 @@
1
+ version: '2'
2
+
3
+ services:
4
+ app:
5
+ volumes:
6
+ - .:/app
7
+ - ../:/localgems
8
+ - bundler-data:/bundle
9
+
10
+ volumes:
11
+ bundler-data:
12
+ external:
13
+ name: bundler_data
14
+
@@ -0,0 +1,7 @@
1
+ version: '2'
2
+
3
+ services:
4
+ app:
5
+ volumes:
6
+ - .:/app
7
+ - /bundle:/bundle
@@ -0,0 +1,9 @@
1
+ version: '2'
2
+
3
+ services:
4
+ app:
5
+ image: abakpress/ruby-app:$RUBY_IMAGE_TAG
6
+ environment:
7
+ - BUNDLE_PATH=/bundle/$DOCKER_RUBY_VERSION
8
+ - BUNDLE_CONFIG=/app/.bundle/config
9
+ command: bash
@@ -34,5 +34,9 @@ module Slaver
34
34
  def method_missing(method, *args, &block)
35
35
  safe_connection.send(method, *args, &block)
36
36
  end
37
+
38
+ def respond_to_missing?(method, include_private = false)
39
+ safe_connection.respond_to?(method, include_private) || super
40
+ end
37
41
  end
38
42
  end
@@ -1,3 +1,3 @@
1
1
  module Slaver
2
- VERSION = '0.2.0'
2
+ VERSION = '0.2.2'.freeze
3
3
  end
@@ -18,8 +18,8 @@ Gem::Specification.new do |spec|
18
18
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
19
19
  spec.require_paths = ["lib"]
20
20
 
21
- spec.add_runtime_dependency 'activerecord', '>= 3.1.0', '< 5.0'
22
- spec.add_runtime_dependency 'activesupport', '>= 3.1.0', '< 5.0'
21
+ spec.add_runtime_dependency 'activerecord', '>= 4.0', '< 5.0'
22
+ spec.add_runtime_dependency 'activesupport', '>= 4.0', '< 5.0'
23
23
 
24
24
  spec.add_development_dependency 'bundler'
25
25
  spec.add_development_dependency 'rake'
@@ -27,7 +27,6 @@ Gem::Specification.new do |spec|
27
27
  spec.add_development_dependency 'rspec-rails'
28
28
  spec.add_development_dependency 'combustion', '>= 0.5.0', '< 0.5.5'
29
29
  spec.add_development_dependency 'appraisal'
30
- spec.add_development_dependency 'pry-debugger'
31
30
  spec.add_development_dependency 'shoulda-matchers', '< 3.0.0'
32
31
  spec.add_development_dependency 'simplecov'
33
32
  spec.add_development_dependency 'database_cleaner'
metadata CHANGED
@@ -1,215 +1,201 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: slaver
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Denis Korobitcin
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-12-14 00:00:00.000000000 Z
11
+ date: 2019-12-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- version_requirements: !ruby/object:Gem::Requirement
15
- requirements:
16
- - - '>='
17
- - !ruby/object:Gem::Version
18
- version: 3.1.0
19
- - - <
20
- - !ruby/object:Gem::Version
21
- version: '5.0'
22
14
  name: activerecord
23
15
  requirement: !ruby/object:Gem::Requirement
24
16
  requirements:
25
- - - '>='
17
+ - - ">="
26
18
  - !ruby/object:Gem::Version
27
- version: 3.1.0
28
- - - <
19
+ version: '4.0'
20
+ - - "<"
29
21
  - !ruby/object:Gem::Version
30
22
  version: '5.0'
31
23
  type: :runtime
32
24
  prerelease: false
33
- - !ruby/object:Gem::Dependency
34
25
  version_requirements: !ruby/object:Gem::Requirement
35
26
  requirements:
36
- - - '>='
27
+ - - ">="
37
28
  - !ruby/object:Gem::Version
38
- version: 3.1.0
39
- - - <
29
+ version: '4.0'
30
+ - - "<"
40
31
  - !ruby/object:Gem::Version
41
32
  version: '5.0'
33
+ - !ruby/object:Gem::Dependency
42
34
  name: activesupport
43
35
  requirement: !ruby/object:Gem::Requirement
44
36
  requirements:
45
- - - '>='
37
+ - - ">="
46
38
  - !ruby/object:Gem::Version
47
- version: 3.1.0
48
- - - <
39
+ version: '4.0'
40
+ - - "<"
49
41
  - !ruby/object:Gem::Version
50
42
  version: '5.0'
51
43
  type: :runtime
52
44
  prerelease: false
53
- - !ruby/object:Gem::Dependency
54
45
  version_requirements: !ruby/object:Gem::Requirement
55
46
  requirements:
56
- - - '>='
47
+ - - ">="
57
48
  - !ruby/object:Gem::Version
58
- version: '0'
49
+ version: '4.0'
50
+ - - "<"
51
+ - !ruby/object:Gem::Version
52
+ version: '5.0'
53
+ - !ruby/object:Gem::Dependency
59
54
  name: bundler
60
55
  requirement: !ruby/object:Gem::Requirement
61
56
  requirements:
62
- - - '>='
57
+ - - ">="
63
58
  - !ruby/object:Gem::Version
64
59
  version: '0'
65
60
  type: :development
66
61
  prerelease: false
67
- - !ruby/object:Gem::Dependency
68
62
  version_requirements: !ruby/object:Gem::Requirement
69
63
  requirements:
70
- - - '>='
64
+ - - ">="
71
65
  - !ruby/object:Gem::Version
72
66
  version: '0'
67
+ - !ruby/object:Gem::Dependency
73
68
  name: rake
74
69
  requirement: !ruby/object:Gem::Requirement
75
70
  requirements:
76
- - - '>='
71
+ - - ">="
77
72
  - !ruby/object:Gem::Version
78
73
  version: '0'
79
74
  type: :development
80
75
  prerelease: false
81
- - !ruby/object:Gem::Dependency
82
76
  version_requirements: !ruby/object:Gem::Requirement
83
77
  requirements:
84
- - - ~>
78
+ - - ">="
85
79
  - !ruby/object:Gem::Version
86
- version: '3.3'
80
+ version: '0'
81
+ - !ruby/object:Gem::Dependency
87
82
  name: rspec
88
83
  requirement: !ruby/object:Gem::Requirement
89
84
  requirements:
90
- - - ~>
85
+ - - "~>"
91
86
  - !ruby/object:Gem::Version
92
87
  version: '3.3'
93
88
  type: :development
94
89
  prerelease: false
95
- - !ruby/object:Gem::Dependency
96
90
  version_requirements: !ruby/object:Gem::Requirement
97
91
  requirements:
98
- - - '>='
92
+ - - "~>"
99
93
  - !ruby/object:Gem::Version
100
- version: '0'
94
+ version: '3.3'
95
+ - !ruby/object:Gem::Dependency
101
96
  name: rspec-rails
102
97
  requirement: !ruby/object:Gem::Requirement
103
98
  requirements:
104
- - - '>='
99
+ - - ">="
105
100
  - !ruby/object:Gem::Version
106
101
  version: '0'
107
102
  type: :development
108
103
  prerelease: false
109
- - !ruby/object:Gem::Dependency
110
104
  version_requirements: !ruby/object:Gem::Requirement
111
105
  requirements:
112
- - - '>='
113
- - !ruby/object:Gem::Version
114
- version: 0.5.0
115
- - - <
106
+ - - ">="
116
107
  - !ruby/object:Gem::Version
117
- version: 0.5.5
108
+ version: '0'
109
+ - !ruby/object:Gem::Dependency
118
110
  name: combustion
119
111
  requirement: !ruby/object:Gem::Requirement
120
112
  requirements:
121
- - - '>='
113
+ - - ">="
122
114
  - !ruby/object:Gem::Version
123
115
  version: 0.5.0
124
- - - <
116
+ - - "<"
125
117
  - !ruby/object:Gem::Version
126
118
  version: 0.5.5
127
119
  type: :development
128
120
  prerelease: false
129
- - !ruby/object:Gem::Dependency
130
121
  version_requirements: !ruby/object:Gem::Requirement
131
122
  requirements:
132
- - - '>='
123
+ - - ">="
133
124
  - !ruby/object:Gem::Version
134
- version: '0'
125
+ version: 0.5.0
126
+ - - "<"
127
+ - !ruby/object:Gem::Version
128
+ version: 0.5.5
129
+ - !ruby/object:Gem::Dependency
135
130
  name: appraisal
136
131
  requirement: !ruby/object:Gem::Requirement
137
132
  requirements:
138
- - - '>='
133
+ - - ">="
139
134
  - !ruby/object:Gem::Version
140
135
  version: '0'
141
136
  type: :development
142
137
  prerelease: false
143
- - !ruby/object:Gem::Dependency
144
138
  version_requirements: !ruby/object:Gem::Requirement
145
139
  requirements:
146
- - - '>='
147
- - !ruby/object:Gem::Version
148
- version: '0'
149
- name: pry-debugger
150
- requirement: !ruby/object:Gem::Requirement
151
- requirements:
152
- - - '>='
140
+ - - ">="
153
141
  - !ruby/object:Gem::Version
154
142
  version: '0'
155
- type: :development
156
- prerelease: false
157
143
  - !ruby/object:Gem::Dependency
158
- version_requirements: !ruby/object:Gem::Requirement
159
- requirements:
160
- - - <
161
- - !ruby/object:Gem::Version
162
- version: 3.0.0
163
144
  name: shoulda-matchers
164
145
  requirement: !ruby/object:Gem::Requirement
165
146
  requirements:
166
- - - <
147
+ - - "<"
167
148
  - !ruby/object:Gem::Version
168
149
  version: 3.0.0
169
150
  type: :development
170
151
  prerelease: false
171
- - !ruby/object:Gem::Dependency
172
152
  version_requirements: !ruby/object:Gem::Requirement
173
153
  requirements:
174
- - - '>='
154
+ - - "<"
175
155
  - !ruby/object:Gem::Version
176
- version: '0'
156
+ version: 3.0.0
157
+ - !ruby/object:Gem::Dependency
177
158
  name: simplecov
178
159
  requirement: !ruby/object:Gem::Requirement
179
160
  requirements:
180
- - - '>='
161
+ - - ">="
181
162
  - !ruby/object:Gem::Version
182
163
  version: '0'
183
164
  type: :development
184
165
  prerelease: false
185
- - !ruby/object:Gem::Dependency
186
166
  version_requirements: !ruby/object:Gem::Requirement
187
167
  requirements:
188
- - - '>='
168
+ - - ">="
189
169
  - !ruby/object:Gem::Version
190
170
  version: '0'
171
+ - !ruby/object:Gem::Dependency
191
172
  name: database_cleaner
192
173
  requirement: !ruby/object:Gem::Requirement
193
174
  requirements:
194
- - - '>='
175
+ - - ">="
195
176
  - !ruby/object:Gem::Version
196
177
  version: '0'
197
178
  type: :development
198
179
  prerelease: false
199
- - !ruby/object:Gem::Dependency
200
180
  version_requirements: !ruby/object:Gem::Requirement
201
181
  requirements:
202
- - - '>='
182
+ - - ">="
203
183
  - !ruby/object:Gem::Version
204
184
  version: '0'
185
+ - !ruby/object:Gem::Dependency
205
186
  name: sqlite3
206
187
  requirement: !ruby/object:Gem::Requirement
207
188
  requirements:
208
- - - '>='
189
+ - - ">="
209
190
  - !ruby/object:Gem::Version
210
191
  version: '0'
211
192
  type: :development
212
193
  prerelease: false
194
+ version_requirements: !ruby/object:Gem::Requirement
195
+ requirements:
196
+ - - ">="
197
+ - !ruby/object:Gem::Version
198
+ version: '0'
213
199
  description:
214
200
  email:
215
201
  - deniskorobitcin@gmail.com
@@ -217,16 +203,20 @@ executables: []
217
203
  extensions: []
218
204
  extra_rdoc_files: []
219
205
  files:
220
- - .gitignore
221
- - .rspec
206
+ - ".drone.yml"
207
+ - ".gitignore"
208
+ - ".rspec"
222
209
  - Appraisals
223
210
  - CHANGELOG.md
224
211
  - Gemfile
225
212
  - LICENSE.txt
226
- - Makefile
227
213
  - README.md
228
214
  - Rakefile
229
215
  - config.ru
216
+ - dip.yml
217
+ - docker-compose.development.yml
218
+ - docker-compose.drone.yml
219
+ - docker-compose.yml
230
220
  - lib/slavable.rb
231
221
  - lib/slaver.rb
232
222
  - lib/slaver/config_handler.rb
@@ -248,17 +238,17 @@ require_paths:
248
238
  - lib
249
239
  required_ruby_version: !ruby/object:Gem::Requirement
250
240
  requirements:
251
- - - '>='
241
+ - - ">="
252
242
  - !ruby/object:Gem::Version
253
243
  version: '0'
254
244
  required_rubygems_version: !ruby/object:Gem::Requirement
255
245
  requirements:
256
- - - '>='
246
+ - - ">="
257
247
  - !ruby/object:Gem::Version
258
248
  version: '0'
259
249
  requirements: []
260
250
  rubyforge_project:
261
- rubygems_version: 2.4.8
251
+ rubygems_version: 2.6.1
262
252
  signing_key:
263
253
  specification_version: 4
264
254
  summary: Instant change of connection in rails application.
data/Makefile DELETED
@@ -1,31 +0,0 @@
1
- BUNDLE = bundle
2
- BUNDLE_OPTIONS = -j 3
3
- RSPEC = ${APPRAISAL} rspec
4
- APPRAISAL = ${BUNDLE} exec appraisal
5
-
6
- all: test
7
-
8
- test: configs bundler appraisal
9
- ${RSPEC} 2>&1
10
-
11
- define DATABASE_YML
12
- test:
13
- adapter: sqlite3
14
- database: test
15
- test_other:
16
- adapter: sqlite3
17
- database: test_other
18
- endef
19
- export DATABASE_YML
20
-
21
- configs:
22
- echo "$${DATABASE_YML}" > spec/internal/config/database.yml
23
-
24
- bundler:
25
- if ! gem list bundler -i > /dev/null; then \
26
- gem install bundler; \
27
- fi
28
- ${BUNDLE} install ${BUNDLE_OPTIONS}
29
-
30
- appraisal:
31
- ${APPRAISAL} install