aws-sdk-s3 1.205.0 → 1.216.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.
Files changed (66) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +68 -0
  3. data/VERSION +1 -1
  4. data/lib/aws-sdk-s3/bucket.rb +45 -17
  5. data/lib/aws-sdk-s3/bucket_acl.rb +1 -1
  6. data/lib/aws-sdk-s3/client.rb +532 -345
  7. data/lib/aws-sdk-s3/client_api.rb +56 -0
  8. data/lib/aws-sdk-s3/customizations.rb +9 -2
  9. data/lib/aws-sdk-s3/directory_download_error.rb +16 -0
  10. data/lib/aws-sdk-s3/directory_downloader.rb +230 -0
  11. data/lib/aws-sdk-s3/directory_upload_error.rb +16 -0
  12. data/lib/aws-sdk-s3/directory_uploader.rb +270 -0
  13. data/lib/aws-sdk-s3/encryption/client.rb +2 -2
  14. data/lib/aws-sdk-s3/encryption/default_cipher_provider.rb +2 -0
  15. data/lib/aws-sdk-s3/encryption/encrypt_handler.rb +2 -0
  16. data/lib/aws-sdk-s3/encryption/kms_cipher_provider.rb +2 -0
  17. data/lib/aws-sdk-s3/encryptionV2/client.rb +98 -23
  18. data/lib/aws-sdk-s3/encryptionV2/decrypt_handler.rb +7 -162
  19. data/lib/aws-sdk-s3/encryptionV2/decryption.rb +205 -0
  20. data/lib/aws-sdk-s3/encryptionV2/default_cipher_provider.rb +17 -0
  21. data/lib/aws-sdk-s3/encryptionV2/encrypt_handler.rb +2 -0
  22. data/lib/aws-sdk-s3/encryptionV2/io_encrypter.rb +2 -0
  23. data/lib/aws-sdk-s3/encryptionV2/kms_cipher_provider.rb +8 -0
  24. data/lib/aws-sdk-s3/encryptionV2/utils.rb +5 -0
  25. data/lib/aws-sdk-s3/encryptionV3/client.rb +885 -0
  26. data/lib/aws-sdk-s3/encryptionV3/decrypt_handler.rb +98 -0
  27. data/lib/aws-sdk-s3/encryptionV3/decryption.rb +244 -0
  28. data/lib/aws-sdk-s3/encryptionV3/default_cipher_provider.rb +159 -0
  29. data/lib/aws-sdk-s3/encryptionV3/default_key_provider.rb +35 -0
  30. data/lib/aws-sdk-s3/encryptionV3/encrypt_handler.rb +98 -0
  31. data/lib/aws-sdk-s3/encryptionV3/errors.rb +47 -0
  32. data/lib/aws-sdk-s3/encryptionV3/io_auth_decrypter.rb +60 -0
  33. data/lib/aws-sdk-s3/encryptionV3/io_decrypter.rb +35 -0
  34. data/lib/aws-sdk-s3/encryptionV3/io_encrypter.rb +84 -0
  35. data/lib/aws-sdk-s3/encryptionV3/key_provider.rb +28 -0
  36. data/lib/aws-sdk-s3/encryptionV3/kms_cipher_provider.rb +159 -0
  37. data/lib/aws-sdk-s3/encryptionV3/materials.rb +58 -0
  38. data/lib/aws-sdk-s3/encryptionV3/utils.rb +321 -0
  39. data/lib/aws-sdk-s3/encryption_v2.rb +1 -0
  40. data/lib/aws-sdk-s3/encryption_v3.rb +24 -0
  41. data/lib/aws-sdk-s3/endpoint_provider.rb +21 -18
  42. data/lib/aws-sdk-s3/endpoints.rb +13 -0
  43. data/lib/aws-sdk-s3/errors.rb +11 -0
  44. data/lib/aws-sdk-s3/file_uploader.rb +9 -1
  45. data/lib/aws-sdk-s3/multipart_file_uploader.rb +4 -1
  46. data/lib/aws-sdk-s3/multipart_upload.rb +12 -12
  47. data/lib/aws-sdk-s3/multipart_upload_part.rb +8 -8
  48. data/lib/aws-sdk-s3/object.rb +36 -36
  49. data/lib/aws-sdk-s3/object_acl.rb +5 -5
  50. data/lib/aws-sdk-s3/object_summary.rb +32 -32
  51. data/lib/aws-sdk-s3/object_version.rb +16 -16
  52. data/lib/aws-sdk-s3/plugins/checksum_algorithm.rb +18 -5
  53. data/lib/aws-sdk-s3/plugins/http_200_errors.rb +58 -34
  54. data/lib/aws-sdk-s3/resource.rb +28 -0
  55. data/lib/aws-sdk-s3/transfer_manager.rb +244 -7
  56. data/lib/aws-sdk-s3/types.rb +373 -223
  57. data/lib/aws-sdk-s3.rb +1 -1
  58. data/sig/bucket.rbs +3 -2
  59. data/sig/client.rbs +35 -12
  60. data/sig/errors.rbs +2 -0
  61. data/sig/multipart_upload.rbs +1 -1
  62. data/sig/object.rbs +5 -5
  63. data/sig/object_summary.rbs +5 -5
  64. data/sig/resource.rbs +2 -1
  65. data/sig/types.rbs +52 -14
  66. metadata +23 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4317d141110c16240cfc5412df21c614152e959a9943dfc4525550646f02a0dc
