google-cloud-storage 1.18.1 → 1.44.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (34) hide show
  1. checksums.yaml +4 -4
  2. data/AUTHENTICATION.md +17 -30
  3. data/CHANGELOG.md +312 -0
  4. data/CONTRIBUTING.md +4 -5
  5. data/LOGGING.md +1 -1
  6. data/OVERVIEW.md +37 -5
  7. data/TROUBLESHOOTING.md +2 -8
  8. data/lib/google/cloud/storage/bucket/acl.rb +40 -40
  9. data/lib/google/cloud/storage/bucket/cors.rb +4 -1
  10. data/lib/google/cloud/storage/bucket/lifecycle.rb +259 -44
  11. data/lib/google/cloud/storage/bucket/list.rb +3 -3
  12. data/lib/google/cloud/storage/bucket.rb +1096 -172
  13. data/lib/google/cloud/storage/convert.rb +4 -3
  14. data/lib/google/cloud/storage/credentials.rb +16 -14
  15. data/lib/google/cloud/storage/errors.rb +7 -2
  16. data/lib/google/cloud/storage/file/acl.rb +181 -20
  17. data/lib/google/cloud/storage/file/list.rb +10 -8
  18. data/lib/google/cloud/storage/file/signer_v2.rb +36 -18
  19. data/lib/google/cloud/storage/file/signer_v4.rb +249 -61
  20. data/lib/google/cloud/storage/file/verifier.rb +2 -2
  21. data/lib/google/cloud/storage/file.rb +450 -84
  22. data/lib/google/cloud/storage/hmac_key/list.rb +182 -0
  23. data/lib/google/cloud/storage/hmac_key.rb +316 -0
  24. data/lib/google/cloud/storage/policy/binding.rb +246 -0
  25. data/lib/google/cloud/storage/policy/bindings.rb +196 -0
  26. data/lib/google/cloud/storage/policy/condition.rb +138 -0
  27. data/lib/google/cloud/storage/policy.rb +277 -24
  28. data/lib/google/cloud/storage/post_object.rb +20 -2
  29. data/lib/google/cloud/storage/project.rb +249 -50
  30. data/lib/google/cloud/storage/service.rb +479 -288
  31. data/lib/google/cloud/storage/version.rb +1 -1
  32. data/lib/google/cloud/storage.rb +86 -16
  33. data/lib/google-cloud-storage.rb +54 -7
  34. metadata +74 -27
@@ -16,7 +16,7 @@
16
16
  module Google
17
17
  module Cloud
18
18
  module Storage
19
- VERSION = "1.18.1".freeze
19
+ VERSION = "1.44.0".freeze
20
20
  end
21
21
  end
22
22
  end
@@ -55,7 +55,18 @@ module Google
55
55
  # * `https://www.googleapis.com/auth/devstorage.full_control`
56
56
  # @param [Integer] retries Number of times to retry requests on server
57
57
  # error. The default value is `3`. Optional.
58
- # @param [Integer] timeout Default timeout to use in requests. Optional.
58
+ # @param [Integer] max_elapsed_time Total time in seconds that requests are allowed to keep being retried.
59
+ # @param [Float] base_interval The initial interval in seconds between tries.
60
+ # @param [Integer] max_interval The maximum interval in seconds that any individual retry can reach.
61
+ # @param [Integer] multiplier Each successive interval grows by this factor. A multipler of 1.5 means the next
62
+ # interval will be 1.5x the current interval.
63
+ # @param [Integer] timeout (default timeout) The max duration, in seconds, to wait before timing out. Optional.
64
+ # If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol.
65
+ # @param [Integer] open_timeout How long, in seconds, before failed connections time out. Optional.
66
+ # @param [Integer] read_timeout How long, in seconds, before requests time out. Optional.
67
+ # @param [Integer] send_timeout How long, in seconds, before receiving response from server times out. Optional.
68
+ # @param [String] endpoint Override of the endpoint host name. Optional.
69
+ # If the param is nil, uses the default endpoint.
59
70
  # @param [String] project Alias for the `project_id` argument. Deprecated.
60
71
  # @param [String] keyfile Alias for the `credentials` argument.
61
72
  # Deprecated.
@@ -73,30 +84,44 @@ module Google
73
84
  # bucket = storage.bucket "my-bucket"
74
85
  # file = bucket.file "path/to/my-file.ext"
75
86
  #
