lite-ruby 1.1.7 → 1.1.12

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: 449bb1f7a973ab0c66adef45e5a8a7d0b222cacac8c96f2776ebfc2654273dc4
4
- data.tar.gz: 38a4bbdf3182c831d4dcde08f6eef607413894eb94a6546675918c95e07b2ba0
3
+ metadata.gz: a396444ff8c06f3c21d41e17b3360d5af587e6914f1d9835527316c6eaeb9a3a
4
+ data.tar.gz: 6034fb2b62c4e0ab25b74cccd1285c5266d3880741c345f3780dcd193ff16eff
5
5
  SHA512:
6
- metadata.gz: 17a571db6be5716b0618b5245981a7601762d243fcc1173f4813891918a1bf6413d04b04a13e376dfe66088fc53ac4e5020363e7d88fe4840c0be78182b5acc8
7
- data.tar.gz: 7958b5a6d6680c57723337085c28b244b7cf37e277560ec6e2ef25aa5fc4fc75f4f06d21db34d5f6ec3ce06e98a74eac0e8b110a7f730faa46ab46cbabcc781b
6
+ metadata.gz: 70d61e9235e2a68f62848ac14e37a6bc442746e57af32d26a2361849c88501cbf20ed723f6db5665a95734c77e9418fe66e2f9b900c36ffedfdbad141b0f6f48
7
+ data.tar.gz: 42661db34d7fa54d3d29a4ddc71f266ab7670d334544c8e14a5504ffece60a1f0bf04fcefbbad0e69d29bcf14a40e738326f95c06a4c98c72faf45e00680e52a
data/CHANGELOG.md CHANGED
@@ -6,6 +6,34 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
+ ## [1.1.12] - 2021-07-05
10
+ ### Added
11
+ - Added OpenStruct backwards compatibility
12
+
13
+ ## [1.1.11] - 2021-07-04
14
+ ### Added
15
+ - Added Array => `contains_all?`
16
+ - Added Array => `contains_any?`
17
+ - Added Array => `contains_none?`
18
+
19
+ ## [1.1.10] - 2021-06-21
20
+ ### Changed
21
+ - Struct `[]` to be accessible via `attributes`
22
+ ### Removed
23
+ - OpenStruct `[]` and `[]=` existing methods
24
+
25
+ ## [1.1.9] - 2021-05-26
26
+ ### Added
27
+ - Added Array => `match`
28
+ - Added Array => `strip` to `compact_blank` alias
29
+ - Added Enumerable => `pick`
30
+ ### Changed
31
+ - Move safe requires to bottom of file
32
+
33
+ ## [1.1.8] - 2021-07-05
34
+ ### Changed
35
+ - Linter fixes
36
+
9
37
  ## [1.1.7] - 2021-03-04
10
38
  ### Added
11
39
  - Added Integer => `SQL_SMALLINT`
data/Gemfile.lock CHANGED
@@ -1,25 +1,25 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- lite-ruby (1.1.7)
4
+ lite-ruby (1.1.12)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
8
8
  specs:
9
- actionpack (6.1.3)
10
- actionview (= 6.1.3)
11
- activesupport (= 6.1.3)
9
+ actionpack (6.1.4)
10
+ actionview (= 6.1.4)
11
+ activesupport (= 6.1.4)
12
12
  rack (~> 2.0, >= 2.0.9)
13
13
  rack-test (>= 0.6.3)
14
14
  rails-dom-testing (~> 2.0)
15
15
  rails-html-sanitizer (~> 1.0, >= 1.2.0)
16
- actionview (6.1.3)
17
- activesupport (= 6.1.3)
16
+ actionview (6.1.4)
17
+ activesupport (= 6.1.4)
18
18
  builder (~> 3.1)
19
19
  erubi (~> 1.4)
20
20
  rails-dom-testing (~> 2.0)
21
21
  rails-html-sanitizer (~> 1.1, >= 1.2.0)
22
- activesupport (6.1.3)
22
+ activesupport (6.1.4)
23
23
  concurrent-ruby (~> 1.0, >= 1.0.2)
24
24
  i18n (>= 1.6, < 2)
25
25
  minitest (>= 5.1)