4
- data.tar.gz: 060fd3c2735d93bb4376f7519f84e07c984f4052a9fd0f6c6456402494810bd6
3
+ metadata.gz: 539fec24f4c751a012ca361d7be60a80f94b1d07fbb181632765d516a21008a3
4
+ data.tar.gz: 2e54a909515cfbdb880efacfd805d9971a57fcb4a8a370ebde34b701d81458a2
5
5
  SHA512:
6
- metadata.gz: 5e86d07d938a24f86c26dfa0b189c38e2ecc5c20a4ab884848f680474b784bf09acc9d52310c57b7b0d176c61b284fa5387bc762d7532f0bba0ca9183ed37e93
7
- data.tar.gz: 18d6252cfe3a9d7284789a4703db29490b2c84d62d00d8abc1c4643ef0351082e6686aa84670690ffb3b253cf43c798a367af9689858eccca7db349719cab0e7
6
+ metadata.gz: 9f59e1c190f315dc70535a1a1afb32c2423c346dde0ba1743ae9f9afca795b81745da63bc60aa0db5b969099612c3e171caeabfd48e00c7d0966e7708462ba56
7
+ data.tar.gz: 1de88d9a5e2fe6d2a39bb85420e3099794b5fe0932fe3040db51a5c731a72a12b101ac750715278afe8565d49b4b97cf54454317b6222d9a4c7feb3086d136aa
data/CHANGELOG.md CHANGED
@@ -1,6 +1,74 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.216.0 (2026-03-12)
5
+ ------------------
6
+
7
+ * Feature - Adds support for account regional namespaces for general purpose buckets. The account regional namespace is a reserved subdivision of the global bucket namespace where only your account can create general purpose buckets.
8
+
9
+ 1.215.0 (2026-03-05)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
14
+ * Issue - Fix `LoadError` when requiring `aws-sdk-s3` due to missing `directory_progress` file.
15
+
16
+ 1.214.0 (2026-03-04)
17
+ ------------------
18
+
19
+ * Feature - Added `#upload_directory` and `#download_directory` to `Aws::S3::TransferManager` for bulk directory transfers.
20
+
21
+ 1.213.0 (2026-01-28)
22
+ ------------------
23
+
24
+ * Feature - Adds support for the UpdateObjectEncryption API to change the server-side encryption type of objects in general purpose buckets.
25
+
26
+ 1.212.0 (2026-01-16)
27
+ ------------------
28
+
29
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
30
+
31
+ 1.211.0 (2026-01-08)
32
+ ------------------
33
+
34
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
35
+
36
+ * Issue - Falls back to header request checksums when using custom endpoints or endpoint providers for PutObject and UploadPart operations.
37
+
38
+ 1.210.1 (2026-01-06)
39
+ ------------------
40
+
41
+ * Issue - Normalize response encoding to UTF-8 for proper XML error parsing in HTTP 200 responses.
42
+
43
+ 1.210.0 (2026-01-05)
44
+ ------------------
45
+
46
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
47
+
48
+ * Feature - Added `:http_chunk_size` parameter to `TransferManager#upload_file` to control the buffer size when streaming request bodies over HTTP. Larger chunk sizes may improve network throughput at the cost of higher memory usage (Ruby MRI only).
49
+
50
+ * Feature - Improved memory efficiency when calculating request checksums for large file uploads (Ruby MRI only).
51
+
52
+ 1.209.0 (2025-12-23)
53
+ ------------------
54
+
55
+ * Feature - Add additional validation to Outpost bucket names.
56
+
57
+ 1.208.0 (2025-12-16)
58
+ ------------------
59
+
60
+ * Feature - Updates to the S3 Encryption Client. The V3 S3 Encryption Client now requires key committing algorithm suites by default.
61
+
62
+ 1.207.0 (2025-12-15)
63
+ ------------------
64
+
65
+ * Feature - This release adds support for the new optional field 'LifecycleExpirationDate' in S3 Inventory configurations.
66
+
67
+ 1.206.0 (2025-12-02)
68
+ ------------------
69
+
70
+ * Feature - New S3 Storage Class FSX_ONTAP
71
+
4
72
  1.205.0 (2025-11-20)