87
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity, Metrics/AbcSize
76
88
  def self.new project_id: nil, credentials: nil, scope: nil, retries: nil,
77
- timeout: nil, project: nil, keyfile: nil
78
- project_id ||= (project || default_project_id)
79
- scope ||= configure.scope
80
- retries ||= configure.retries
81
- timeout ||= configure.timeout
82
- credentials ||= (keyfile || default_credentials(scope: scope))
89
+ timeout: nil, open_timeout: nil, read_timeout: nil,
90
+ send_timeout: nil, endpoint: nil, project: nil, keyfile: nil,
91
+ max_elapsed_time: nil, base_interval: nil, max_interval: nil,
92
+ multiplier: nil
93
+ scope ||= configure.scope
94
+ retries ||= configure.retries
95
+ timeout ||= configure.timeout
96
+ open_timeout ||= (configure.open_timeout || timeout)
97
+ read_timeout ||= (configure.read_timeout || timeout)
98
+ send_timeout ||= (configure.send_timeout || timeout)
99
+ endpoint ||= configure.endpoint
100
+ credentials ||= (keyfile || default_credentials(scope: scope))
101
+ max_elapsed_time ||= configure.max_elapsed_time
102
+ base_interval ||= configure.base_interval
103
+ max_interval ||= configure.max_interval
104
+ multiplier ||= configure.multiplier
83
105
 
84
106
  unless credentials.is_a? Google::Auth::Credentials
85
107
  credentials = Storage::Credentials.new credentials, scope: scope
86
108
  end
87
109
 
88
- if credentials.respond_to? :project_id
89
- project_id ||= credentials.project_id
90
- end
91
- project_id = project_id.to_s # Always cast to a string
110
+ project_id = resolve_project_id(project_id || project, credentials)
92
111
  raise ArgumentError, "project_id is missing" if project_id.empty?
93
112
 
94
113
  Storage::Project.new(
95
114
  Storage::Service.new(
96
- project_id, credentials, retries: retries, timeout: timeout
115
+ project_id, credentials,
116
+ retries: retries, timeout: timeout, open_timeout: open_timeout,
117
+ read_timeout: read_timeout, send_timeout: send_timeout,
118
+ host: endpoint, quota_project: configure.quota_project,
119
+ max_elapsed_time: max_elapsed_time, base_interval: base_interval,
120
+ max_interval: max_interval, multiplier: multiplier
97
121
  )
98
122
  )
99
123
  end
124
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity, Metrics/AbcSize
100
125
 
101
126
  ##
102
127
  # Creates an unauthenticated, anonymous client for retrieving public data
@@ -104,7 +129,18 @@ module Google
104
129
  #
105
130
  # @param [Integer] retries Number of times to retry requests on server
106
131
  # error. The default value is `3`. Optional.
107
- # @param [Integer] timeout Default timeout to use in requests. Optional.
132
+ # @param [Integer] max_elapsed_time Total time in seconds that requests are allowed to keep being retried.
133
+ # @param [Float] base_interval The initial interval in seconds between tries.
134
+ # @param [Integer] max_interval The maximum interval in seconds that any individual retry can reach.
135
+ # @param [Integer] multiplier Each successive interval grows by this factor. A multipler of 1.5 means the next
136
+ # interval will be 1.5x the current interval.
137
+ # @param [Integer] timeout (default timeout) The max duration, in seconds, to wait before timing out. Optional.
138
+ # If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol.
139
+ # @param [Integer] open_timeout How long, in seconds, before failed connections time out. Optional.
140
+ # @param [Integer] read_timeout How long, in seconds, before requests time out. Optional.
141
+ # @param [Integer] send_timeout How long, in seconds, before receiving response from server times out. Optional.
142
+ # @param [String] endpoint Override of the endpoint host name. Optional.
143
+ # If the param is nil, uses the default endpoint.
108
144
  #
109
145
  # @return [Google::Cloud::Storage::Project]
110
146
  #
@@ -120,9 +156,20 @@ module Google
120
156
  # downloaded.rewind
121
157
  # downloaded.read #=> "Hello world!"
122
158
  #
