fog-aws 3.32.0 → 3.33.1
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 +4 -4
- data/CHANGELOG.md +27 -18
- data/fog-aws.gemspec +3 -2
- data/lib/fog/aws/models/storage/file.rb +1 -1
- data/lib/fog/aws/parsers/storage/list_objects_v2.rb +66 -0
- data/lib/fog/aws/requests/storage/list_objects_v2.rb +129 -0
- data/lib/fog/aws/storage.rb +9 -2
- data/lib/fog/aws/version.rb +1 -1
- metadata +31 -12
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: f7cc7ce33126b4fdeebc3302a81326921168f6e815a11f16c25961b223c49923
|
|
4
|
+
data.tar.gz: 89c207e1063763f94a4ccf6044aa5f302384a46aee5776b02489639ec631c9e1
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: fb49f18ada74faebdcee9a9dec6e47ee550454810aa8251c88734b5b5384989a23f3347d6357ab9c8c04ab6375335e65be98484f22d9817d381196482456fcc4
|
|
7
|
+
data.tar.gz: 4b87d40f2b4506d3305c681c96b04631c551566c4974d4ca82713d7bc2243a74e01533f3598fc2834ba95b79404bbfbdae802212f4b6fb4ec47673823f11932b
|
data/CHANGELOG.md
CHANGED
|
@@ -1,51 +1,60 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
-
## [v3.
|
|
3
|
+
## [v3.33.1](https://github.com/fog/fog-aws/tree/v3.33.1) (2025-11-03)
|
|
4
4
|
|
|
5
|
-
[Full Changelog](https://github.com/fog/fog-aws/compare/v3.
|
|
5
|
+
[Full Changelog](https://github.com/fog/fog-aws/compare/v3.33.0...v3.33.1)
|
|
6
6
|
|
|
7
7
|
**Closed issues:**
|
|
8
8
|
|
|
9
|
-
-
|
|
9
|
+
- aws\_credentials\_refresh\_threshold\_seconds gets wiped when credentials are refreshed [\#751](https://github.com/fog/fog-aws/issues/751)
|
|
10
|
+
- Frozen string errors in ruby 3.4 [\#745](https://github.com/fog/fog-aws/issues/745)
|
|
10
11
|
|
|
11
12
|
**Merged pull requests:**
|
|
12
13
|
|
|
13
|
-
-
|
|
14
|
+
- bug\(aws/storage\): avoid overwriting refresh threshold with nil [\#752](https://github.com/fog/fog-aws/pull/752) ([geemus](https://github.com/geemus))
|
|
15
|
+
- Bump github/codeql-action from 3 to 4 [\#749](https://github.com/fog/fog-aws/pull/749) ([dependabot[bot]](https://github.com/apps/dependabot))
|
|
16
|
+
- Bump actions/checkout from 4 to 5 [\#748](https://github.com/fog/fog-aws/pull/748) ([dependabot[bot]](https://github.com/apps/dependabot))
|
|
14
17
|
|
|
15
|
-
## [v3.
|
|
18
|
+
## [v3.33.0](https://github.com/fog/fog-aws/tree/v3.33.0) (2025-08-07)
|
|
16
19
|
|
|
17
|
-
[Full Changelog](https://github.com/fog/fog-aws/compare/v3.
|
|
20
|
+
[Full Changelog](https://github.com/fog/fog-aws/compare/v3.32.0...v3.33.0)
|
|
18
21
|
|
|
19
22
|
**Closed issues:**
|
|
20
23
|
|
|
21
|
-
-
|
|
24
|
+
- Add support for ListObjectsV2 [\#741](https://github.com/fog/fog-aws/issues/741)
|
|
25
|
+
- NoMethodError (undefined method `copy\_object' for "close":String\) [\#702](https://github.com/fog/fog-aws/issues/702)
|
|
22
26
|
|
|
23
27
|
**Merged pull requests:**
|
|
24
28
|
|
|
25
|
-
-
|
|
26
|
-
- Update rubyzip requirement from ~\> 2.
|
|
29
|
+
- storage headers should be rejected in a case-insensitive way [\#747](https://github.com/fog/fog-aws/pull/747) ([geemus](https://github.com/geemus))
|
|
30
|
+
- Update rubyzip requirement from ~\> 2.4.1 to ~\> 3.0.0 [\#746](https://github.com/fog/fog-aws/pull/746) ([dependabot[bot]](https://github.com/apps/dependabot))
|
|
31
|
+
- Fix \#741 Added list objects v2 api support [\#744](https://github.com/fog/fog-aws/pull/744) ([Ankk98](https://github.com/Ankk98))
|
|
32
|
+
- Update base64 requirement from ~\> 0.2.0 to \>= 0.2, \< 0.4 [\#743](https://github.com/fog/fog-aws/pull/743) ([dependabot[bot]](https://github.com/apps/dependabot))
|
|
27
33
|
|
|
28
|
-
## [v3.
|
|
34
|
+
## [v3.32.0](https://github.com/fog/fog-aws/tree/v3.32.0) (2025-05-27)
|
|
29
35
|
|
|
30
|
-
[Full Changelog](https://github.com/fog/fog-aws/compare/v3.
|
|
36
|
+
[Full Changelog](https://github.com/fog/fog-aws/compare/v3.31.0...v3.32.0)
|
|
31
37
|
|
|
32
38
|
**Closed issues:**
|
|
33
39
|
|
|
34
|
-
-
|
|
40
|
+
- Add ability to specify s3 restore object tier in post\_object\_restore [\#740](https://github.com/fog/fog-aws/issues/740)
|
|
35
41
|
|
|
36
42
|
**Merged pull requests:**
|
|
37
43
|
|
|
38
|
-
-
|
|
39
|
-
|
|
40
|
-
|
|
44
|
+
- Add ability to specify s3 restore object tier in post\_object\_restore [\#742](https://github.com/fog/fog-aws/pull/742) ([Ankk98](https://github.com/Ankk98))
|
|
45
|
+
|
|
46
|
+
## [v3.31.0](https://github.com/fog/fog-aws/tree/v3.31.0) (2025-04-21)
|
|
47
|
+
|
|
48
|
+
[Full Changelog](https://github.com/fog/fog-aws/compare/v3.30.0...v3.31.0)
|
|
41
49
|
|
|
42
|
-
|
|
50
|
+
**Closed issues:**
|
|
43
51
|
|
|
44
|
-
[
|
|
52
|
+
- Compute.describe\_instance\_status\(\) fails [\#734](https://github.com/fog/fog-aws/issues/734)
|
|
45
53
|
|
|
46
54
|
**Merged pull requests:**
|
|
47
55
|
|
|
48
|
-
-
|
|
56
|
+
- Fix Compute.describe\_instance\_status parser [\#735](https://github.com/fog/fog-aws/pull/735) ([kitherill](https://github.com/kitherill))
|
|
57
|
+
- Update rubyzip requirement from ~\> 2.3.0 to ~\> 2.4.1 [\#733](https://github.com/fog/fog-aws/pull/733) ([dependabot[bot]](https://github.com/apps/dependabot))
|
|
49
58
|
|
|
50
59
|
|
|
51
60
|
|
data/fog-aws.gemspec
CHANGED
|
@@ -22,13 +22,14 @@ Gem::Specification.new do |spec|
|
|
|
22
22
|
|
|
23
23
|
spec.required_ruby_version = '>= 2.0.0'
|
|
24
24
|
|
|
25
|
+
spec.add_development_dependency 'benchmark'
|
|
25
26
|
spec.add_development_dependency 'bundler'
|
|
26
27
|
spec.add_development_dependency 'github_changelog_generator', '~> 1.16'
|
|
27
28
|
spec.add_development_dependency 'rake', '>= 12.3.3'
|
|
28
|
-
spec.add_development_dependency 'rubyzip', '~>
|
|
29
|
+
spec.add_development_dependency 'rubyzip', '~> 3.0.0'
|
|
29
30
|
spec.add_development_dependency 'shindo', '~> 0.3'
|
|
30
31
|
|
|
31
|
-
spec.add_dependency 'base64', '
|
|
32
|
+
spec.add_dependency 'base64', '>= 0.2', '< 0.4'
|
|
32
33
|
spec.add_dependency 'fog-core', '~> 2.6'
|
|
33
34
|
spec.add_dependency 'fog-json', '~> 1.1'
|
|
34
35
|
spec.add_dependency 'fog-xml', '~> 0.1'
|
|
@@ -281,7 +281,7 @@ module Fog
|
|
|
281
281
|
merge_attributes(data.body)
|
|
282
282
|
else
|
|
283
283
|
data = service.put_object(directory.key, key, body, options)
|
|
284
|
-
merge_attributes(data.headers.reject {|key, value| ['
|
|
284
|
+
merge_attributes(data.headers.reject {|key, value| ['connection', 'content-length', 'content-type'].include?(key.downcase)})
|
|
285
285
|
end
|
|
286
286
|
self.etag = self.etag.gsub('"','') if self.etag
|
|
287
287
|
self.content_length = Fog::Storage.get_body_size(body)
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
module Fog
|
|
2
|
+
module Parsers
|
|
3
|
+
module AWS
|
|
4
|
+
module Storage
|
|
5
|
+
class ListObjectsV2 < Fog::Parsers::Base
|
|
6
|
+
# Initialize parser state
|
|
7
|
+
def initialize
|
|
8
|
+
super
|
|
9
|
+
@common_prefix = {}
|
|
10
|
+
@object = { 'Owner' => {} }
|
|
11
|
+
reset
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
def reset
|
|
15
|
+
@object = { 'Owner' => {} }
|
|
16
|
+
@response = { 'Contents' => [], 'CommonPrefixes' => [] }
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def start_element(name, attrs = [])
|
|
20
|
+
super
|
|
21
|
+
case name
|
|
22
|
+
when 'CommonPrefixes'
|
|
23
|
+
@in_common_prefixes = true
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
def end_element(name)
|
|
28
|
+
case name
|
|
29
|
+
when 'CommonPrefixes'
|
|
30
|
+
@in_common_prefixes = false
|
|
31
|
+
when 'Contents'
|
|
32
|
+
@response['Contents'] << @object
|
|
33
|
+
@object = { 'Owner' => {} }
|
|
34
|
+
when 'DisplayName', 'ID'
|
|
35
|
+
@object['Owner'][name] = value
|
|
36
|
+
when 'ETag'
|
|
37
|
+
@object[name] = value.gsub('"', '') if value != nil
|
|
38
|
+
when 'IsTruncated'
|
|
39
|
+
if value == 'true'
|
|
40
|
+
@response['IsTruncated'] = true
|
|
41
|
+
else
|
|
42
|
+
@response['IsTruncated'] = false
|
|
43
|
+
end
|
|
44
|
+
when 'LastModified'
|
|
45
|
+
@object['LastModified'] = Time.parse(value)
|
|
46
|
+
when 'ContinuationToken', 'NextContinuationToken', 'Name', 'StartAfter'
|
|
47
|
+
@response[name] = value
|
|
48
|
+
when 'MaxKeys', 'KeyCount'
|
|
49
|
+
@response[name] = value.to_i
|
|
50
|
+
when 'Prefix'
|
|
51
|
+
if @in_common_prefixes
|
|
52
|
+
@response['CommonPrefixes'] << value
|
|
53
|
+
else
|
|
54
|
+
@response[name] = value
|
|
55
|
+
end
|
|
56
|
+
when 'Size'
|
|
57
|
+
@object['Size'] = value.to_i
|
|
58
|
+
when 'Delimiter', 'Key', 'StorageClass'
|
|
59
|
+
@object[name] = value
|
|
60
|
+
end
|
|
61
|
+
end
|
|
62
|
+
end
|
|
63
|
+
end
|
|
64
|
+
end
|
|
65
|
+
end
|
|
66
|
+
end
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
module Fog
|
|
2
|
+
module AWS
|
|
3
|
+
class Storage
|
|
4
|
+
class Real
|
|
5
|
+
require 'fog/aws/parsers/storage/list_objects_v2'
|
|
6
|
+
|
|
7
|
+
# List information about objects in an S3 bucket using ListObjectsV2
|
|
8
|
+
#
|
|
9
|
+
# @param bucket_name [String] name of bucket to list object keys from
|
|
10
|
+
# @param options [Hash] config arguments for list. Defaults to {}.
|
|
11
|
+
# @option options delimiter [String] causes keys with the same string between the prefix
|
|
12
|
+
# value and the first occurrence of delimiter to be rolled up
|
|
13
|
+
# @option options continuation-token [String] continuation token from a previous request
|
|
14
|
+
# @option options fetch-owner [Boolean] specifies whether to return owner information
|
|
15
|
+
# @option options max-keys [Integer] limits number of object keys returned
|
|
16
|
+
# @option options prefix [String] limits object keys to those beginning with its value
|
|
17
|
+
# @option options start-after [String] starts listing after this specified key
|
|
18
|
+
#
|
|
19
|
+
# @return [Excon::Response] response:
|
|
20
|
+
# * body [Hash]:
|
|
21
|
+
# * Delimiter [String] - Delimiter specified for query
|
|
22
|
+
# * IsTruncated [Boolean] - Whether or not the listing is truncated
|
|
23
|
+
# * ContinuationToken [String] - Token specified in the request
|
|
24
|
+
# * NextContinuationToken [String] - Token to use in subsequent requests
|
|
25
|
+
# * KeyCount [Integer] - Number of keys returned
|
|
26
|
+
# * MaxKeys [Integer] - Maximum number of keys specified for query
|
|
27
|
+
# * Name [String] - Name of the bucket
|
|
28
|
+
# * Prefix [String] - Prefix specified for query
|
|
29
|
+
# * StartAfter [String] - StartAfter specified in the request
|
|
30
|
+
# * CommonPrefixes [Array] - Array of strings for common prefixes
|
|
31
|
+
# * Contents [Array]:
|
|
32
|
+
# * ETag [String] - Etag of object
|
|
33
|
+
# * Key [String] - Name of object
|
|
34
|
+
# * LastModified [String] - Timestamp of last modification of object
|
|
35
|
+
# * Owner [Hash]:
|
|
36
|
+
# * DisplayName [String] - Display name of object owner
|
|
37
|
+
# * ID [String] - Id of object owner
|
|
38
|
+
# * Size [Integer] - Size of object
|
|
39
|
+
# * StorageClass [String] - Storage class of object
|
|
40
|
+
#
|
|
41
|
+
# @see https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html
|
|
42
|
+
|
|
43
|
+
def list_objects_v2(bucket_name, options = {})
|
|
44
|
+
unless bucket_name
|
|
45
|
+
raise ArgumentError.new('bucket_name is required')
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
# Add list-type=2 to indicate ListObjectsV2
|
|
49
|
+
options = options.merge('list-type' => '2')
|
|
50
|
+
|
|
51
|
+
request({
|
|
52
|
+
:expects => 200,
|
|
53
|
+
:headers => {},
|
|
54
|
+
:bucket_name => bucket_name,
|
|
55
|
+
:idempotent => true,
|
|
56
|
+
:method => 'GET',
|
|
57
|
+
:parser => Fog::Parsers::AWS::Storage::ListObjectsV2.new,
|
|
58
|
+
:query => options
|
|
59
|
+
})
|
|
60
|
+
end
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
class Mock # :nodoc:all
|
|
64
|
+
def list_objects_v2(bucket_name, options = {})
|
|
65
|
+
prefix = options['prefix']
|
|
66
|
+
continuation_token = options['continuation-token']
|
|
67
|
+
delimiter = options['delimiter']
|
|
68
|
+
max_keys = options['max-keys']
|
|
69
|
+
start_after = options['start-after']
|
|
70
|
+
fetch_owner = options['fetch-owner']
|
|
71
|
+
common_prefixes = []
|
|
72
|
+
|
|
73
|
+
unless bucket_name
|
|
74
|
+
raise ArgumentError.new('bucket_name is required')
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
response = Excon::Response.new
|
|
78
|
+
if bucket = self.data[:buckets][bucket_name]
|
|
79
|
+
contents = bucket[:objects].values.map(&:first).sort {|x,y| x['Key'] <=> y['Key']}.reject do |object|
|
|
80
|
+
(prefix && object['Key'][0...prefix.length] != prefix) ||
|
|
81
|
+
(start_after && object['Key'] <= start_after) ||
|
|
82
|
+
(continuation_token && object['Key'] <= continuation_token) ||
|
|
83
|
+
(delimiter && object['Key'][(prefix ? prefix.length : 0)..-1].include?(delimiter) \
|
|
84
|
+
&& common_prefixes << object['Key'].sub(/^(#{prefix}[^#{delimiter}]+.).*/, '\1')) ||
|
|
85
|
+
object.key?(:delete_marker)
|
|
86
|
+
end.map do |object|
|
|
87
|
+
data = object.reject {|key, value| !['ETag', 'Key', 'StorageClass'].include?(key)}
|
|
88
|
+
data.merge!({
|
|
89
|
+
'LastModified' => Time.parse(object['Last-Modified']),
|
|
90
|
+
'Owner' => fetch_owner ? bucket['Owner'] : nil,
|
|
91
|
+
'Size' => object['Content-Length'].to_i
|
|
92
|
+
})
|
|
93
|
+
data
|
|
94
|
+
end
|
|
95
|
+
|
|
96
|
+
max_keys = max_keys || 1000
|
|
97
|
+
size = [max_keys, 1000].min
|
|
98
|
+
truncated_contents = contents[0...size]
|
|
99
|
+
next_token = truncated_contents.size != contents.size ? truncated_contents.last['Key'] : nil
|
|
100
|
+
|
|
101
|
+
response.status = 200
|
|
102
|
+
common_prefixes_uniq = common_prefixes.uniq
|
|
103
|
+
response.body = {
|
|
104
|
+
'CommonPrefixes' => common_prefixes_uniq,
|
|
105
|
+
'Contents' => truncated_contents,
|
|
106
|
+
'IsTruncated' => truncated_contents.size != contents.size,
|
|
107
|
+
'ContinuationToken' => continuation_token,
|
|
108
|
+
'NextContinuationToken' => next_token,
|
|
109
|
+
'KeyCount' => truncated_contents.size + common_prefixes_uniq.size,
|
|
110
|
+
'MaxKeys' => max_keys,
|
|
111
|
+
'Name' => bucket['Name'],
|
|
112
|
+
'Prefix' => prefix,
|
|
113
|
+
'StartAfter' => start_after
|
|
114
|
+
}
|
|
115
|
+
if max_keys && max_keys < response.body['Contents'].length
|
|
116
|
+
response.body['IsTruncated'] = true
|
|
117
|
+
response.body['Contents'] = response.body['Contents'][0...max_keys]
|
|
118
|
+
response.body['KeyCount'] = response.body['Contents'].size + response.body['CommonPrefixes'].size
|
|
119
|
+
end
|
|
120
|
+
else
|
|
121
|
+
response.status = 404
|
|
122
|
+
raise(Excon::Errors.status_error({:expects => 200}, response))
|
|
123
|
+
end
|
|
124
|
+
response
|
|
125
|
+
end
|
|
126
|
+
end
|
|
127
|
+
end
|
|
128
|
+
end
|
|
129
|
+
end
|
data/lib/fog/aws/storage.rb
CHANGED
|
@@ -26,9 +26,12 @@ module Fog
|
|
|
26
26
|
|
|
27
27
|
VALID_QUERY_KEYS = %w[
|
|
28
28
|
acl
|
|
29
|
+
continuation-token
|
|
29
30
|
cors
|
|
30
31
|
delete
|
|
32
|
+
fetch-owner
|
|
31
33
|
lifecycle
|
|
34
|
+
list-type
|
|
32
35
|
location
|
|
33
36
|
logging
|
|
34
37
|
notification
|
|
@@ -42,6 +45,7 @@ module Fog
|
|
|
42
45
|
response-content-type
|
|
43
46
|
response-expires
|
|
44
47
|
restore
|
|
48
|
+
start-after
|
|
45
49
|
tagging
|
|
46
50
|
torrent
|
|
47
51
|
uploadId
|
|
@@ -102,6 +106,7 @@ module Fog
|
|
|
102
106
|
request :head_object_url
|
|
103
107
|
request :initiate_multipart_upload
|
|
104
108
|
request :list_multipart_uploads
|
|
109
|
+
request :list_objects_v2
|
|
105
110
|
request :list_parts
|
|
106
111
|
request :post_object_hidden_fields
|
|
107
112
|
request :post_object_restore
|
|
@@ -603,7 +608,9 @@ module Fog
|
|
|
603
608
|
|
|
604
609
|
|
|
605
610
|
def setup_credentials(options)
|
|
606
|
-
|
|
611
|
+
if options[:aws_credentials_refresh_threshold_seconds]
|
|
612
|
+
@aws_credentials_refresh_threshold_seconds = options[:aws_credentials_refresh_threshold_seconds]
|
|
613
|
+
end
|
|
607
614
|
|
|
608
615
|
@aws_access_key_id = options[:aws_access_key_id]
|
|
609
616
|
@aws_secret_access_key = options[:aws_secret_access_key]
|
|
@@ -611,7 +618,7 @@ module Fog
|
|
|
611
618
|
@aws_credentials_expire_at = options[:aws_credentials_expire_at]
|
|
612
619
|
|
|
613
620
|
if @signature_version == 4
|
|
614
|
-
@signer = Fog::AWS::SignatureV4.new(
|
|
621
|
+
@signer = Fog::AWS::SignatureV4.new(@aws_access_key_id, @aws_secret_access_key, @region, 's3')
|
|
615
622
|
elsif @signature_version == 2
|
|
616
623
|
@hmac = Fog::HMAC.new('sha1', @aws_secret_access_key)
|
|
617
624
|
end
|
data/lib/fog/aws/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,16 +1,29 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: fog-aws
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 3.
|
|
4
|
+
version: 3.33.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Josh Lane
|
|
8
8
|
- Wesley Beary
|
|
9
|
-
autorequire:
|
|
10
9
|
bindir: bin
|
|
11
10
|
cert_chain: []
|
|
12
|
-
date:
|
|
11
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
|
13
12
|
dependencies:
|
|
13
|
+
- !ruby/object:Gem::Dependency
|
|
14
|
+
name: benchmark
|
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
|
16
|
+
requirements:
|
|
17
|
+
- - ">="
|
|
18
|
+
- !ruby/object:Gem::Version
|
|
19
|
+
version: '0'
|
|
20
|
+
type: :development
|
|
21
|
+
prerelease: false
|
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
23
|
+
requirements:
|
|
24
|
+
- - ">="
|
|
25
|
+
- !ruby/object:Gem::Version
|
|
26
|
+
version: '0'
|
|
14
27
|
- !ruby/object:Gem::Dependency
|
|
15
28
|
name: bundler
|
|
16
29
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -59,14 +72,14 @@ dependencies:
|
|
|
59
72
|
requirements:
|
|
60
73
|
- - "~>"
|
|
61
74
|
- !ruby/object:Gem::Version
|
|
62
|
-
version:
|
|
75
|
+
version: 3.0.0
|
|
63
76
|
type: :development
|
|
64
77
|
prerelease: false
|
|
65
78
|
version_requirements: !ruby/object:Gem::Requirement
|
|
66
79
|
requirements:
|
|
67
80
|
- - "~>"
|
|
68
81
|
- !ruby/object:Gem::Version
|
|
69
|
-
version:
|
|
82
|
+
version: 3.0.0
|
|
70
83
|
- !ruby/object:Gem::Dependency
|
|
71
84
|
name: shindo
|
|
72
85
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -85,16 +98,22 @@ dependencies:
|
|
|
85
98
|
name: base64
|
|
86
99
|
requirement: !ruby/object:Gem::Requirement
|
|
87
100
|
requirements:
|
|
88
|
-
- - "
|
|
101
|
+
- - ">="
|
|
89
102
|
- !ruby/object:Gem::Version
|
|
90
|
-
version: 0.2
|
|
103
|
+
version: '0.2'
|
|
104
|
+
- - "<"
|
|
105
|
+
- !ruby/object:Gem::Version
|
|
106
|
+
version: '0.4'
|
|
91
107
|
type: :runtime
|
|
92
108
|
prerelease: false
|
|
93
109
|
version_requirements: !ruby/object:Gem::Requirement
|
|
94
110
|
requirements:
|
|
95
|
-
- - "
|
|
111
|
+
- - ">="
|
|
112
|
+
- !ruby/object:Gem::Version
|
|
113
|
+
version: '0.2'
|
|
114
|
+
- - "<"
|
|
96
115
|
- !ruby/object:Gem::Version
|
|
97
|
-
version: 0.
|
|
116
|
+
version: '0.4'
|
|
98
117
|
- !ruby/object:Gem::Dependency
|
|
99
118
|
name: fog-core
|
|
100
119
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -748,6 +767,7 @@ files:
|
|
|
748
767
|
- lib/fog/aws/parsers/storage/get_service.rb
|
|
749
768
|
- lib/fog/aws/parsers/storage/initiate_multipart_upload.rb
|
|
750
769
|
- lib/fog/aws/parsers/storage/list_multipart_uploads.rb
|
|
770
|
+
- lib/fog/aws/parsers/storage/list_objects_v2.rb
|
|
751
771
|
- lib/fog/aws/parsers/storage/list_parts.rb
|
|
752
772
|
- lib/fog/aws/parsers/storage/upload_part_copy_object.rb
|
|
753
773
|
- lib/fog/aws/parsers/sts/assume_role.rb
|
|
@@ -1420,6 +1440,7 @@ files:
|
|
|
1420
1440
|
- lib/fog/aws/requests/storage/head_object_url.rb
|
|
1421
1441
|
- lib/fog/aws/requests/storage/initiate_multipart_upload.rb
|
|
1422
1442
|
- lib/fog/aws/requests/storage/list_multipart_uploads.rb
|
|
1443
|
+
- lib/fog/aws/requests/storage/list_objects_v2.rb
|
|
1423
1444
|
- lib/fog/aws/requests/storage/list_parts.rb
|
|
1424
1445
|
- lib/fog/aws/requests/storage/post_object_hidden_fields.rb
|
|
1425
1446
|
- lib/fog/aws/requests/storage/post_object_restore.rb
|
|
@@ -1464,7 +1485,6 @@ licenses:
|
|
|
1464
1485
|
- MIT
|
|
1465
1486
|
metadata:
|
|
1466
1487
|
changelog_uri: https://github.com/fog/fog-aws/blob/master/CHANGELOG.md
|
|
1467
|
-
post_install_message:
|
|
1468
1488
|
rdoc_options: []
|
|
1469
1489
|
require_paths:
|
|
1470
1490
|
- lib
|
|
@@ -1479,8 +1499,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
1479
1499
|
- !ruby/object:Gem::Version
|
|
1480
1500
|
version: '0'
|
|
1481
1501
|
requirements: []
|
|
1482
|
-
rubygems_version: 3.
|
|
1483
|
-
signing_key:
|
|
1502
|
+
rubygems_version: 3.6.9
|
|
1484
1503
|
specification_version: 4
|
|
1485
1504
|
summary: Module for the 'fog' gem to support Amazon Web Services.
|
|
1486
1505
|
test_files: []
|