5
73
  ------------------
6
74
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.205.0
1
+ 1.216.0
@@ -277,6 +277,7 @@ module Aws::S3
277
277
  # grant_write_acp: "GrantWriteACP",
278
278
  # object_lock_enabled_for_bucket: false,
279
279
  # object_ownership: "BucketOwnerPreferred", # accepts BucketOwnerPreferred, ObjectWriter, BucketOwnerEnforced
280
+ # bucket_namespace: "account-regional", # accepts account-regional, global
280
281
  # })
281
282
  # @param [Hash] options ({})
282
283
  # @option options [String] :acl
@@ -362,6 +363,33 @@ module Aws::S3
362
363
  #
363
364
  #
364
365
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html
366
+ # @option options [String] :bucket_namespace
367
+ # Specifies the namespace where you want to create your general purpose
368
+ # bucket. When you create a general purpose bucket, you can choose to
369
+ # create a bucket in the shared global namespace or you can choose to
370
+ # create a bucket in your account regional namespace. Your account
371
+ # regional namespace is a subdivision of the global namespace that only
372
+ # your account can create buckets in. For more information on bucket
373
+ # namespaces, see [Namespaces for general purpose buckets][1].
374
+ #
375
+ # General purpose buckets in your account regional namespace must follow
376
+ # a specific naming convention. These buckets consist of a bucket name
377
+ # prefix that you create, and a suffix that contains your 12-digit
378
+ # Amazon Web Services Account ID, the Amazon Web Services Region code,
379
+ # and ends with `-an`. Bucket names must follow the format
380
+ # `bucket-name-prefix-accountId-region-an` (for example,
381
+ # `amzn-s3-demo-bucket-111122223333-us-west-2-an`). For information
382
+ # about bucket naming restrictions, see [Account regional namespace
383
+ # naming rules][2] in the *Amazon S3 User Guide*.
384
+ #
385
+ # <note markdown="1"> This functionality is not supported for directory buckets.
386
+ #
387
+ # </note>
388
+ #
389
+ #
390
+ #
391
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/gpbucketnamespaces.html
392
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html#account-regional-naming-rules
365
393
  # @return [Types::CreateBucketOutput]
366
394
  def create(options = {})
367
395
  options = options.merge(bucket: @name)
@@ -446,10 +474,10 @@ module Aws::S3
446
474
  # Confirms that the requester knows that they will be charged for the
447
475
  # request. Bucket owners need not specify this parameter in their
448
476
  # requests. If either the source or destination S3 bucket has Requester