123
- def self.anonymous retries: nil, timeout: nil
159
+ def self.anonymous retries: nil, timeout: nil, open_timeout: nil,
160
+ read_timeout: nil, send_timeout: nil, endpoint: nil,
161
+ max_elapsed_time: nil, base_interval: nil, max_interval: nil,
162
+ multiplier: nil
163
+ open_timeout ||= timeout
164
+ read_timeout ||= timeout
165
+ send_timeout ||= timeout
124
166
  Storage::Project.new(
125
- Storage::Service.new(nil, nil, retries: retries, timeout: timeout)
167
+ Storage::Service.new(
168
+ nil, nil, retries: retries, timeout: timeout, open_timeout: open_timeout,
169
+ read_timeout: read_timeout, send_timeout: send_timeout, host: endpoint,
170
+ max_elapsed_time: max_elapsed_time, base_interval: base_interval,
171
+ max_interval: max_interval, multiplier: multiplier
172
+ )
126
173
  )
127
174
  end
128
175
 
@@ -137,11 +184,24 @@ module Google
137
184
  # the keyfile as a String, the contents of the keyfile as a Hash, or a
138
185
  # Google::Auth::Credentials object. (See {Storage::Credentials}) (The
139
186
  # parameter `keyfile` is considered deprecated, but may also be used.)
187
+ # * `endpoint` - (String) Override of the endpoint host name, or `nil`
188
+ # to use the default endpoint.
140
189
  # * `scope` - (String, Array<String>) The OAuth 2.0 scopes controlling
141
190
  # the set of resources and operations that the connection can access.
142
191
  # * `retries` - (Integer) Number of times to retry requests on server
143
192
  # error.
144
- # * `timeout` - (Integer) Default timeout to use in requests.
193
+ # * `max_elapsed_time` - (Integer) Total time in seconds that requests
194
+ # are allowed to keep being retried.
195
+ # * `base_interval` - (Float) The initial interval in seconds between tries.
196
+ # * `max_interval` - (Integer) The maximum interval in seconds that any
197
+ # individual retry can reach.
198
+ # * `multiplier` - (Integer) Each successive interval grows by this factor.
199
+ # A multipler of 1.5 means the next interval will be 1.5x the current interval.
200
+ # * `timeout` - (Integer) (default timeout) The max duration, in seconds, to wait before timing out.
201
+ # If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol.
202
+ # * `open_timeout` - (Integer) How long, in seconds, before failed connections time out.
203
+ # * `read_timeout` - (Integer) How long, in seconds, before requests time out.
204
+ # * `send_timeout` - (Integer) How long, in seconds, before receiving response from server times out.
145
205
  #
146
206
  # @return [Google::Cloud::Config] The configuration object the
147
207
  # Google::Cloud::Storage library uses.
@@ -152,6 +212,16 @@ module Google
152
212
  Google::Cloud.configure.storage
153
213
  end
154
214
 
215
+ ##
216
+ # @private Resolve project.
217
+ def self.resolve_project_id given_project, credentials
218
+ project_id = given_project || default_project_id
219
+ if credentials.respond_to? :project_id
220
+ project_id ||= credentials.project_id
221
+ end
222
+ project_id.to_s # Always cast to a string
223
+ end
224
+
155
225
  ##
156
226
  # @private Default project.
157
227
  def self.default_project_id
@@ -45,7 +45,16 @@ module Google
45
45
  # * `https://www.googleapis.com/auth/devstorage.full_control`
46
46
  # @param [Integer] retries Number of times to retry requests on server
47
47
  # error. The default value is `3`. Optional.
48
- # @param [Integer] timeout Default timeout to use in requests. Optional.
48
+ # @param [Integer] max_elapsed_time Total time in seconds that requests are allowed to keep being retried.
49
+ # @param [Float] base_interval The initial interval in seconds between tries.
50
+ # @param [Integer] max_interval The maximum interval in seconds that any individual retry can reach.
51
+ # @param [Integer] multiplier Each successive interval grows by this factor. A multipler of 1.5 means the next
52
+ # interval will be 1.5x the current interval.
53
+ # @param [Integer] timeout (default timeout) The max duration, in seconds, to wait before timing out. Optional.
54
+ # If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol.
55
+ # @param [Integer] open_timeout How long, in seconds, before failed connections time out. Optional.
56
+ # @param [Integer] read_timeout How long, in seconds, before requests time out. Optional.
57
+ # @param [Integer] send_timeout How long, in seconds, before receiving response from server times out. Optional.
49
58
  #
50
59
  # @return [Google::Cloud::Storage::Project]
51
60
  #
@@ -64,10 +73,18 @@ module Google
64
73
  # readonly_scope = "https://www.googleapis.com/auth/devstorage.read_only"
