hoodoo 2.12.7 → 2.12.8.pre

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 430542c918e33830c23d09b1d4d6116f9d948bdca2d43f60c7b65c3a6d8be4f9
4
- data.tar.gz: add79127d4fcc1ffa7a99a83c59bcdc47f6a766ce27c96fe3bd9f18f07874f8e
3
+ metadata.gz: 5314ed63ab3c81f3fe92a32cd73d7daceab70dc64675a3e54c8a8d2ac7e0fc73
4
+ data.tar.gz: eb3f2f21e7d8e42ec2790e0a24a06db17e4e92e08fa690ca0bfed6133d2a484c
5
5
  SHA512:
6
- metadata.gz: 1464c30acc087565f5c609ce1fbf6f9048dd9c3f995f2094ecdf7e6328b43d2c952e013feec8550ba253c820f0fd70946d52b40e1a57a2ecdf98138ba4a8a0a0
7
- data.tar.gz: 5bfbf36ce4b624de24ef07bd64ba12462e471e3755ee23ce891370535e63382b986efdd2716a7caf25d365d36e8a800cad46c371935d59dbaf9384210b56099b
6
+ metadata.gz: a27bed801be8c350c7b5cbdb72322a810ed52a3ca494fe1efdf18065cb4c07460ee9ba26613dbd32eab1add5aa90585a1331f4303dac816d9ff85975faef58ea
7
+ data.tar.gz: 24a8fc2c87586633390ea2bdfe85ba3e6bff0e465ae6aee43a5a8e8fd004bdcd9e52452ff97ac79bdb0f1744c11ab2e8f08864aecef74940a1683bb7cb721173
@@ -161,7 +161,7 @@ module Hoodoo
161
161
  # # E.g.:
162
162
  # #
163
163
  # # {
164
- # # "numbers" => [ BigDecimal.new( '2.2511' ) ]
164
+ # # "numbers" => [ BigDecimal( '2.2511' ) ]
165
165
  # # }
166
166
  #
167
167
  def array( name, options = {}, &block )
@@ -58,21 +58,16 @@ module Hoodoo; module Services; class Discovery # Just used as a namespace here
58
58
  # server is already running, expect an "address in use" connection
59
59
  # exception from DRb.
60
60
  #
61
- # $SAFE will be set to 1 (unless it is already higher) in this thread.
62
- #
63
61
  # +port+:: Passed to ::uri method.
64
62
  #
65
63
  def self.start( port = nil )
66
64
 
67
65
  uri = self.uri( port )
68
66
 
69
- # For security, "disable eval() and friends":
70
- #
71
- # http://www.ruby-doc.org/stdlib-2.2.3/libdoc/drb/rdoc/DRb.html
72
- # https://ruby-hacking-guide.github.io/security.html
73
- # http://blog.recurity-labs.com/archives/2011/05/12/druby_for_penetration_testers/
74
-
75
- $SAFE = 1
67
+ # $SAFE and taint tracking is being removed from ruby 2.7+
68
+ # https://bugs.ruby-lang.org/issues/16131
69
+ # Set to 0 to disable taint tracking in earlier versions
70
+ $SAFE = 0
76
71
 
77
72
  # Have to allow a tained port string from "outside" just to be able
78
73
  # to start the service on a given port; so untaint that deliberately.
@@ -12,11 +12,11 @@ module Hoodoo
12
12
  # The Hoodoo gem version. If this changes, be sure to re-run
13
13
  # <tt>bundle install</tt> or <tt>bundle update</tt>.
14
14
  #
15
- VERSION = '2.12.7'
15
+ VERSION = '2.12.8.pre'
16
16
 
17
17
  # The Hoodoo gem date. If this changes, be sure to re-run
18
18
  # <tt>bundle install</tt> or <tt>bundle update</tt>.
19
19
  #
20
- DATE = '2021-02-12'
20
+ DATE = '2021-05-31'
21
21
 
22
22
  end
@@ -274,9 +274,9 @@ describe Hoodoo::Presenters::Array do
274
274
  'boolean' => { :valid => [ true ], :invalid => [ 4.51, 'false' ] },