@@ -28,7 +28,7 @@ GEM
28
28
  ast (2.4.2)
29
29
  builder (3.2.4)
30
30
  colorize (0.8.1)
31
- concurrent-ruby (1.1.8)
31
+ concurrent-ruby (1.1.9)
32
32
  crass (1.0.6)
33
33
  diff-lcs (1.4.4)
34
34
  erubi (1.10.0)
@@ -38,19 +38,19 @@ GEM
38
38
  generator_spec (0.9.4)
39
39
  activesupport (>= 3.0.0)
40
40
  railties (>= 3.0.0)
41
- i18n (1.8.9)
41
+ i18n (1.8.10)
42
42
  concurrent-ruby (~> 1.0)
43
- loofah (2.9.0)
43
+ loofah (2.10.0)
44
44
  crass (~> 1.0.2)
45
45
  nokogiri (>= 1.5.9)
46
46
  method_source (1.0.0)
47
- mini_portile2 (2.5.0)
47
+ mini_portile2 (2.5.3)
48
48
  minitest (5.14.4)
49
- nokogiri (1.11.1)
49
+ nokogiri (1.11.7)
50
50
  mini_portile2 (~> 2.5.0)
51
51
  racc (~> 1.4)
52
52
  parallel (1.20.1)
53
- parser (3.0.0.0)
53
+ parser (3.0.1.1)
54
54
  ast (~> 2.4.1)
55
55
  racc (1.5.2)
56
56
  rack (2.2.3)
@@ -61,16 +61,16 @@ GEM
61
61
  nokogiri (>= 1.6)
62
62
  rails-html-sanitizer (1.3.0)
63
63
  loofah (~> 2.3)
64
- railties (6.1.3)
65
- actionpack (= 6.1.3)
66
- activesupport (= 6.1.3)
64
+ railties (6.1.4)
65
+ actionpack (= 6.1.4)
66
+ activesupport (= 6.1.4)
67
67
  method_source
68
- rake (>= 0.8.7)
68
+ rake (>= 0.13)
69
69
  thor (~> 1.0)
70
70
  rainbow (3.0.0)
71
71
  rake (13.0.3)
72
72
  regexp_parser (2.1.1)
73
- rexml (3.2.4)
73
+ rexml (3.2.5)
74
74
  rspec (3.10.0)
75
75
  rspec-core (~> 3.10.0)
76
76
  rspec-expectations (~> 3.10.0)
@@ -84,29 +84,29 @@ GEM
84
84
  diff-lcs (>= 1.2.0, < 2.0)
85
85
  rspec-support (~> 3.10.0)
86
86
  rspec-support (3.10.2)
87
- rubocop (1.11.0)
87
+ rubocop (1.18.2)
88
88
  parallel (~> 1.10)
89
89
  parser (>= 3.0.0.0)
90
90
  rainbow (>= 2.2.2, < 4.0)
91
91
  regexp_parser (>= 1.8, < 3.0)
92
92
  rexml
93
- rubocop-ast (>= 1.2.0, < 2.0)
93
+ rubocop-ast (>= 1.7.0, < 2.0)
94
94
  ruby-progressbar (~> 1.7)
95
95
  unicode-display_width (>= 1.4.0, < 3.0)
96
- rubocop-ast (1.4.1)
97
- parser (>= 2.7.1.5)
98
- rubocop-performance (1.10.1)
99
- rubocop (>= 0.90.0, < 2.0)
96
+ rubocop-ast (1.7.0)
97
+ parser (>= 3.0.1.1)
98
+ rubocop-performance (1.11.3)
99
+ rubocop (>= 1.7.0, < 2.0)
100
100
  rubocop-ast (>= 0.4.0)
101
- rubocop-rake (0.5.1)
102
- rubocop
103
- rubocop-rspec (2.2.0)
101
+ rubocop-rake (0.6.0)
102
+ rubocop (~> 1.0)
103
+ rubocop-rspec (2.4.0)
104
104
  rubocop (~> 1.0)
105
105
  rubocop-ast (>= 1.1.0)
106
106
  ruby-progressbar (1.11.0)