65
74
  # readonly_storage = gcloud.storage scope: readonly_scope
66
75
  #
67
- def storage scope: nil, retries: nil, timeout: nil
76
+ def storage scope: nil, retries: nil, timeout: nil, open_timeout: nil, read_timeout: nil, send_timeout: nil,
77
+ max_elapsed_time: nil, base_interval: nil, max_interval: nil, multiplier: nil
68
78
  Google::Cloud.storage @project, @keyfile, scope: scope,
69
79
  retries: (retries || @retries),
70
- timeout: (timeout || @timeout)
80
+ timeout: (timeout || @timeout),
81
+ open_timeout: (open_timeout || timeout),
82
+ read_timeout: (read_timeout || timeout),
83
+ send_timeout: (send_timeout || timeout),
84
+ max_elapsed_time: max_elapsed_time,
85
+ base_interval: base_interval,
86
+ max_interval: max_interval,
87
+ multiplier: multiplier
71
88
  end
72
89
 
73
90
  ##
@@ -93,7 +110,16 @@ module Google
93
110
  # * `https://www.googleapis.com/auth/devstorage.full_control`
94
111
  # @param [Integer] retries Number of times to retry requests on server
95
112
  # error. The default value is `3`. Optional.
96
- # @param [Integer] timeout Default timeout to use in requests. Optional.
113
+ # @param [Integer] max_elapsed_time Total time in seconds that requests are allowed to keep being retried.
114
+ # @param [Float] base_interval The initial interval in seconds between tries.
115
+ # @param [Integer] max_interval The maximum interval in seconds that any individual retry can reach.
116
+ # @param [Integer] multiplier Each successive interval grows by this factor. A multipler of 1.5 means the next
117
+ # interval will be 1.5x the current interval.
118
+ # @param [Integer] timeout (default timeout) The max duration, in seconds, to wait before timing out. Optional.
119
+ # If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol.
120
+ # @param [Integer] open_timeout How long, in seconds, before failed connections time out. Optional.
121
+ # @param [Integer] read_timeout How long, in seconds, before requests time out. Optional.
122
+ # @param [Integer] send_timeout How long, in seconds, before receiving response from server times out. Optional.
97
123
  #
98
124
  # @return [Google::Cloud::Storage::Project]
99
125
  #
@@ -107,17 +133,27 @@ module Google
107
133
  # file = bucket.file "path/to/my-file.ext"
108
134
  #
109
135
  def self.storage project_id = nil, credentials = nil, scope: nil,
110
- retries: nil, timeout: nil
136
+ retries: nil, timeout: nil, open_timeout: nil, read_timeout: nil, send_timeout: nil,
137
+ max_elapsed_time: nil, base_interval: nil, max_interval: nil, multiplier: nil
111
138
  require "google/cloud/storage"
112
139
  Google::Cloud::Storage.new project_id: project_id,
113
140
  credentials: credentials,
114
- scope: scope, retries: retries,
115
- timeout: timeout
141
+ scope: scope,
142
+ retries: retries,
143
+ timeout: timeout,
144
+ open_timeout: (open_timeout || timeout),
145
+ read_timeout: (read_timeout || timeout),
146
+ send_timeout: (send_timeout || timeout),
147
+ max_elapsed_time: max_elapsed_time,
148
+ base_interval: base_interval,
149
+ max_interval: max_interval,
150
+ multiplier: multiplier
116
151
  end
117
152
  end
118
153
  end
119
154
 
120
155
  # Set the default storage configuration
156
+ # rubocop:disable Metrics/BlockLength
121
157
  Google::Cloud.configure.add_config! :storage do |config|
122
158
  default_project = Google::Cloud::Config.deferred do
123
159
  ENV["STORAGE_PROJECT"]
@@ -136,6 +172,17 @@ Google::Cloud.configure.add_config! :storage do |config|
136
172
  allow_nil: true
137
173
  config.add_alias! :keyfile, :credentials
138
174
  config.add_field! :scope, nil, match: [String, Array]
175
+ config.add_field! :quota_project, nil, match: String
139
176
  config.add_field! :retries, nil, match: Integer
177
+ config.add_field! :max_elapsed_time, nil, match: Integer
178
+ config.add_field! :base_interval, nil, match: Float
179
+ config.add_field! :max_interval, nil, match: Integer
180
+ config.add_field! :multiplier, nil, match: Integer
140
181
  config.add_field! :timeout, nil, match: Integer
