aws-sdk-s3 1.206.0 → 1.212.0
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 +41 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-s3/client.rb +6 -6
- data/lib/aws-sdk-s3/client_api.rb +2 -0
- data/lib/aws-sdk-s3/customizations.rb +1 -0
- data/lib/aws-sdk-s3/encryption/client.rb +2 -2
- data/lib/aws-sdk-s3/encryption/default_cipher_provider.rb +2 -0
- data/lib/aws-sdk-s3/encryption/encrypt_handler.rb +2 -0
- data/lib/aws-sdk-s3/encryption/kms_cipher_provider.rb +2 -0
- data/lib/aws-sdk-s3/encryptionV2/client.rb +98 -23
- data/lib/aws-sdk-s3/encryptionV2/decrypt_handler.rb +7 -162
- data/lib/aws-sdk-s3/encryptionV2/decryption.rb +205 -0
- data/lib/aws-sdk-s3/encryptionV2/default_cipher_provider.rb +17 -0
- data/lib/aws-sdk-s3/encryptionV2/encrypt_handler.rb +2 -0
- data/lib/aws-sdk-s3/encryptionV2/io_encrypter.rb +2 -0
- data/lib/aws-sdk-s3/encryptionV2/kms_cipher_provider.rb +8 -0
- data/lib/aws-sdk-s3/encryptionV2/utils.rb +5 -0
- data/lib/aws-sdk-s3/encryptionV3/client.rb +885 -0
- data/lib/aws-sdk-s3/encryptionV3/decrypt_handler.rb +98 -0
- data/lib/aws-sdk-s3/encryptionV3/decryption.rb +244 -0
- data/lib/aws-sdk-s3/encryptionV3/default_cipher_provider.rb +159 -0
- data/lib/aws-sdk-s3/encryptionV3/default_key_provider.rb +35 -0
- data/lib/aws-sdk-s3/encryptionV3/encrypt_handler.rb +98 -0
- data/lib/aws-sdk-s3/encryptionV3/errors.rb +47 -0
- data/lib/aws-sdk-s3/encryptionV3/io_auth_decrypter.rb +60 -0
- data/lib/aws-sdk-s3/encryptionV3/io_decrypter.rb +35 -0
- data/lib/aws-sdk-s3/encryptionV3/io_encrypter.rb +84 -0
- data/lib/aws-sdk-s3/encryptionV3/key_provider.rb +28 -0
- data/lib/aws-sdk-s3/encryptionV3/kms_cipher_provider.rb +159 -0
- data/lib/aws-sdk-s3/encryptionV3/materials.rb +58 -0
- data/lib/aws-sdk-s3/encryptionV3/utils.rb +321 -0
- data/lib/aws-sdk-s3/encryption_v2.rb +1 -0
- data/lib/aws-sdk-s3/encryption_v3.rb +24 -0
- data/lib/aws-sdk-s3/endpoint_provider.rb +21 -18
- data/lib/aws-sdk-s3/file_uploader.rb +9 -1
- data/lib/aws-sdk-s3/multipart_file_uploader.rb +4 -1
- data/lib/aws-sdk-s3/plugins/checksum_algorithm.rb +18 -5
- data/lib/aws-sdk-s3/plugins/http_200_errors.rb +58 -34
- data/lib/aws-sdk-s3/transfer_manager.rb +18 -0
- data/lib/aws-sdk-s3.rb +1 -1
- data/sig/client.rbs +1 -1
- data/sig/types.rbs +1 -1
- metadata +19 -3
|
@@ -205,6 +205,11 @@ module Aws
|
|
|
205
205
|
# @option options [Integer] :thread_count (10) Customize threads used in the multipart upload.
|
|
206
206
|
# Only used when no custom executor is provided (creates {DefaultExecutor} with the given thread count).
|
|
207
207
|
#
|
|
208
|
+
# @option option [Integer] :http_chunk_size (16384) Size in bytes for each chunk when streaming request bodies
|
|
209
|
+
# over HTTP. Controls the buffer size used when sending data to S3. Larger values may improve throughput by
|
|
210
|
+
# reducing the number of network writes, but use more memory. Custom values must be at least 16KB.
|
|
211
|
+
# Only Ruby MRI is supported.
|
|
212
|
+
#
|
|
208
213
|
# @option options [Proc] :progress_callback (nil)
|
|
209
214
|
# A Proc that will be called when each chunk of the upload is sent.
|
|
210
215
|
# It will be invoked with `[bytes_read]` and `[total_sizes]`.
|
|
@@ -221,9 +226,22 @@ module Aws
|
|
|
221
226
|
# @see Client#upload_part
|
|
222
227
|
def upload_file(source, bucket:, key:, **options)
|
|
223
228
|
upload_opts = options.merge(bucket: bucket, key: key)
|
|
229
|
+
http_chunk_size =
|
|
230
|
+
if defined?(JRUBY_VERSION)
|
|
231
|
+
nil
|
|
232
|
+
else
|
|
233
|
+
chunk = upload_opts.delete(:http_chunk_size)
|
|
234
|
+
if chunk && chunk < Aws::Plugins::ChecksumAlgorithm::DEFAULT_TRAILER_CHUNK_SIZE
|
|
235
|
+
raise ArgumentError, ':http_chunk_size must be at least 16384 bytes (16KB)'
|
|
236
|
+
end
|
|
237
|
+
|
|
238
|
+
chunk
|
|
239
|
+
end
|
|
240
|
+
|
|
224
241
|
executor = @executor || DefaultExecutor.new(max_threads: upload_opts.delete(:thread_count))
|
|
225
242
|
uploader = FileUploader.new(
|
|
226
243
|
multipart_threshold: upload_opts.delete(:multipart_threshold),
|
|
244
|
+
http_chunk_size: http_chunk_size,
|
|
227
245
|
client: @client,
|
|
228
246
|
executor: executor
|
|
229
247
|
)
|
data/lib/aws-sdk-s3.rb
CHANGED
data/sig/client.rbs
CHANGED
|
@@ -1564,7 +1564,7 @@ module Aws
|
|
|
1564
1564
|
}?,
|
|
1565
1565
|
id: ::String,
|
|
1566
1566
|
included_object_versions: ("All" | "Current"),
|
|
1567
|
-
optional_fields: Array[("Size" | "LastModifiedDate" | "StorageClass" | "ETag" | "IsMultipartUploaded" | "ReplicationStatus" | "EncryptionStatus" | "ObjectLockRetainUntilDate" | "ObjectLockMode" | "ObjectLockLegalHoldStatus" | "IntelligentTieringAccessTier" | "BucketKeyStatus" | "ChecksumAlgorithm" | "ObjectAccessControlList" | "ObjectOwner")]?,
|
|
1567
|
+
optional_fields: Array[("Size" | "LastModifiedDate" | "StorageClass" | "ETag" | "IsMultipartUploaded" | "ReplicationStatus" | "EncryptionStatus" | "ObjectLockRetainUntilDate" | "ObjectLockMode" | "ObjectLockLegalHoldStatus" | "IntelligentTieringAccessTier" | "BucketKeyStatus" | "ChecksumAlgorithm" | "ObjectAccessControlList" | "ObjectOwner" | "LifecycleExpirationDate")]?,
|
|
1568
1568
|
schedule: {
|
|
1569
1569
|
frequency: ("Daily" | "Weekly")
|
|
1570
1570
|
}
|
data/sig/types.rbs
CHANGED
|
@@ -1354,7 +1354,7 @@ module Aws::S3
|
|
|
1354
1354
|
attr_accessor filter: Types::InventoryFilter
|
|
1355
1355
|
attr_accessor id: ::String
|
|
1356
1356
|
attr_accessor included_object_versions: ("All" | "Current")
|
|
1357
|
-
attr_accessor optional_fields: ::Array[("Size" | "LastModifiedDate" | "StorageClass" | "ETag" | "IsMultipartUploaded" | "ReplicationStatus" | "EncryptionStatus" | "ObjectLockRetainUntilDate" | "ObjectLockMode" | "ObjectLockLegalHoldStatus" | "IntelligentTieringAccessTier" | "BucketKeyStatus" | "ChecksumAlgorithm" | "ObjectAccessControlList" | "ObjectOwner")]
|
|
1357
|
+
attr_accessor optional_fields: ::Array[("Size" | "LastModifiedDate" | "StorageClass" | "ETag" | "IsMultipartUploaded" | "ReplicationStatus" | "EncryptionStatus" | "ObjectLockRetainUntilDate" | "ObjectLockMode" | "ObjectLockLegalHoldStatus" | "IntelligentTieringAccessTier" | "BucketKeyStatus" | "ChecksumAlgorithm" | "ObjectAccessControlList" | "ObjectOwner" | "LifecycleExpirationDate")]
|
|
1358
1358
|
attr_accessor schedule: Types::InventorySchedule
|
|
1359
1359
|
SENSITIVE: []
|
|
1360
1360
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: aws-sdk-s3
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.212.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Amazon Web Services
|
|
@@ -46,7 +46,7 @@ dependencies:
|
|
|
46
46
|
version: '3'
|
|
47
47
|
- - ">="
|
|
48
48
|
- !ruby/object:Gem::Version
|
|
49
|
-
version: 3.
|
|
49
|
+
version: 3.241.4
|
|
50
50
|
type: :runtime
|
|
51
51
|
prerelease: false
|
|
52
52
|
version_requirements: !ruby/object:Gem::Requirement
|
|
@@ -56,7 +56,7 @@ dependencies:
|
|
|
56
56
|
version: '3'
|
|
57
57
|
- - ">="
|
|
58
58
|
- !ruby/object:Gem::Version
|
|
59
|
-
version: 3.
|
|
59
|
+
version: 3.241.4
|
|
60
60
|
description: Official AWS Ruby gem for Amazon Simple Storage Service (Amazon S3).
|
|
61
61
|
This gem is part of the AWS SDK for Ruby.
|
|
62
62
|
email:
|
|
@@ -112,6 +112,7 @@ files:
|
|
|
112
112
|
- lib/aws-sdk-s3/encryption/utils.rb
|
|
113
113
|
- lib/aws-sdk-s3/encryptionV2/client.rb
|
|
114
114
|
- lib/aws-sdk-s3/encryptionV2/decrypt_handler.rb
|
|
115
|
+
- lib/aws-sdk-s3/encryptionV2/decryption.rb
|
|
115
116
|
- lib/aws-sdk-s3/encryptionV2/default_cipher_provider.rb
|
|
116
117
|
- lib/aws-sdk-s3/encryptionV2/default_key_provider.rb
|
|
117
118
|
- lib/aws-sdk-s3/encryptionV2/encrypt_handler.rb
|
|
@@ -123,7 +124,22 @@ files:
|
|
|
123
124
|
- lib/aws-sdk-s3/encryptionV2/kms_cipher_provider.rb
|
|
124
125
|
- lib/aws-sdk-s3/encryptionV2/materials.rb
|
|
125
126
|
- lib/aws-sdk-s3/encryptionV2/utils.rb
|
|
127
|
+
- lib/aws-sdk-s3/encryptionV3/client.rb
|
|
128
|
+
- lib/aws-sdk-s3/encryptionV3/decrypt_handler.rb
|
|
129
|
+
- lib/aws-sdk-s3/encryptionV3/decryption.rb
|
|
130
|
+
- lib/aws-sdk-s3/encryptionV3/default_cipher_provider.rb
|
|
131
|
+
- lib/aws-sdk-s3/encryptionV3/default_key_provider.rb
|
|
132
|
+
- lib/aws-sdk-s3/encryptionV3/encrypt_handler.rb
|
|
133
|
+
- lib/aws-sdk-s3/encryptionV3/errors.rb
|
|
134
|
+
- lib/aws-sdk-s3/encryptionV3/io_auth_decrypter.rb
|
|
135
|
+
- lib/aws-sdk-s3/encryptionV3/io_decrypter.rb
|
|
136
|
+
- lib/aws-sdk-s3/encryptionV3/io_encrypter.rb
|
|
137
|
+
- lib/aws-sdk-s3/encryptionV3/key_provider.rb
|
|
138
|
+
- lib/aws-sdk-s3/encryptionV3/kms_cipher_provider.rb
|
|
139
|
+
- lib/aws-sdk-s3/encryptionV3/materials.rb
|
|
140
|
+
- lib/aws-sdk-s3/encryptionV3/utils.rb
|
|
126
141
|
- lib/aws-sdk-s3/encryption_v2.rb
|
|
142
|
+
- lib/aws-sdk-s3/encryption_v3.rb
|
|
127
143
|
- lib/aws-sdk-s3/endpoint_parameters.rb
|
|
128
144
|
- lib/aws-sdk-s3/endpoint_provider.rb
|
|
129
145
|
- lib/aws-sdk-s3/endpoints.rb
|