275
275
  'date' => { :valid => [ Date.today.iso8601 ], :invalid => [ Date.today, '23rd January 2041' ] },
276
276
  'date_time' => { :valid => [ DateTime.now.iso8601 ], :invalid => [ DateTime.now, '2017-01-27 12:00' ] },
277
- 'decimal' => { :valid => [ '4.51' ], :invalid => [ 4.51, BigDecimal.new( '4.51' ) ] },
277
+ 'decimal' => { :valid => [ '4.51' ], :invalid => [ 4.51, BigDecimal( '4.51' ) ] },
278
278
  'enum' => { :valid => [ 'one' ], :invalid => [ 'One', 1 ] },
279
- 'float' => { :valid => [ 4.51 ], :invalid => [ BigDecimal.new(4.51, 2), '4.51' ] },
279
+ 'float' => { :valid => [ 4.51 ], :invalid => [ BigDecimal(4.51, 2), '4.51' ] },
280
280
  'integer' => { :valid => [ 4 ], :invalid => [ '4' ] },
281
281
  'string' => { :valid => [ 'four' ], :invalid => [ 'toolong', 4, true ] },
282
282
  'tags' => { :valid => [ 'tag_a,tag_b,tag_c' ], :invalid => [ 4, true ] },
@@ -446,9 +446,9 @@ describe Hoodoo::Presenters::Array do
446
446
  let( :valid_data ) do
447
447
  {
448
448
  'numbers' => [
449
- BigDecimal.new( '42.55111' ), # Precision is FYI data generators, not the renderer :-/
450
- BigDecimal.new( '42.4' ),
451
- BigDecimal.new( '42' )
449
+ BigDecimal( '42.55111' ), # Precision is FYI data generators, not the renderer :-/
450
+ BigDecimal( '42.4' ),
451
+ BigDecimal( '42' )
452
452
  ]
453
453
  }
454
454
  end
@@ -598,9 +598,9 @@ describe Hoodoo::Presenters::Hash do
598
598
  'boolean' => { :valid => [ true ], :invalid => [ 4.51, 'false' ] },
599
599
  'date' => { :valid => [ Date.today.iso8601 ], :invalid => [ Date.today, '23rd January 2041' ] },
600
600
  'date_time' => { :valid => [ DateTime.now.iso8601 ], :invalid => [ DateTime.now, '2017-01-27 12:00' ] },
601
- 'decimal' => { :valid => [ '4.51' ], :invalid => [ 4.51, BigDecimal.new( '4.51' ) ] },
601
+ 'decimal' => { :valid => [ '4.51' ], :invalid => [ 4.51, BigDecimal( '4.51' ) ] },
602
602
  'enum' => { :valid => [ 'one' ], :invalid => [ 'One', 1 ] },
603
- 'float' => { :valid => [ 4.51 ], :invalid => [ BigDecimal.new(4.51, 2), '4.51' ] },
603
+ 'float' => { :valid => [ 4.51 ], :invalid => [ BigDecimal(4.51, 2), '4.51' ] },
604
604
  'integer' => { :valid => [ 4 ], :invalid => [ '4' ] },
605
605
  'string' => { :valid => [ 'four' ], :invalid => [ 'toolong', 4, true ] },
606
606
  'tags' => { :valid => [ 'tag_a,tag_b,tag_c' ], :invalid => [ 4, true ] },
@@ -1254,9 +1254,9 @@ describe Hoodoo::Presenters::Hash do
1254
1254
  'boolean' => { :definition => { :length => 9, :type => :boolean }, :valid => [ true ], :invalid => [ 4.51, 'false' ] },
1255
1255
  'date' => { :definition => { :length => 9, :type => :date }, :valid => [ Date.today.iso8601 ], :invalid => [ Date.today, '23rd January 2041' ] },
1256
1256
  'date_time' => { :definition => { :length => 9, :type => :date_time }, :valid => [ DateTime.now.iso8601 ], :invalid => [ DateTime.now, '2017-01-27 12:00' ] },