449
- # Pays enabled, the requester will pay for corresponding charges to copy
450
- # the object. For information about downloading objects from Requester
451
- # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
452
- # in the *Amazon S3 User Guide*.
477
+ # Pays enabled, the requester will pay for the corresponding charges.
478
+ # For information about downloading objects from Requester Pays buckets,
479
+ # see [Downloading Objects in Requester Pays Buckets][1] in the *Amazon
480
+ # S3 User Guide*.
453
481
  #
454
482
  # <note markdown="1"> This functionality is not supported for directory buckets.
455
483
  #
@@ -545,7 +573,7 @@ module Aws::S3
545
573
  # "MetadataKey" => "MetadataValue",
546
574
  # },
547
575
  # server_side_encryption: "AES256", # accepts AES256, aws:fsx, aws:kms, aws:kms:dsse
548
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR, SNOW, EXPRESS_ONEZONE, FSX_OPENZFS
576
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR, SNOW, EXPRESS_ONEZONE, FSX_OPENZFS, FSX_ONTAP
549
577
  # website_redirect_location: "WebsiteRedirectLocation",
550
578
  # sse_customer_algorithm: "SSECustomerAlgorithm",
551
579
  # sse_customer_key: "SSECustomerKey",
@@ -1081,10 +1109,10 @@ module Aws::S3
1081
1109
  # Confirms that the requester knows that they will be charged for the
1082
1110
  # request. Bucket owners need not specify this parameter in their
1083
1111
  # requests. If either the source or destination S3 bucket has Requester
1084
- # Pays enabled, the requester will pay for corresponding charges to copy
1085
- # the object. For information about downloading objects from Requester
1086
- # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
1087
- # in the *Amazon S3 User Guide*.
1112
+ # Pays enabled, the requester will pay for the corresponding charges.
1113
+ # For information about downloading objects from Requester Pays buckets,
1114
+ # see [Downloading Objects in Requester Pays Buckets][1] in the *Amazon
1115
+ # S3 User Guide*.
1088
1116
  #
1089
1117
  # <note markdown="1"> This functionality is not supported for directory buckets.
1090
1118
  #
@@ -1291,10 +1319,10 @@ module Aws::S3
1291
1319
  # Confirms that the requester knows that they will be charged for the
1292
1320
  # request. Bucket owners need not specify this parameter in their
1293
1321
  # requests. If either the source or destination S3 bucket has Requester
1294
- # Pays enabled, the requester will pay for corresponding charges to copy
1295
- # the object. For information about downloading objects from Requester
1296
- # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
1297
- # in the *Amazon S3 User Guide*.
1322
+ # Pays enabled, the requester will pay for the corresponding charges.
1323
+ # For information about downloading objects from Requester Pays buckets,
1324
+ # see [Downloading Objects in Requester Pays Buckets][1] in the *Amazon
1325
+ # S3 User Guide*.
1298
1326
  #
1299
1327
  # <note markdown="1"> This functionality is not supported for directory buckets.
1300
1328
  #
@@ -1408,10 +1436,10 @@ module Aws::S3
1408
1436
  # Confirms that the requester knows that they will be charged for the
1409
1437
  # request. Bucket owners need not specify this parameter in their
1410
1438
  # requests. If either the source or destination S3 bucket has Requester
1411
- # Pays enabled, the requester will pay for corresponding charges to copy
1412
- # the object. For information about downloading objects from Requester
1413
- # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
1414
- # in the *Amazon S3 User Guide*.
1439
+ # Pays enabled, the requester will pay for the corresponding charges.
1440
+ # For information about downloading objects from Requester Pays buckets,
1441
+ # see [Downloading Objects in Requester Pays Buckets][1] in the *Amazon
1442
+ # S3 User Guide*.
1415
1443
  #
1416
1444
  # <note markdown="1"> This functionality is not supported for directory buckets.
1417
1445
  #
@@ -34,7 +34,7 @@ module Aws::S3
34
34
  @bucket_name
35
35
  end
36
36
 
37
- # Container for the bucket owner's display name and ID.
37
+ # Container for the bucket owner's ID.
38
38
  # @return [Types::Owner]
39
39
  def owner
40
40
  data[:owner]