107
- ruby_parser (3.15.1)
108
- sexp_processor (~> 4.9)
109
- sexp_processor (4.15.2)
107
+ ruby_parser (3.16.0)
108
+ sexp_processor (~> 4.15, >= 4.15.1)
109
+ sexp_processor (4.15.3)
110
110
  thor (1.1.0)
111
111
  tzinfo (2.0.4)
112
112
  concurrent-ruby (~> 1.0)
@@ -129,4 +129,4 @@ DEPENDENCIES
129
129
  rubocop-rspec
130
130
 
131
131
  BUNDLED WITH
132
- 2.2.12
132
+ 2.2.19
data/docs/ARRAY.md CHANGED
@@ -104,6 +104,39 @@ Updates a deeply nested value.
104
104
  ['1', ['2']].bury(1) #=> raises ArgumentError: '2 or more arguments required'
105
105
  ```
106
106
 
107
+ `contains_all?`
108
+ ------
109
+ Returns true/false if an array contains all values from another.
110
+
111
+ ```ruby
112
+ [1, 2, 3].contains_all?([1, 2, 3]) #=> true
113
+ [1, 2, 3].contains_all?([1, 2, 3, 4]) #=> true
114
+ [1, 2, 3].contains_all?([1, 2]) #=> false
115
+ [1, 2, 3].contains_all?([4, 5]) #=> false
116
+ ```
117
+
118
+ `contains_any?`
119
+ ------
120
+ Returns true/false if an array contains any values from another.
121
+
122
+ ```ruby
123
+ [1, 2, 3].contains_any?([1, 2]) #=> true
124
+ [1, 2, 3].contains_any?([1, 2, 3]) #=> true
125
+ [1, 2, 3].contains_any?([1, 2, 3, 4]) #=> true
126
+ [1, 2, 3].contains_any?([4, 5]) #=> false
127
+ ```
128
+
129
+ `contains_none?`
130
+ ------
131
+ Returns true/false if an array contains none of the values from another.
132
+
133
+ ```ruby
134
+ [1, 2, 3].contains_none?([4, 5]) #=> true
135
+ [1, 2, 3].contains_none?([1, 2]) #=> false
136
+ [1, 2, 3].contains_none?([1, 2, 3]) #=> false
137
+ [1, 2, 3].contains_none?([1, 2, 3, 4]) #=> false
138
+ ```
139
+
107
140
  `delete_first(!)`
108
141
  ------
109
142
  Removes the first element from an array. Like `shift`, but returns the array instead of the removed element.
@@ -235,6 +268,15 @@ Returns all indexes of the matching value.
235
268
  [:a,:b,:a,:c].indexes(:a) #=> [0, 2]
236
269
  ```
237
270
 
271
+ `match`
272
+ ------
273
+ Select a given value from the array.
274
+
275
+ ```ruby
276
+ [1, 2, 3, 4].match(1) #=> 1
277
+ [1, 2, 3, 4].match(9) #=> nil
278
+ ```
279
+
238
280
  `merge(!)`
239
281
  ------
240
282
  Concats multiple arrays.
@@ -259,6 +301,7 @@ Selects given values from the array.
259
301
 
260
302
  ```ruby
261
303
  [1, 2, 3, 4].only(1, 3) #=> [1, 3]
304
+ [1, 2, 3, 4].only!(8, 9) #=> []
262
305
  ```
263
306
 
264
307
  `probability`
@@ -328,7 +371,7 @@ Divides the array into one or more subarrays based on a delimiting value or the
328
371
  (1..10).to_a.split { |i| i % 3 == 0 } # => [[1, 2], [4, 5], [7, 8], [10]]
329
372
  ```
330
373
 
331
- `strip(!)`
374
+ `strip(!)` aka `compact_blank(!)`
332
375
  ------
333
376
  Removes blank elements from an array.
334
377
 
data/docs/ENUMERABLE.md CHANGED
@@ -158,6 +158,18 @@ a1.occur(2..3) #=> [1,3,5]
158
158
  a1.occur { |n| n > 1 } #=> [1,3,5]
159
159
  ```
160
160
 