182
+ config.add_field! :open_timeout, nil, match: Integer
183
+ config.add_field! :read_timeout, nil, match: Integer
184
+ config.add_field! :send_timeout, nil, match: Integer
185
+ # TODO: Remove once discovery document is updated.
186
+ config.add_field! :endpoint, "https://storage.googleapis.com/", match: String
141
187
  end
188
+ # rubocop:enable Metrics/BlockLength
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.18.1
4
+ version: 1.44.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: 2019-04-30 00:00:00.000000000 Z
12
+ date: 2022-11-03 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: google-cloud-core
@@ -17,48 +17,62 @@ dependencies:
17
17
  requirements:
18
18
  - - "~>"
19
19
  - !ruby/object:Gem::Version
20
- version: '1.2'
20
+ version: '1.6'
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
25
  - - "~>"
26
26
  - !ruby/object:Gem::Version
27
- version: '1.2'
27
+ version: '1.6'
28
28
  - !ruby/object:Gem::Dependency
29
- name: google-api-client
29
+ name: google-apis-iamcredentials_v1
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
32
  - - "~>"
33
33
  - !ruby/object:Gem::Version
34
- version: '0.26'
34
+ version: '0.1'
35
35
  type: :runtime
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
39
  - - "~>"
40
40
  - !ruby/object:Gem::Version
41
- version: '0.26'
41
+ version: '0.1'
42
+ - !ruby/object:Gem::Dependency
43
+ name: google-apis-storage_v1
44
+ requirement: !ruby/object:Gem::Requirement
45
+ requirements:
46
+ - - "~>"
47
+ - !ruby/object:Gem::Version
48
+ version: 0.19.0
49
+ type: :runtime
50
+ prerelease: false
51
+ version_requirements: !ruby/object:Gem::Requirement
52
+ requirements:
53
+ - - "~>"
54
+ - !ruby/object:Gem::Version
55
+ version: 0.19.0
42
56
  - !ruby/object:Gem::Dependency
43
57
  name: googleauth
44
58
  requirement: !ruby/object:Gem::Requirement
45
59
  requirements:
46
60
  - - ">="
47
61
  - !ruby/object:Gem::Version
48
- version: 0.6.2
62
+ version: 0.16.2
49
63
  - - "<"
50
64
  - !ruby/object:Gem::Version
51
- version: 0.10.0
65
+ version: 2.a
52
66
  type: :runtime
53
67
  prerelease: false
54
68
  version_requirements: !ruby/object:Gem::Requirement
55
69
  requirements:
56
70
  - - ">="
57
71
  - !ruby/object:Gem::Version
58
- version: 0.6.2
72
+ version: 0.16.2
59
73
  - - "<"
60
74
  - !ruby/object:Gem::Version
61
- version: 0.10.0
75
+ version: 2.a
62
76
  - !ruby/object:Gem::Dependency
63
77
  name: digest-crc
64
78
  requirement: !ruby/object:Gem::Requirement
@@ -79,28 +93,56 @@ dependencies:
79
93
  requirements:
80
94
  - - "~>"
81
95
  - !ruby/object:Gem::Version
82
- version: '2.5'
96
+ version: '2.8'
83
97
  type: :runtime
84
98
  prerelease: false
85
99
  version_requirements: !ruby/object:Gem::Requirement
86
100
  requirements:
87
101
  - - "~>"
88
102
  - !ruby/object:Gem::Version
89
- version: '2.5'
103
+ version: '2.8'
104
+ - !ruby/object:Gem::Dependency
105
+ name: mini_mime
106
+ requirement: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: '1.0'
111
+ type: :runtime
112
+ prerelease: false
113
+ version_requirements: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - "~>"
116
+ - !ruby/object:Gem::Version
117
+ version: '1.0'
118
+ - !ruby/object:Gem::Dependency
119
+ name: google-style
120
+ requirement: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: 1.25.1
125
+ type: :development
126
+ prerelease: false
127
+ version_requirements: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - "~>"
130
+ - !ruby/object:Gem::Version
131
+ version: 1.25.1
90
132
  - !ruby/object:Gem::Dependency
91
133
  name: minitest
92
134
  requirement: !ruby/object:Gem::Requirement
93
135
  requirements:
94
136
  - - "~>"
95
137
  - !ruby/object:Gem::Version
96
- version: '5.10'
138
+ version: '5.16'
97
139
  type: :development
98
140
  prerelease: false
