google-cloud-storage 1.30.0 → 1.31.0

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: d3b78945de5adc36366ded346357d71f954327a48b11d9d909ad5b8443f51c95
4
- data.tar.gz: adcc876f70b87130ca732a591a9f1d6aa278e03a0356ea012620f30650c3b25e
3
+ metadata.gz: c1b17e5256dade278dacc588b1dd5483769f352fa6a44075f8984c9b98e6951b
4
+ data.tar.gz: 9a17da5e7e0f0da605e290e4a17ad75d6d89c2d2c83549d6a70378f77b86c8c8
5
5
  SHA512:
6
- metadata.gz: e46be5fe50420e4a674add04d12a06243dba3438aafedc9356246ac8e5fa66aa0db547d9264a70b940cd46133aed1b7256cdad02397c93b0eeb73d312fffdd48
7
- data.tar.gz: 0a89f487726406d8865b1c675d43f1153e3cf78d0e5b8df1ebc4eb1f09a051f9dd45c328503d500dda6aee4bcd60c3693104d0371755154263eb52ccceaf3b1b
6
+ metadata.gz: 33b1ad115cb14c993607c4c173a8d117b19ebbe1515c7fbbaf6f7f38650dfcef0219b68e404a02a785f1092d6c1b04ffdab273c5546370569134b5fdbf596cc4
7
+ data.tar.gz: 8f4595aa9df9901462e1a2d522f35fd9b84ab2d96bbaf765e78582b4378c6270324efb3b43b037aa99e38377a5ed410c2dbe63c8ab34daf4b81004c0318a1edf
data/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # Release History
2
2
 
3
+ ### 1.31.0 / 2021-03-10
4
+
5
+ #### Features
6
+
7
+ * Drop support for Ruby 2.4 and add support for Ruby 3.0
8
+
3
9
  ### 1.30.0 / 2021-01-13
4
10
 
5
11
  #### Features
data/CONTRIBUTING.md CHANGED
@@ -24,7 +24,7 @@ be able to accept your pull requests.
24
24
  In order to use the google-cloud-storage console and run the project's tests,
25
25
  there is a small amount of setup:
26
26
 