161
+ `pick`
162
+ ------
163
+ Returns a value from a set of given keys.
164
+
165
+ ```ruby
166
+ a1 = [{ id: 1, name: 'a' }, { id: 2, name: 'b' }]
167
+
168
+ a1.pick(:id) #=> 1
169
+ a1.pick(:id, :name) #=> [1,'a']
170
+ a1.pick(:fake) #=> nil
171
+ ```
172
+
161
173
  `pluck`
162
174
  ------
163
175
  Returns an array of values from a set of given keys.
@@ -167,6 +179,7 @@ a1 = [{ id: 1, name: 'a' }, { id: 2, name: 'b' }]
167
179
 
168
180
  a1.pluck(:id) #=> [1,2]
169
181
  a1.pluck(:id, :name) #=> [[1,'a'], [2,'b']]
182
+ a1.pluck(:fake) #=> [nil,nil]
170
183
  ```
171
184
 
172
185
  `produce`
data/docs/OPEN_STRUCT.md CHANGED
@@ -9,26 +9,6 @@ OpenStruct.new(name: 'bob', age: 60) do |o|
9
9
  end
10
10
  ```
11
11
 
12
- `[]`
13
- ------
14
- Access a value in the OpenStruct by key, like a Hash.
15
-
16
- ```ruby
17
- person = OpenStruct.new(name: 'bob', age: 60)
18
-
19
- person['name'] #=> 'bob'
20
- ```
21
-
22
- `[]=`
23
- ------
24
- Store a value in the OpenStruct by key, like a Hash.
25
-
26
- ```ruby
27
- person = OpenStruct.new(name: 'bob', age: 60)
28
-
29
- person['name'] = 'tim'
30
- ```
31
-
32
12
  `attributes`
33
13
  ------
34
14
  Returns the key values as a hash of the assigned struct.
data/docs/STRING.md CHANGED
@@ -240,9 +240,9 @@ of the string until it reaches the limit value (counting backwards). If the give
240
240
  than or equal to the string length, Returns a copy of self.
241
241
 
242
242
  ```ruby
243
- 'example'.last #=> 'e'
244
- 'example'.last(0) #=> ''
245
- 'example'.first(3) #=> 'ple'
243
+ 'example'.last #=> 'e'
244
+ 'example'.last(0) #=> ''
245
+ 'example'.last(3) #=> 'ple'
246
246
  ```
247
247
 
248
248
  `lchomp(!)`
data/docs/STRUCT.md CHANGED
@@ -9,6 +9,7 @@ person = Struct.new(:name, :age)
9
9
  person.new('bob', 60)
10
10
 
11
11
  person['name'] #=> 'bob'