99
141
  version_requirements: !ruby/object:Gem::Requirement
100
142
  requirements:
101
143
  - - "~>"
102
144
  - !ruby/object:Gem::Version
103
- version: '5.10'
145
+ version: '5.16'
104
146
  - !ruby/object:Gem::Dependency
105
147
  name: minitest-autotest
106
148
  requirement: !ruby/object:Gem::Requirement
@@ -172,21 +214,21 @@ dependencies:
172
214
  - !ruby/object:Gem::Version
173
215
  version: '3.0'
174
216
  - !ruby/object:Gem::Dependency
175
- name: rubocop
217
+ name: simplecov
176
218
  requirement: !ruby/object:Gem::Requirement
177
219
  requirements:
178
220
  - - "~>"
179
221
  - !ruby/object:Gem::Version
180
- version: 0.64.0
222
+ version: '0.9'
181
223
  type: :development
182
224
  prerelease: false
183
225
  version_requirements: !ruby/object:Gem::Requirement
184
226
  requirements:
185
227
  - - "~>"
186
228
  - !ruby/object:Gem::Version
187
- version: 0.64.0
229
+ version: '0.9'
188
230
  - !ruby/object:Gem::Dependency
189
- name: simplecov
231
+ name: yard
190
232
  requirement: !ruby/object:Gem::Requirement
191
233
  requirements:
192
234
  - - "~>"
@@ -200,33 +242,33 @@ dependencies:
200
242
  - !ruby/object:Gem::Version
201
243
  version: '0.9'
202
244
  - !ruby/object:Gem::Dependency
203
- name: yard
245
+ name: yard-doctest
204
246
  requirement: !ruby/object:Gem::Requirement
205
247
  requirements:
206
248
  - - "~>"
207
249
  - !ruby/object:Gem::Version
208
- version: '0.9'
250
+ version: 0.1.13
209
251
  type: :development
210
252
  prerelease: false
211
253
  version_requirements: !ruby/object:Gem::Requirement
212
254
  requirements:
213
255
  - - "~>"
214
256
  - !ruby/object:Gem::Version
215
- version: '0.9'
257
+ version: 0.1.13
216
258
  - !ruby/object:Gem::Dependency
217
- name: yard-doctest
259
+ name: retriable
218
260
  requirement: !ruby/object:Gem::Requirement
219
261
  requirements:
220
262
  - - "~>"
221
263
  - !ruby/object:Gem::Version
222
- version: 0.1.13
264
+ version: 3.1.2
223
265
  type: :development
224
266
  prerelease: false
225
267
  version_requirements: !ruby/object:Gem::Requirement
226
268
  requirements:
227
269
  - - "~>"
228
270
  - !ruby/object:Gem::Version
229
- version: 0.1.13
271
+ version: 3.1.2
230
272
  description: google-cloud-storage is the official library for Google Cloud Storage.
231
273
  email:
232
274
  - mike@blowmage.com
@@ -260,8 +302,13 @@ files:
260
302
  - lib/google/cloud/storage/file/signer_v2.rb
261
303
  - lib/google/cloud/storage/file/signer_v4.rb
262
304
  - lib/google/cloud/storage/file/verifier.rb
305
+ - lib/google/cloud/storage/hmac_key.rb
306
+ - lib/google/cloud/storage/hmac_key/list.rb
263
307
  - lib/google/cloud/storage/notification.rb
264
308
  - lib/google/cloud/storage/policy.rb
309
+ - lib/google/cloud/storage/policy/binding.rb
310
+ - lib/google/cloud/storage/policy/bindings.rb
311
+ - lib/google/cloud/storage/policy/condition.rb
265
312
  - lib/google/cloud/storage/post_object.rb
266
313
  - lib/google/cloud/storage/project.rb
267
314
  - lib/google/cloud/storage/service.rb
@@ -278,14 +325,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
278
325
  requirements:
279
326
  - - ">="
280
327
  - !ruby/object:Gem::Version
281
- version: 2.0.0
328
+ version: '2.5'
282
329
  required_rubygems_version: !ruby/object:Gem::Requirement
283
330
  requirements:
284
331
  - - ">="
285
332
  - !ruby/object:Gem::Version
286
333
  version: '0'
287
334
  requirements: []
288
- rubygems_version: 3.0.3
335
+ rubygems_version: 3.3.14
289
336
  signing_key:
290
337
  specification_version: 4
291
338
  summary: API Client library for Google Cloud Storage