1257
- 'decimal' => { :definition => { :length => 9, :type => :decimal, :field_precision => 2 }, :valid => [ '4.51' ], :invalid => [ 4.51, BigDecimal.new( '4.51' ) ] },
1257
+ 'decimal' => { :definition => { :length => 9, :type => :decimal, :field_precision => 2 }, :valid => [ '4.51' ], :invalid => [ 4.51, BigDecimal( '4.51' ) ] },
1258
1258
  'enum' => { :definition => { :length => 9, :type => :enum, :field_from => [ :one, :two, :three ] }, :valid => [ 'one' ], :invalid => [ 'One', 1 ] },
1259
- 'float' => { :definition => { :length => 9, :type => :float }, :valid => [ 4.51 ], :invalid => [ BigDecimal.new(4.51, 2), '4.51' ] },
1259
+ 'float' => { :definition => { :length => 9, :type => :float }, :valid => [ 4.51 ], :invalid => [ BigDecimal(4.51, 2), '4.51' ] },
1260
1260
  'integer' => { :definition => { :length => 9, :type => :integer }, :valid => [ 4 ], :invalid => [ '4' ] },
1261
1261
  'string' => { :definition => { :length => 9, :type => :string, :field_length => 4 }, :valid => [ 'four' ], :invalid => [ 'toolong', 4, true ] },
1262
1262
  'tags' => { :definition => { :length => 9, :type => :tags }, :valid => [ 'tag_a,tag_b,tag_c' ], :invalid => [ 4, true ] },
metadata CHANGED
@@ -1,29 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hoodoo
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.12.7
4
+ version: 2.12.8.pre
5
5
  platform: ruby
6
6
  authors:
7
7
  - Loyalty New Zealand
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-02-12 00:00:00.000000000 Z
11
+ date: 2021-05-31 00:00:00.000000000 Z
12
12
  dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: rack
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - ">="
18
- - !ruby/object:Gem::Version
19
- version: '0'
20
- type: :runtime
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - ">="
25
- - !ruby/object:Gem::Version
26
- version: '0'
27
13
  - !ruby/object:Gem::Dependency
28
14
  name: dalli
29
15
  requirement: !ruby/object:Gem::Requirement
@@ -39,13 +25,13 @@ dependencies:
39
25
  - !ruby/object:Gem::Version
40
26
  version: '2.7'
41
27
  - !ruby/object:Gem::Dependency
42
- name: bundle-audit
28
+ name: rack
43
29
  requirement: !ruby/object:Gem::Requirement
44
30
  requirements:
45
31
  - - ">="
46
32
  - !ruby/object:Gem::Version
47
33
  version: '0'
48
- type: :development
34
+ type: :runtime
49
35
  prerelease: false
50
36
  version_requirements: !ruby/object:Gem::Requirement
51
37
  requirements:
@@ -53,271 +39,285 @@ dependencies:
53
39
  - !ruby/object:Gem::Version
54
40
  version: '0'
55
41
  - !ruby/object:Gem::Dependency
56
- name: redis
42
+ name: activerecord
57
43
  requirement: !ruby/object:Gem::Requirement
58
44
  requirements:
59
45
  - - "~>"
60
46
  - !ruby/object:Gem::Version
61
- version: '4.0'
47
+ version: 5.2.4.3
62
48
  type: :development
63
49
  prerelease: false
64
50
  version_requirements: !ruby/object:Gem::Requirement
65
51
  requirements:
66
52
  - - "~>"
67
53
  - !ruby/object:Gem::Version
68
- version: '4.0'
54
+ version: 5.2.4.3
69
55
  - !ruby/object:Gem::Dependency
70
- name: rake
56
+ name: activesupport
71
57
  requirement: !ruby/object:Gem::Requirement
72
58
  requirements:
73
59
  - - "~>"
74
60
  - !ruby/object:Gem::Version
75
- version: '12.0'
61
+ version: 5.2.4.3
76
62
  type: :development
77
63
  prerelease: false
78
64
  version_requirements: !ruby/object:Gem::Requirement
79
65
  requirements:
80
66
  - - "~>"
81
67
  - !ruby/object:Gem::Version
82
- version: '12.0'
68
+ version: 5.2.4.3
83
69
  - !ruby/object:Gem::Dependency
84
- name: simplecov-rcov
70
+ name: airbrake
85
71
  requirement: !ruby/object:Gem::Requirement
86
72
  requirements:
87
73
  - - "~>"
88
74
  - !ruby/object:Gem::Version
89
- version: '0.2'
75
+ version: '7.3'
90
76
  type: :development
91
77
  prerelease: false
92
78
  version_requirements: !ruby/object:Gem::Requirement
93
79
  requirements:
94
80
  - - "~>"
95
81
  - !ruby/object:Gem::Version
96
- version: '0.2'
82
+ version: '7.3'
97
83
  - !ruby/object:Gem::Dependency
98
- name: rdoc
84
+ name: airbrake-ruby
99
85
  requirement: !ruby/object:Gem::Requirement
100
86
  requirements:
101
87
  - - "~>"
102
88
  - !ruby/object:Gem::Version
103
- version: '6.0'
89
+ version: '2.11'
104
90
  type: :development
105
91
  prerelease: false
106
92
  version_requirements: !ruby/object:Gem::Requirement
107
93
  requirements:
108
94
  - - "~>"
109
95
  - !ruby/object:Gem::Version
110
- version: '6.0'
96
+ version: '2.11'
111
97
  - !ruby/object:Gem::Dependency
112
- name: rack-test
98
+ name: alchemy-flux
113
99
  requirement: !ruby/object:Gem::Requirement
114
100
  requirements:
115
- - - "~>"
101
+ - - '='
116
102
  - !ruby/object:Gem::Version
117
- version: '1.1'
103
+ version: 1.2.1
118
104
  type: :development
119
105
  prerelease: false
120
106
  version_requirements: !ruby/object:Gem::Requirement
121
107
  requirements:
122
- - - "~>"
108
+ - - '='
123
109
  - !ruby/object:Gem::Version
124
- version: '1.1'
110
+ version: 1.2.1
125
111
  - !ruby/object:Gem::Dependency
126
- name: alchemy-flux
112
+ name: bundle-audit
127
113
  requirement: !ruby/object:Gem::Requirement
128
114
  requirements:
129
- - - '='
115
+ - - ">="
130
116
  - !ruby/object:Gem::Version
131
- version: 1.2.1
117
+ version: '0'
132
118
  type: :development
133
119
  prerelease: false
134
120
  version_requirements: !ruby/object:Gem::Requirement
135
121
  requirements:
136
- - - '='
122
+ - - ">="
137
123
  - !ruby/object:Gem::Version
138
- version: 1.2.1
124
+ version: '0'
139
125
  - !ruby/object:Gem::Dependency
140
- name: rspec
126
+ name: byebug
141
127
  requirement: !ruby/object:Gem::Requirement
142
128
  requirements:
143
129
  - - "~>"
144
130
  - !ruby/object:Gem::Version
145
- version: '3.8'
131
+ version: '10.0'
146
132
  type: :development
147
133
  prerelease: false
148
134
  version_requirements: !ruby/object:Gem::Requirement
149
135
  requirements:
150
136
  - - "~>"
151
137
  - !ruby/object:Gem::Version
152
- version: '3.8'
138
+ version: '10.0'
153
139
  - !ruby/object:Gem::Dependency
154
- name: rspec-mocks
140
+ name: database_cleaner
155
141
  requirement: !ruby/object:Gem::Requirement
156
142
  requirements:
157
143
  - - "~>"
158
144
  - !ruby/object:Gem::Version
159
- version: '3.8'
145
+ version: '1.7'
160
146
  type: :development
161
147
  prerelease: false
162
148
  version_requirements: !ruby/object:Gem::Requirement
163
149
  requirements:
164
150
  - - "~>"
165
151
  - !ruby/object:Gem::Version
166
- version: '3.8'
152
+ version: '1.7'
167
153
  - !ruby/object:Gem::Dependency