12
+ person['fake'] #=> nil
12
13
  ```
13
14
 
14
15
  `[]=`
@@ -1,8 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  if Lite::Ruby.configuration.monkey_patches.include?('array')
4
- require 'lite/ruby/safe/array' unless defined?(ActiveSupport)
5
-
6
4
  class Array
7
5
 
8
6
  def assert_min_values!(*valid_values)
@@ -111,6 +109,18 @@ if Lite::Ruby.configuration.monkey_patches.include?('array')
111
109
  # rubocop:enable Metrics/PerceivedComplexity, Style/GuardClause, Style/IfInsideElse
112
110
  # rubocop:enable Metrics/AbcSize, Metrics/BlockNesting, Metrics/MethodLength
113
111
 
112
+ def contains_all?(other)
113
+ (other & self) == self
114
+ end
115
+
116
+ def contains_any?(other)
117
+ !contains_none?(other)
118
+ end
119
+
120
+ def contains_none?(other)
121
+ (other & self).empty?
122
+ end
123
+
114
124
  def delete_first
115
125
  self[1..-1]
116
126
  end
@@ -188,6 +198,10 @@ if Lite::Ruby.configuration.monkey_patches.include?('array')
188
198
  array
189
199
  end
190
200
 
201
+ def match(value)
202
+ find { |val| value == val }
203
+ end
204
+
191
205
  def merge(*values)
192
206
  dup.merge!(*values)
193
207
  end
@@ -282,4 +296,6 @@ if Lite::Ruby.configuration.monkey_patches.include?('array')
282
296
  alias select_values! only!
283
297
 
284
298
  end
299
+
300
+ require 'lite/ruby/safe/array' unless defined?(ActiveSupport)
285
301
  end
@@ -1,8 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  if Lite::Ruby.configuration.monkey_patches.include?('enumerable')
4
- require 'lite/ruby/safe/enumerable' unless defined?(ActiveSupport)
5
-
6
4
  module Enumerable
7
5
 
8
6
  def cluster
@@ -57,11 +55,9 @@ if Lite::Ruby.configuration.monkey_patches.include?('enumerable')
57
55
  found_count > num ? false : num == found_count
58
56
  end
59
57
 
60
- # rubocop:disable Style/CaseEquality
61
58
  def excase?(object)
62
- none? { |val| object === val }
59
+ none?(object)
63
60
  end
64
- # rubocop:enable Style/CaseEquality
65
61
 
66
62
  def expand
67
63
  map { |val| val.is_a?(Enumerable) ? val.expand : val }
@@ -79,11 +75,9 @@ if Lite::Ruby.configuration.monkey_patches.include?('enumerable')
79
75
  each_with_object(Hash.new(0)) { |val, hash| hash[val] += 1 }
80
76
  end
81
77
 
82
- # rubocop:disable Style/CaseEquality
83
78
  def incase?(object)
84
- any? { |val| object === val }
79
+ any?(object)
85
80
  end
86
- # rubocop:enable Style/CaseEquality
87
81
 
88
82
  # rubocop:disable Metrics/MethodLength
89
83
  def interpose(sep, &block)
@@ -213,4 +207,6 @@ if Lite::Ruby.configuration.monkey_patches.include?('enumerable')
213
207
  alias occurrences frequency
214
208
 
215
209
  end
210
+
211
+ require 'lite/ruby/safe/enumerable' unless defined?(ActiveSupport)
216
212
  end
@@ -1,8 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  if Lite::Ruby.configuration.monkey_patches.include?('hash')
4
- require 'lite/ruby/safe/hash' unless defined?(ActiveSupport)
5
-
6
4
  class Hash
7
5
 
8
6
  class << self
@@ -405,4 +403,6 @@ if Lite::Ruby.configuration.monkey_patches.include?('hash')
405
403
  alias to_o to_object
406
404
 
407
405
  end
406
+
407
+ require 'lite/ruby/safe/hash' unless defined?(ActiveSupport)
408
408
  end
@@ -1,8 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  if Lite::Ruby.configuration.monkey_patches.include?('object')
4
- require 'lite/ruby/safe/object' unless defined?(ActiveSupport)
5
-
6
4
  class Object
7
5
 
8
6
  FALSE_VALUES = %w[
@@ -168,4 +166,6 @@ if Lite::Ruby.configuration.monkey_patches.include?('object')
168
166
  alias to_b to_bool
169
167
 
170
168
  end
169
+
170
+ require 'lite/ruby/safe/object' unless defined?(ActiveSupport)
171
171
  end
@@ -20,24 +20,12 @@ if Lite::Ruby.configuration.monkey_patches.include?('open_struct')
20
20
  yield self if block && block.arity == 1
21
21
  end
22
22
 
23
- def [](key)
24
- key = key.to_sym unless key.is_a?(Symbol)
25
- @table[key]
26
- end
27
-
28
- def []=(key, val)
29
- raise TypeError, "can't modify frozen #{self.class}", caller(1) if frozen?
30
-
31
- key = key.to_sym unless key.is_a?(Symbol)
32
- @table[key] = val
33
- end
34
-
35
23
  def attributes
36
24
  @table
37
25
  end
38
26
 
39
27
  def replace(args)
40
- args.each_pair { |key, val| send("#{key}=", val) }
28
+ args.each { |key, val| send("#{key}=", val) }
41
29
  end
42
30
 
43
31
  def to_hash(table: true)
@@ -53,5 +41,33 @@ if Lite::Ruby.configuration.monkey_patches.include?('open_struct')
53
41
  alias as_json to_json
54
42
  alias to_h to_hash
55
43
 
44
+ private
45
+
46
+ # rubocop:disable Metrics/MethodLength, Naming/PredicateName
47
+ def is_method_protected!(name)
48
+ return false unless respond_to?(name, true)
49
+ return true if name.match?(/!$/)
50
+
51
+ owner = method!(name).owner
52
+
53
+ if owner.instance_of?(::Class)
54
+ owner < ::OpenStruct
55
+ else
56
+ self.class.ancestors.any? do |mod|
57
+ return false if mod == ::OpenStruct
58
+
59
+ mod == owner
60
+ end
61
+ end
62
+ end
63
+ # rubocop:enable Metrics/MethodLength, Naming/PredicateName
64
+
65
+ def new_ostruct_member!(name)
66
+ return if is_method_protected!(name)
67
+
68
+ define_singleton_method!(name) { @table[name] }
69
+ define_singleton_method!("#{name}=") { |x| @table[name] = x }
70
+ end
71
+
56
72
  end
57
73
  end
@@ -1,8 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  if Lite::Ruby.configuration.monkey_patches.include?('range')
4
- require 'lite/ruby/safe/range' unless defined?(ActiveSupport)
5
-
6
4
  class Range
7
5
 
8
6
  def combine(other)
@@ -29,4 +27,6 @@ if Lite::Ruby.configuration.monkey_patches.include?('range')
29
27
  end
30
28
 
31
29
  end
30
+
31
+ require 'lite/ruby/safe/range' unless defined?(ActiveSupport)
32
32
  end
@@ -98,4 +98,7 @@ class Array
98
98
  end
99
99
  end
100
100
 
101
+ alias compact_blank strip
102
+ alias compact_blank! strip!
103
+
101
104
  end
@@ -28,11 +28,22 @@ module Enumerable
28
28
  end
29
29
  end
30
30
 
31
+ def pick(*keys)
32
+ return if none?
33
+
34
+ if keys.many?
35
+ keys.map { |key| first[key] }
36
+ else
37
+ first[keys.first]
38
+ end
39
+ end
40
+
31
41
  def pluck(*keys)
32
42
  if keys.many?
33
43
  map { |element| keys.map { |key| element[key] } }
34
44
  else
35
- map { |element| element[keys.first] }
45
+ key = keys.first
46
+ map { |element| element[key] }
36
47
  end
37
48
  end
38
49
 
@@ -1,8 +1,6 @@
1
1
  # frozen_string_literal: false
2
2
 
3
3
  if Lite::Ruby.configuration.monkey_patches.include?('string')
4
- require 'lite/ruby/safe/string' unless defined?(ActiveSupport)
5
-
6
4
  class String
7
5
 
8
6
  TRANSLITERATIONS = {
@@ -482,4 +480,6 @@ if Lite::Ruby.configuration.monkey_patches.include?('string')
482
480
  alias titlecase! titleize!
483
481
 
484
482
  end
483
+
484
+ require 'lite/ruby/safe/string' unless defined?(ActiveSupport)
485
485
  end
@@ -4,7 +4,7 @@ if Lite::Ruby.configuration.monkey_patches.include?('struct')
4
4
  class Struct
5
5
 
6
6
  def [](key)
7
- send(key)
7
+ attributes[key.to_sym]
8
8
  end
9
9
 
10
10
  def []=(key, val)
@@ -3,7 +3,7 @@
3
3
  module Lite
4
4
  module Ruby
5
5
 
6
- VERSION = '1.1.7'
6
+ VERSION = '1.1.12'
7
7
 
8
8
  end
9
9
  end
data/lite-ruby.gemspec CHANGED
@@ -25,7 +25,7 @@ Gem::Specification.new do |spec|
25
25
  )
26
26
  else
27
27
  raise 'RubyGems 2.0 or newer is required to protect against ' \
28
- 'public gem pushes.'
28
+ 'public gem pushes.'
29
29
  end
30
30
 
31
31
  # Specify which files should be added to the gem when it is released.
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lite-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.7
4
+ version: 1.1.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - Juan Gomez
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-03-04 00:00:00.000000000 Z
11
+ date: 2021-07-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -222,7 +222,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
222
222
  - !ruby/object:Gem::Version
223
223
  version: '0'
224
224
  requirements: []
225
- rubygems_version: 3.2.12
225
+ rubygems_version: 3.2.19
226
226
  signing_key:
227
227
  specification_version: 4
228
228
  summary: Collection of useful Ruby methods for its primitive classes