27
- 1. Install Ruby. google-cloud-storage requires Ruby 2.4+. You may choose to
27
+ 1. Install Ruby. google-cloud-storage requires Ruby 2.5+. You may choose to
28
28
  manage your Ruby and gem installations with [RVM](https://rvm.io/),
29
29
  [rbenv](https://github.com/rbenv/rbenv), or
30
30
  [chruby](https://github.com/postmodern/chruby).
@@ -309,7 +309,7 @@ module Google
309
309
  # @see https://cloud.google.com/storage/docs/access-logs Access Logs
310
310
  #
311
311
  def logging_bucket
312
- @gapi.logging.log_bucket if @gapi.logging
312
+ @gapi.logging&.log_bucket
313
313
  end
314
314
 
315
315
  ##
@@ -333,7 +333,7 @@ module Google
333
333
  # @return [String]
334
334
  #
335
335
  def logging_prefix
336
- @gapi.logging.log_object_prefix if @gapi.logging
336
+ @gapi.logging&.log_object_prefix
337
337
  end
338
338
 
339
339
  ##
@@ -392,7 +392,7 @@ module Google
392
392
  # @return [Boolean]
393
393
  #
394
394
  def versioning?
395
- @gapi.versioning.enabled? unless @gapi.versioning.nil?
395
+ @gapi.versioning&.enabled?
396
396
  end
397
397
 
398
398
  ##
@@ -422,7 +422,7 @@ module Google
422
422
  # @return [String] The main page suffix.
423
423
  #
424
424
  def website_main
425
- @gapi.website.main_page_suffix if @gapi.website
425
+ @gapi.website&.main_page_suffix
426
426
  end
427
427
 
428
428
  ##
@@ -449,7 +449,7 @@ module Google
449
449
  # @return [String]
450
450
  #
451
451
  def website_404
452
- @gapi.website.not_found_page if @gapi.website
452
+ @gapi.website&.not_found_page
453
453
  end
454
454
 
455
455
  ##
@@ -498,7 +498,7 @@ module Google
498
498
  # the bucket.
499
499
  #
500
500
  def requester_pays
501
- @gapi.billing.requester_pays if @gapi.billing
501
+ @gapi.billing&.requester_pays
502
502
  end
503
503
  alias requester_pays? requester_pays
504
504
 
@@ -550,7 +550,7 @@ module Google
550
550
  # bucket.default_kms_key #=> kms_key_name
551
551
  #
552
552
  def default_kms_key
553
- @gapi.encryption && @gapi.encryption.default_kms_key_name
553
+ @gapi.encryption&.default_kms_key_name
554
554
  end
555
555
 
556
556
  ##
@@ -599,7 +599,7 @@ module Google
599
599
  # retention policy exists for the bucket.
600
600
  #
601
601
  def retention_period
602
- @gapi.retention_policy && @gapi.retention_policy.retention_period
602
+ @gapi.retention_policy&.retention_period
603
603
  end
604
604
 
605
605
  ##
@@ -658,7 +658,7 @@ module Google
658
658
  # policy, if a policy exists.
659
659
  #
660
660
  def retention_effective_at
661
- @gapi.retention_policy && @gapi.retention_policy.effective_time
661
+ @gapi.retention_policy&.effective_time
662
662
  end
663
663
 
664
664
  ##
@@ -808,7 +808,7 @@ module Google
808
808
  # bucket.uniform_bucket_level_access? # true
809
809
  #
810
810
  def uniform_bucket_level_access?
811
- return false unless @gapi.iam_configuration && @gapi.iam_configuration.uniform_bucket_level_access
811
+ return false unless @gapi.iam_configuration&.uniform_bucket_level_access
812
812
  !@gapi.iam_configuration.uniform_bucket_level_access.enabled.nil? &&
813
813
  @gapi.iam_configuration.uniform_bucket_level_access.enabled
814
814
  end
@@ -870,7 +870,7 @@ module Google
870
870
  # puts bucket.uniform_bucket_level_access_locked_at
871
871
  #
872
872
  def uniform_bucket_level_access_locked_at
873
- return nil unless @gapi.iam_configuration && @gapi.iam_configuration.uniform_bucket_level_access
873
+ return nil unless @gapi.iam_configuration&.uniform_bucket_level_access
874
874
  @gapi.iam_configuration.uniform_bucket_level_access.locked_time
875
875
  end
876
876
 
@@ -2572,9 +2572,11 @@ module Google
2572
2572
  # Yielded to a block to accumulate changes for a patch request.
2573
2573
  class Updater < Bucket
2574
2574
  attr_reader :updates
2575
+
2575
2576
  ##
2576
2577
  # Create an Updater object.
2577
2578
  def initialize gapi
2579
+ super()
2578
2580
  @updates = []
2579
2581
  @gapi = gapi
2580
2582
  @labels = @gapi.labels.to_h.dup
@@ -198,7 +198,7 @@ module Google
198
198
  gapi = @service.insert_bucket_acl @bucket, entity, "OWNER",
199
199
  user_project: user_project
200
200
  entity = gapi.entity
201
- @owners.push entity unless @owners.nil?
201
+ @owners&.push entity
202
202
  entity
203
203
  end
204
204
 
@@ -243,7 +243,7 @@ module Google
243
243
  gapi = @service.insert_bucket_acl @bucket, entity, "WRITER",
244
244
  user_project: user_project
245
245
  entity = gapi.entity
246
- @writers.push entity unless @writers.nil?
246
+ @writers&.push entity
247
247
  entity
248
248
  end
249
249
 
@@ -288,7 +288,7 @@ module Google
288
288
  gapi = @service.insert_bucket_acl @bucket, entity, "READER",
289
289
  user_project: user_project
290
290
  entity = gapi.entity
291
- @readers.push entity unless @readers.nil?
291
+ @readers&.push entity
292
292
  entity
293
293
  end
294
294
 
@@ -323,9 +323,9 @@ module Google
323
323
  def delete entity
324
324
  @service.delete_bucket_acl @bucket, entity,
325
325
  user_project: user_project
326
- @owners.delete entity unless @owners.nil?
327
- @writers.delete entity unless @writers.nil?
328
- @readers.delete entity unless @readers.nil?
326
+ @owners&.delete entity
327
+ @writers&.delete entity
328
+ @readers&.delete entity
329
329
  true
330
330
  end
331
331
 
@@ -445,8 +445,7 @@ module Google
445
445
 
446
446
  def entities_from_acls acls, role
447
447
  selected = acls.select { |acl| acl.role == role }
448
- entities = selected.map(&:entity)
449
- entities
448
+ selected.map(&:entity)
450
449
  end
451
450
  end
452
451
 
@@ -614,7 +613,7 @@ module Google
614
613
  gapi = @service.insert_default_acl @bucket, entity, "OWNER",
615
614
  user_project: user_project
616
615
  entity = gapi.entity
617
- @owners.push entity unless @owners.nil?
616
+ @owners&.push entity
618
617
  entity
619
618
  end
620
619
 
@@ -657,7 +656,7 @@ module Google
657
656
  gapi = @service.insert_default_acl @bucket, entity, "READER",
658
657
  user_project: user_project
659
658
  entity = gapi.entity
660
- @readers.push entity unless @readers.nil?
659
+ @readers&.push entity
661
660
  entity
662
661
  end
663
662
 
@@ -690,8 +689,8 @@ module Google
690
689
  def delete entity
691
690
  @service.delete_default_acl @bucket, entity,
692
691
  user_project: user_project
693
- @owners.delete entity unless @owners.nil?
694
- @readers.delete entity unless @readers.nil?
692
+ @owners&.delete entity
693
+ @readers&.delete entity
695
694
  true
696
695
  end
697
696
 
@@ -829,8 +828,7 @@ module Google
829
828
 
830
829
  def entities_from_acls acls, role
831
830
  selected = acls.select { |acl| acl.role == role }
832
- entities = selected.map(&:entity)
833
- entities
831
+ selected.map(&:entity)
834
832
  end
835
833
  end
836
834
  end
@@ -172,7 +172,10 @@ module Google
172
172
  # rule.max_age #=> 3600
173
173
  #
174
174
  class Rule
175
- attr_accessor :origin, :methods, :headers, :max_age
175
+ attr_accessor :origin
176
+ attr_accessor :methods
177
+ attr_accessor :headers
178
+ attr_accessor :max_age
176
179
 
177
180
  # @private
178
181
  def initialize origin, methods, headers: nil, max_age: nil
@@ -371,17 +371,17 @@ module Google
371
371
  # end
372
372
  #
373
373
  class Rule
374
- attr_accessor :action,
375
- :storage_class,
376
- :age,
377
- :created_before,
378
- :custom_time_before,
379
- :days_since_custom_time,
380
- :days_since_noncurrent_time,
381
- :is_live,
382
- :matches_storage_class,
383
- :noncurrent_time_before,
384
- :num_newer_versions
374
+ attr_accessor :action
375
+ attr_accessor :storage_class
376
+ attr_accessor :age
377
+ attr_accessor :created_before
378
+ attr_accessor :custom_time_before
379
+ attr_accessor :days_since_custom_time
380
+ attr_accessor :days_since_noncurrent_time
381
+ attr_accessor :is_live
382
+ attr_accessor :matches_storage_class
383
+ attr_accessor :noncurrent_time_before
384
+ attr_accessor :num_newer_versions
385
385
 
386
386
  # @private
387
387
  def initialize action,
@@ -125,17 +125,17 @@ module Google
125
125
  # puts bucket.name
126
126
  # end
127
127
  #
128
- def all request_limit: nil
128
+ def all request_limit: nil, &block
129
129
  request_limit = request_limit.to_i if request_limit
130
130
  unless block_given?
131
131
  return enum_for :all, request_limit: request_limit
132
132
  end
133
133
  results = self
134
134
  loop do
135
- results.each { |r| yield r }
135
+ results.each(&block)
136
136
  if request_limit
137
137
  request_limit -= 1
138
- break if request_limit < 0
138
+ break if request_limit.negative?
139
139
  end
140
140
  break unless results.next?
141
141
  results = results.next
@@ -38,20 +38,22 @@ module Google
38
38
  # storage.project_id #=> "my-project"
39
39
  #
40
40
  class Credentials < Google::Auth::Credentials
41
- SCOPE = \
42
- ["https://www.googleapis.com/auth/devstorage.full_control"].freeze
43
- PATH_ENV_VARS = %w[STORAGE_CREDENTIALS
44
- STORAGE_KEYFILE
45
- GOOGLE_CLOUD_CREDENTIALS
46
- GOOGLE_CLOUD_KEYFILE
47
- GCLOUD_KEYFILE].freeze
48
- JSON_ENV_VARS = %w[STORAGE_CREDENTIALS_JSON
49
- STORAGE_KEYFILE_JSON
50
- GOOGLE_CLOUD_CREDENTIALS_JSON
51
- GOOGLE_CLOUD_KEYFILE_JSON
52
- GCLOUD_KEYFILE_JSON].freeze
53
- DEFAULT_PATHS = \
54
- ["~/.config/gcloud/application_default_credentials.json"].freeze
41
+ SCOPE = ["https://www.googleapis.com/auth/devstorage.full_control"].freeze
42
+ PATH_ENV_VARS = [
43
+ "STORAGE_CREDENTIALS",
44
+ "STORAGE_KEYFILE",
45
+ "GOOGLE_CLOUD_CREDENTIALS",
46
+ "GOOGLE_CLOUD_KEYFILE",
47
+ "GCLOUD_KEYFILE"
48
+ ].freeze
49
+ JSON_ENV_VARS = [
50
+ "STORAGE_CREDENTIALS_JSON",
51
+ "STORAGE_KEYFILE_JSON",
52
+ "GOOGLE_CLOUD_CREDENTIALS_JSON",
53
+ "GOOGLE_CLOUD_KEYFILE_JSON",
54
+ "GCLOUD_KEYFILE_JSON"
55
+ ].freeze
56
+ DEFAULT_PATHS = ["~/.config/gcloud/application_default_credentials.json"].freeze
55
57
  end
56
58
  end
57
59
  end
@@ -191,7 +191,7 @@ module Google
191
191
  # @return [Integer]
192
192
  #
193
193
  def size
194
- @gapi.size.to_i if @gapi.size
194
+ @gapi.size&.to_i
195
195
  end
196
196
 
197
197
  ##
@@ -1873,7 +1873,7 @@ module Google
1873
1873
 
1874
1874
  ensure_service!
1875
1875
 
1876
- rewrite_attrs = %i[storage_class kms_key_name]
1876
+ rewrite_attrs = [:storage_class, :kms_key_name]
1877
1877
  @gapi = if attributes.any? { |a| rewrite_attrs.include? a }
1878
1878
  rewrite_gapi \
1879
1879
  bucket, name, update_gapi, user_project: user_project
@@ -1972,6 +1972,7 @@ module Google
1972
1972
  ##
1973
1973
  # @private Create an Updater object.
1974
1974
  def initialize gapi
1975
+ super()
1975
1976
  @updates = []
1976
1977
  @gapi = gapi
1977
1978
  @metadata ||= @gapi.metadata.to_h.dup
@@ -190,7 +190,7 @@ module Google
190
190
  generation: generation,
191
191
  user_project: user_project
192
192
  entity = gapi.entity
193
- @owners.push entity unless @owners.nil?
193
+ @owners&.push entity
194
194
  entity
195
195
  end
196
196
 
@@ -241,7 +241,7 @@ module Google
241
241
  generation: generation,
242
242
  user_project: user_project
243
243
  entity = gapi.entity
244
- @readers.push entity unless @readers.nil?
244
+ @readers&.push entity
245
245
  entity
246
246
  end
247
247
 
@@ -281,8 +281,8 @@ module Google
281
281
  @service.delete_file_acl \
282
282
  @bucket, @file, entity,
283
283
  generation: generation, user_project: user_project
284
- @owners.delete entity unless @owners.nil?
285
- @readers.delete entity unless @readers.nil?
284
+ @owners&.delete entity
285
+ @readers&.delete entity
286
286
  true
287
287
  end
288
288
 
@@ -428,8 +428,7 @@ module Google
428
428
 
429
429
  def entities_from_acls acls, role
430
430
  selected = acls.select { |acl| acl.role == role }
431
- entities = selected.map(&:entity)
432
- entities
431
+ selected.map(&:entity)
433
432
  end
434
433
  end
435
434
  end
@@ -141,17 +141,17 @@ module Google
141
141
  # puts file.name
142
142
  # end
143
143
  #
144
- def all request_limit: nil
144
+ def all request_limit: nil, &block
145
145
  request_limit = request_limit.to_i if request_limit
146
146
  unless block_given?
147
147
  return enum_for :all, request_limit: request_limit
148
148
  end
149
149
  results = self
150
150
  loop do
151
- results.each { |r| yield r }
151
+ results.each(&block)
152
152
  if request_limit
153
153
  request_limit -= 1
154
- break if request_limit < 0
154
+ break if request_limit.negative?
155
155
  end
156
156
  break unless results.next?
157
157
  results = results.next
@@ -147,10 +147,8 @@ module Google
147
147
  "&Expires=#{expires}" \
148
148
  "&Signature=#{url_escape signed_string}"
149
149
 
150
- if query
151
- query.each do |name, value|
152
- url << "&#{url_escape name}=#{url_escape value}"
153
- end
150
+ query&.each do |name, value|
151
+ url << "&#{url_escape name}=#{url_escape value}"
154
152
  end
155
153
 
156
154
  url
@@ -60,7 +60,7 @@ module Google
60
60
 
61
61
  p = {}
62
62
  p["conditions"] = policy_conditions base_fields, conditions, fields
63
- expires ||= 60*60*24
63
+ expires ||= 60 * 60 * 24
64
64
  p["expiration"] = (now + expires).strftime "%Y-%m-%dT%H:%M:%SZ"
65
65
 
66
66
  policy_str = escape_characters p.to_json
@@ -100,7 +100,7 @@ module Google
100
100
 
101
101
  algorithm = "GOOG4-RSA-SHA256"
102
102
  expires = determine_expires expires
103
- credential = issuer + "/" + scope
103
+ credential = "#{issuer}/#{scope}"
104
104
  canonical_query_str = canonical_query query, algorithm, credential, goog_date, expires, signed_headers_str
105
105
 
106
106
  # From AWS: You don't include a payload hash in the Canonical
@@ -131,9 +131,7 @@ module Google
131
131
  # methods below are public visibility only for unit testing
132
132
  def escape_characters str
133
133
  str.split("").map do |s|
134
- if !s.ascii_only?
135
- escape_special_unicode s
136
- else
134
+ if s.ascii_only?
137
135
  case s
138
136
  when "\\"
139
137
  '\\'
@@ -152,12 +150,14 @@ module Google
152
150
  else
153
151
  s
154
152
  end
153
+ else
154
+ escape_special_unicode s
155
155
  end
156
156
  end.join
157
157
  end
158
158
 
159
159
  def escape_special_unicode str
160
- str.unpack("U*").map { |i| '\u' + i.to_s(16).rjust(4, "0") }.join
160
+ str.unpack("U*").map { |i| "\\u#{i.to_s(16).rjust(4, '0')}" }.join
161
161
  end
162
162
 
163
163
  protected
@@ -212,14 +212,14 @@ module Google
212
212
  if signer.is_a? Proc
213
213
  lambda do |string_to_sign|
214
214
  sig = signer.call string_to_sign
215
- sig.unpack("H*").first
215
+ sig.unpack1 "H*"
216
216
  end
217
217
  else
218
218
  signer = OpenSSL::PKey::RSA.new signer unless signer.respond_to? :sign
219
219
  # Sign string to sign
220
220
  lambda do |string_to_sign|
221
221
  sig = signer.sign OpenSSL::Digest::SHA256.new, string_to_sign
222
- sig.unpack("H*").first
222
+ sig.unpack1 "H*"
223
223
  end
224
224
  end
225
225
  end
@@ -359,7 +359,7 @@ module Google
359
359
  end
360
360
  packed_signature = signing_key.sign OpenSSL::Digest::SHA256.new, data
361
361
  end
362
- packed_signature.unpack("H*").first.force_encoding "utf-8"
362
+ packed_signature.unpack1("H*").force_encoding "utf-8"
363
363
  end
364
364
  end
365
365
  end
@@ -131,17 +131,17 @@ module Google
131
131
  # puts key.access_id
132
132
  # end
133
133
  #
134
- def all request_limit: nil
134
+ def all request_limit: nil, &block
135
135
  request_limit = request_limit.to_i if request_limit
136
136
  unless block_given?
137
137
  return enum_for :all, request_limit: request_limit
138
138
  end
139
139
  results = self
140
140
  loop do
141
- results.each { |r| yield r }
141
+ results.each(&block)
142
142
  if request_limit
143
143
  request_limit -= 1
144
- break if request_limit < 0
144
+ break if request_limit.negative?
145
145
  end
146
146
  break unless results.next?
147
147
  results = results.next
@@ -212,8 +212,8 @@ module Google
212
212
  def deep_dup
213
213
  warn "DEPRECATED: Storage::PolicyV1#deep_dup"
214
214
  dup.tap do |p|
215
- roles_dup = p.roles.each_with_object({}) do |(k, v), memo|
216
- memo[k] = v.dup rescue value
215
+ roles_dup = p.roles.transform_values do |v|
216
+ v.dup rescue value
217
217
  end
218
218
  p.instance_variable_set :@roles, roles_dup
219
219
  end
@@ -89,7 +89,9 @@ module Google
89
89
  # end
90
90
  #
91
91
  class Binding
92
- attr_reader :role, :members, :condition
92
+ attr_reader :role
93
+ attr_reader :members
94
+ attr_reader :condition
93
95
 
94
96
  ##
95
97
  # Creates a Binding object.
@@ -128,8 +130,8 @@ module Google
128
130
  raise ArgumentError, "members is empty, must be provided" if @members.empty?
129
131
 
130
132
  condition = Condition.new(**condition) if condition.is_a? Hash
131
- if condition
132
- raise ArgumentError, "expected Condition, not #{condition.inspect}" unless condition.is_a? Condition
133
+ if condition && !(condition.is_a? Condition)
134
+ raise ArgumentError, "expected Condition, not #{condition.inspect}"
133
135
  end
134
136
  @condition = condition
135
137
  end
@@ -168,10 +168,10 @@ module Google
168
168
  # puts binding.role
169
169
  # end
170
170
  #
171
- def each
171
+ def each &block
172
172
  return enum_for :each unless block_given?
173
173
 
174
- @bindings.each { |binding| yield binding }
174
+ @bindings.each(&block)
175
175
  end
176
176
 
177
177
  ##
@@ -70,7 +70,9 @@ module Google
70
70
  # end
71
71
  #
72
72
  class Condition
73
- attr_reader :title, :description, :expression
73
+ attr_reader :title
74
+ attr_reader :description
75
+ attr_reader :expression
74
76
 
75
77
  ##
76
78
  # Creates a Condition object.
@@ -83,7 +85,7 @@ module Google
83
85
  # one attributes, and statements are combined using logic operators,
84
86
  # following CEL language specification. Required.
85
87
  #
86
- def initialize title:, description: nil, expression:
88
+ def initialize title:, expression:, description: nil
87
89
  @title = String title
88
90
  @description = String description
89
91
  @expression = String expression
@@ -59,7 +59,8 @@ module Google
59
59
  # post.fields["x-goog-signature"] #=> "4893a0e...cd82"
60
60
  #
61
61
  class PostObject
62
- attr_reader :url, :fields
62
+ attr_reader :url
63
+ attr_reader :fields
63
64
 
64
65
  # @private
65
66
  def initialize url, fields
@@ -16,7 +16,7 @@
16
16
  module Google
17
17
  module Cloud
18
18
  module Storage
19
- VERSION = "1.30.0".freeze
19
+ VERSION = "1.31.0".freeze
20
20
  end
21
21
  end
22
22
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-cloud-storage
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.30.0
4
+ version: 1.31.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mike Moore
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2021-01-13 00:00:00.000000000 Z
12
+ date: 2021-03-11 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: google-cloud-core
@@ -115,14 +115,14 @@ dependencies:
115
115
  requirements:
116
116
  - - "~>"
117
117
  - !ruby/object:Gem::Version
118
- version: 1.24.0
118
+ version: 1.25.1
119
119
  type: :development
120
120
  prerelease: false
121
121
  version_requirements: !ruby/object:Gem::Requirement
122
122
  requirements:
123
123
  - - "~>"
124
124
  - !ruby/object:Gem::Version
125
- version: 1.24.0
125
+ version: 1.25.1
126
126
  - !ruby/object:Gem::Dependency
127
127
  name: minitest
128
128
  requirement: !ruby/object:Gem::Requirement
@@ -305,14 +305,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
305
305
  requirements:
306
306
  - - ">="
307
307
  - !ruby/object:Gem::Version
308
- version: '2.4'
308
+ version: '2.5'
309
309
  required_rubygems_version: !ruby/object:Gem::Requirement
310
310
  requirements:
311
311
  - - ">="
312
312
  - !ruby/object:Gem::Version
313
313
  version: '0'
314
314
  requirements: []
315
- rubygems_version: 3.1.4
315
+ rubygems_version: 3.2.13
316
316
  signing_key:
317
317
  specification_version: 4
318
318
  summary: API Client library for Google Cloud Storage