168
- name: webmock
154
+ name: le
169
155
  requirement: !ruby/object:Gem::Requirement
170
156
  requirements:
171
157
  - - "~>"
172
158
  - !ruby/object:Gem::Version
173
- version: '3.4'
159
+ version: '2.7'
174
160
  type: :development
175
161
  prerelease: false
176
162
  version_requirements: !ruby/object:Gem::Requirement
177
163
  requirements:
178
164
  - - "~>"
179
165
  - !ruby/object:Gem::Version
180
- version: '3.4'
166
+ version: '2.7'
181
167
  - !ruby/object:Gem::Dependency
182
- name: activerecord
168
+ name: pg
183
169
  requirement: !ruby/object:Gem::Requirement
184
170
  requirements:
185
171
  - - "~>"
186
172
  - !ruby/object:Gem::Version
187
- version: 5.2.4.3
173
+ version: '1.0'
188
174
  type: :development
189
175
  prerelease: false
190
176
  version_requirements: !ruby/object:Gem::Requirement
191
177
  requirements:
192
178
  - - "~>"
193
179
  - !ruby/object:Gem::Version
194
- version: 5.2.4.3
180
+ version: '1.0'
195
181
  - !ruby/object:Gem::Dependency
196
- name: activesupport
182
+ name: rack-test
197
183
  requirement: !ruby/object:Gem::Requirement
198
184
  requirements:
199
185
  - - "~>"
200
186
  - !ruby/object:Gem::Version
201
- version: 5.2.4.3
187
+ version: '1.1'
202
188
  type: :development
203
189
  prerelease: false
204
190
  version_requirements: !ruby/object:Gem::Requirement
205
191
  requirements:
206
192
  - - "~>"
207
193
  - !ruby/object:Gem::Version
208
- version: 5.2.4.3
194
+ version: '1.1'
209
195
  - !ruby/object:Gem::Dependency
210
- name: database_cleaner
196
+ name: rake
211
197
  requirement: !ruby/object:Gem::Requirement
212
198
  requirements:
213
199
  - - "~>"
214
200
  - !ruby/object:Gem::Version
215
- version: '1.7'
201
+ version: '12.0'
216
202
  type: :development
217
203
  prerelease: false
218
204
  version_requirements: !ruby/object:Gem::Requirement
219
205
  requirements:
220
206
  - - "~>"
221
207
  - !ruby/object:Gem::Version
222
- version: '1.7'
208
+ version: '12.0'
223
209
  - !ruby/object:Gem::Dependency
224
- name: pg
210
+ name: raygun4ruby
225
211
  requirement: !ruby/object:Gem::Requirement
226
212
  requirements:
227
213
  - - "~>"
228
214
  - !ruby/object:Gem::Version
229
- version: '1.0'
215
+ version: '2.7'
230
216
  type: :development
231
217
  prerelease: false
232
218
  version_requirements: !ruby/object:Gem::Requirement
233
219
  requirements:
234
220
  - - "~>"
235
221
  - !ruby/object:Gem::Version
236
- version: '1.0'
222
+ version: '2.7'
237
223
  - !ruby/object:Gem::Dependency
238
- name: byebug
224
+ name: redis
239
225
  requirement: !ruby/object:Gem::Requirement
240
226
  requirements:
241
227
  - - "~>"
242
228
  - !ruby/object:Gem::Version
243
- version: '10.0'
229
+ version: '4.0'
244
230
  type: :development
245
231
  prerelease: false
246
232
  version_requirements: !ruby/object:Gem::Requirement
247
233
  requirements:
248
234
  - - "~>"
249
235
  - !ruby/object:Gem::Version
250
- version: '10.0'
236
+ version: '4.0'
251
237
  - !ruby/object:Gem::Dependency
252
- name: timecop
238
+ name: rspec
253
239
  requirement: !ruby/object:Gem::Requirement
254
240
  requirements:
255
241
  - - "~>"
256
242
  - !ruby/object:Gem::Version
257
- version: '0.9'
243
+ version: '3.8'
258
244
  type: :development
259
245
  prerelease: false
260
246
  version_requirements: !ruby/object:Gem::Requirement
261
247
  requirements:
262
248
  - - "~>"
263
249
  - !ruby/object:Gem::Version
264
- version: '0.9'
250
+ version: '3.8'
265
251
  - !ruby/object:Gem::Dependency
266
- name: raygun4ruby
252
+ name: rspec-mocks
267
253
  requirement: !ruby/object:Gem::Requirement
268
254
  requirements:
269
255
  - - "~>"
270
256
  - !ruby/object:Gem::Version
271
- version: '2.7'
257
+ version: '3.8'
272
258
  type: :development
273
259
  prerelease: false
274
260
  version_requirements: !ruby/object:Gem::Requirement
275
261
  requirements:
276
262
  - - "~>"
277
263
  - !ruby/object:Gem::Version
278
- version: '2.7'
264
+ version: '3.8'
279
265
  - !ruby/object:Gem::Dependency
280
- name: airbrake-ruby
266
+ name: sdoc
281
267
  requirement: !ruby/object:Gem::Requirement
282
268
  requirements:
283
269
  - - "~>"
284
270
  - !ruby/object:Gem::Version
285
- version: '2.11'
271
+ version: '2.2'
286
272
  type: :development
287
273
  prerelease: false
288
274
  version_requirements: !ruby/object:Gem::Requirement
289
275
  requirements:
290
276
  - - "~>"
291
277
  - !ruby/object:Gem::Version
292
- version: '2.11'
278
+ version: '2.2'
293
279
  - !ruby/object:Gem::Dependency
294
- name: airbrake
280
+ name: simplecov-rcov
295
281
  requirement: !ruby/object:Gem::Requirement
296
282
  requirements:
297
283
  - - "~>"
298
284
  - !ruby/object:Gem::Version
299
- version: '7.3'
285
+ version: '0.2'
300
286
  type: :development
301
287
  prerelease: false
302
288
  version_requirements: !ruby/object:Gem::Requirement
303
289
  requirements:
304
290
  - - "~>"
305
291
  - !ruby/object:Gem::Version
306
- version: '7.3'
292
+ version: '0.2'
307
293
  - !ruby/object:Gem::Dependency
308
- name: le
294
+ name: timecop
309
295
  requirement: !ruby/object:Gem::Requirement
310
296
  requirements:
311
297
  - - "~>"
312
298
  - !ruby/object:Gem::Version
313
- version: '2.7'
299
+ version: '0.9'
314
300
  type: :development
315
301
  prerelease: false
316
302
  version_requirements: !ruby/object:Gem::Requirement
317
303
  requirements:
318
304
  - - "~>"
319
305
  - !ruby/object:Gem::Version
320
- version: '2.7'
306
+ version: '0.9'
307
+ - !ruby/object:Gem::Dependency
308
+ name: webmock
309
+ requirement: !ruby/object:Gem::Requirement
310
+ requirements:
311
+ - - "~>"
312
+ - !ruby/object:Gem::Version
313
+ version: '3.4'
314
+ type: :development
315
+ prerelease: false
316
+ version_requirements: !ruby/object:Gem::Requirement
317
+ requirements:
318
+ - - "~>"
319
+ - !ruby/object:Gem::Version
320
+ version: '3.4'
321
321
  description: Simplify the implementation of consistent services within an API-based
322
322
  software platform.
323
323
  email:
@@ -591,14 +591,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
591
591
  requirements:
592
592
  - - ">="
593
593
  - !ruby/object:Gem::Version
594
- version: 2.2.10
594
+ version: 2.5.5
595
595
  required_rubygems_version: !ruby/object:Gem::Requirement
596
596
  requirements:
597
- - - ">="
597
+ - - ">"
598
598
  - !ruby/object:Gem::Version
599
- version: '0'
599
+ version: 1.3.1
600
600
  requirements: []
601
- rubygems_version: 3.2.9
601
+ rubygems_version: 3.2.21
602
602
  signing_key:
603
603
  specification_version: 4
604
604
  summary: Opinionated APIs