aws-sdk-s3 1.186.1 → 1.189.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 013e9f5fb123754ee3986f0b06225c9f17235bf86614554933173335ced6732d
4
- data.tar.gz: 67a8fddc96fc487b280b49664c0020d997de1a2c15403d983f8bcbb37b6f38d2
3
+ metadata.gz: 857c3ab6cd76b53517cd7d7052de00e1bcc52d32fb2954f0a9a561711e29ef3f
4
+ data.tar.gz: 256a5e39e8120853f916c8ddff8fe408eab04a510a876bfa16fd450bbe07de22
5
5
  SHA512:
6
- metadata.gz: f5b92f4b8677074116e734f91a8c240dfbca67768250d1714095ea427117b49e31b9df194c6bace597fbf2080a51ef626e5bfe077df5a1aaf05821ce5391c571
7
- data.tar.gz: 5c311b0d195b97adb8e00eedf2f767f81e2500c843c52025555f5f0b8398759895dd2b9a99c308b6e6959ca6d662593b8bebce09b83ae6993fc2c2279b1a85b3
6
+ metadata.gz: e8e312b475f1e62dd64c5af02495367da49382671f99b44337464ffb31950b4f57cba8d122c3b2474f6a2d7720cd6a1dfc6599439c9d0152f4a8deafee5d3970
7
+ data.tar.gz: a150937e9dd29846bd7c9a5e1f82892b6bfaa388fd048cb2b3618c6d41384c9148db33866632a14bfcb4655b4f30518ca6415fb5eb8af0de0ee8e50e03d36f69
data/CHANGELOG.md CHANGED
@@ -1,6 +1,28 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.189.1 (2025-06-10)
5
+ ------------------
6
+
7
+ * Issue - Only load required `cgi` modules for Ruby 3.5.
8
+
9
+ 1.189.0 (2025-06-02)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
14
+ 1.188.0 (2025-05-29)
15
+ ------------------
16
+
17
+ * Feature - Adding checksum support for S3 PutBucketOwnershipControls API.
18
+
19
+ 1.187.0 (2025-05-28)
20
+ ------------------
21
+
22
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
23
+
24
+ * Issue - Signal data in http response listeners prior to writing, so that data can be inspected or verified before potential mutation.
25
+
4
26
  1.186.1 (2025-05-15)
5
27
  ------------------
6
28
  * Issue - Abort multipart download if object is modified during download.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.186.1
1
+ 1.189.1
@@ -2605,33 +2605,33 @@ module Aws::S3
2605
2605
  # * {Types::CreateBucketOutput#location #location} => String
2606
2606
  #
2607
2607
  #
2608
- # @example Example: To create a bucket
2608
+ # @example Example: To create a bucket in a specific region
2609
2609
  #
2610
- # # The following example creates a bucket.
2610
+ # # The following example creates a bucket. The request specifies an AWS region where to create the bucket.
2611
2611
  #
2612
2612
  # resp = client.create_bucket({
2613
2613
  # bucket: "examplebucket",
2614
+ # create_bucket_configuration: {
2615
+ # location_constraint: "eu-west-1",
2616
+ # },
2614
2617
  # })
2615
2618
  #
2616
2619
  # resp.to_h outputs the following:
2617
2620
  # {
2618
- # location: "/examplebucket",
2621
+ # location: "http://examplebucket.<Region>.s3.amazonaws.com/",
2619
2622
  # }
2620
2623
  #
2621
- # @example Example: To create a bucket in a specific region
2624
+ # @example Example: To create a bucket
2622
2625
  #
2623
- # # The following example creates a bucket. The request specifies an AWS region where to create the bucket.
2626
+ # # The following example creates a bucket.
2624
2627
  #
2625
2628
  # resp = client.create_bucket({
2626
2629
  # bucket: "examplebucket",
2627
- # create_bucket_configuration: {
2628
- # location_constraint: "eu-west-1",
2629
- # },
2630
2630
  # })
2631
2631
  #
2632
2632
  # resp.to_h outputs the following:
2633
2633
  # {
2634
- # location: "http://examplebucket.<Region>.s3.amazonaws.com/",
2634
+ # location: "/examplebucket",
2635
2635
  # }
2636
2636
  #
2637
2637
  # @example Request syntax with placeholder values
@@ -5796,22 +5796,20 @@ module Aws::S3
5796
5796
  # * {Types::DeleteObjectsOutput#errors #errors} => Array&lt;Types::Error&gt;
5797
5797
  #
5798
5798
  #
5799
- # @example Example: To delete multiple object versions from a versioned bucket
5799
+ # @example Example: To delete multiple objects from a versioned bucket
5800
5800
  #
5801
- # # The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object
5802
- # # versions and returns the key and versions of deleted objects in the response.
5801
+ # # The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the
5802
+ # # object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.
5803
5803
  #
5804
5804
  # resp = client.delete_objects({
5805
5805
  # bucket: "examplebucket",
5806
5806
  # delete: {
5807
5807
  # objects: [
5808
5808
  # {
5809
- # key: "HappyFace.jpg",
5810
- # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
5809
+ # key: "objectkey1",
5811
5810
  # },
5812
5811
  # {
5813
- # key: "HappyFace.jpg",
5814
- # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
5812
+ # key: "objectkey2",
5815
5813
  # },
5816
5814
  # ],
5817
5815
  # quiet: false,
@@ -5822,30 +5820,34 @@ module Aws::S3
5822
5820
  # {
5823
5821
  # deleted: [
5824
5822
  # {
5825
- # key: "HappyFace.jpg",
5826
- # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
5823
+ # delete_marker: true,
5824
+ # delete_marker_version_id: "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F",
5825
+ # key: "objectkey1",
5827
5826
  # },
5828
5827
  # {
5829
- # key: "HappyFace.jpg",
5830
- # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
5828
+ # delete_marker: true,
5829
+ # delete_marker_version_id: "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt",
5830
+ # key: "objectkey2",
5831
5831
  # },
5832
5832
  # ],
5833
5833
  # }
5834
5834
  #
5835
- # @example Example: To delete multiple objects from a versioned bucket
5835
+ # @example Example: To delete multiple object versions from a versioned bucket
5836
5836
  #
5837
- # # The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the
5838
- # # object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.
5837
+ # # The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object
5838
+ # # versions and returns the key and versions of deleted objects in the response.
5839
5839
  #
5840
5840
  # resp = client.delete_objects({
5841
5841
  # bucket: "examplebucket",
5842
5842
  # delete: {
5843
5843
  # objects: [
5844
5844
  # {
5845
- # key: "objectkey1",
5845
+ # key: "HappyFace.jpg",
5846
+ # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
5846
5847
  # },
5847
5848
  # {
5848
- # key: "objectkey2",
5849
+ # key: "HappyFace.jpg",
5850
+ # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
5849
5851
  # },
5850
5852
  # ],
5851
5853
  # quiet: false,
@@ -5856,14 +5858,12 @@ module Aws::S3
5856
5858
  # {
5857
5859
  # deleted: [
5858
5860
  # {
5859
- # delete_marker: true,
5860
- # delete_marker_version_id: "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F",
5861
- # key: "objectkey1",
5861
+ # key: "HappyFace.jpg",
5862
+ # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
5862
5863
  # },
5863
5864
  # {
5864
- # delete_marker: true,
5865
- # delete_marker_version_id: "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt",
5866
- # key: "objectkey2",
5865
+ # key: "HappyFace.jpg",
5866
+ # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
5867
5867
  # },
5868
5868
  # ],
5869
5869
  # }
@@ -8751,49 +8751,49 @@ module Aws::S3
8751
8751
  # * {Types::GetObjectOutput#object_lock_legal_hold_status #object_lock_legal_hold_status} => String
8752
8752
  #
8753
8753
  #
8754
- # @example Example: To retrieve an object
8754
+ # @example Example: To retrieve a byte range of an object
8755
8755
  #
8756
- # # The following example retrieves an object for an S3 bucket.
8756
+ # # The following example retrieves an object for an S3 bucket. The request specifies the range header to retrieve a
8757
+ # # specific byte range.
8757
8758
  #
8758
8759
  # resp = client.get_object({
8759
8760
  # bucket: "examplebucket",
8760
- # key: "HappyFace.jpg",
8761
+ # key: "SampleFile.txt",
8762
+ # range: "bytes=0-9",
8761
8763
  # })
8762
8764
  #
8763
8765
  # resp.to_h outputs the following:
8764
8766
  # {
8765
8767
  # accept_ranges: "bytes",
8766
- # content_length: 3191,
8767
- # content_type: "image/jpeg",
8768
- # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
8769
- # last_modified: Time.parse("2016-12-15T01:19:41.000Z"),
8768
+ # content_length: 10,
8769
+ # content_range: "bytes 0-9/43",
8770
+ # content_type: "text/plain",
8771
+ # etag: "\"0d94420ffd0bc68cd3d152506b97a9cc\"",
8772
+ # last_modified: Time.parse("2014-10-09T22:57:28.000Z"),
8770
8773
  # metadata: {
8771
8774
  # },
8772
- # tag_count: 2,
8773
8775
  # version_id: "null",
8774
8776
  # }
8775
8777
  #
8776
- # @example Example: To retrieve a byte range of an object
8778
+ # @example Example: To retrieve an object
8777
8779
  #
8778
- # # The following example retrieves an object for an S3 bucket. The request specifies the range header to retrieve a
8779
- # # specific byte range.
8780
+ # # The following example retrieves an object for an S3 bucket.
8780
8781
  #
8781
8782
  # resp = client.get_object({
8782
8783
  # bucket: "examplebucket",
8783
- # key: "SampleFile.txt",
8784
- # range: "bytes=0-9",
8784
+ # key: "HappyFace.jpg",
8785
8785
  # })
8786
8786
  #
8787
8787
  # resp.to_h outputs the following:
8788
8788
  # {
8789
8789
  # accept_ranges: "bytes",
8790
- # content_length: 10,
8791
- # content_range: "bytes 0-9/43",
8792
- # content_type: "text/plain",
8793
- # etag: "\"0d94420ffd0bc68cd3d152506b97a9cc\"",
8794
- # last_modified: Time.parse("2014-10-09T22:57:28.000Z"),
8790
+ # content_length: 3191,
8791
+ # content_type: "image/jpeg",
8792
+ # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
8793
+ # last_modified: Time.parse("2016-12-15T01:19:41.000Z"),
8795
8794
  # metadata: {
8796
8795
  # },
8796
+ # tag_count: 2,
8797
8797
  # version_id: "null",
8798
8798
  # }
8799
8799
  #
@@ -9090,12 +9090,12 @@ module Aws::S3
9090
9090
  req.send_request(options)
9091
9091
  end
9092
9092
 
9093
- # Retrieves all the metadata from an object without returning the object
9094
- # itself. This operation is useful if you're interested only in an
9095
- # object's metadata.
9093
+ # Retrieves all of the metadata from an object without returning the
9094
+ # object itself. This operation is useful if you're interested only in
9095
+ # an object's metadata.
9096
9096
  #
9097
9097
  # `GetObjectAttributes` combines the functionality of `HeadObject` and
9098
- # `ListParts`. All of the data returned with each of those individual
9098
+ # `ListParts`. All of the data returned with both of those individual
9099
9099
  # calls can be returned with a single call to `GetObjectAttributes`.
9100
9100
  #
9101
9101
  # <note markdown="1"> **Directory buckets** - For directory buckets, you must make requests
@@ -9114,16 +9114,23 @@ module Aws::S3
9114
9114
  # Permissions
9115
9115
  # : * **General purpose bucket permissions** - To use
9116
9116
  # `GetObjectAttributes`, you must have READ access to the object.
9117
- # The permissions that you need to use this operation depend on
9118
- # whether the bucket is versioned. If the bucket is versioned, you
9119
- # need both the `s3:GetObjectVersion` and
9120
- # `s3:GetObjectVersionAttributes` permissions for this operation. If
9121
- # the bucket is not versioned, you need the `s3:GetObject` and
9122
- # `s3:GetObjectAttributes` permissions. For more information, see
9123
- # [Specifying Permissions in a Policy][3] in the *Amazon S3 User
9124
- # Guide*. If the object that you request does not exist, the error
9125
- # Amazon S3 returns depends on whether you also have the
9126
- # `s3:ListBucket` permission.
9117
+ #
9118
+ # The other permissions that you need to use this operation depend
9119
+ # on whether the bucket is versioned and if a version ID is passed
9120
+ # in the `GetObjectAttributes` request.
9121
+ #
9122
+ # * If you pass a version ID in your request, you need both the
9123
+ # `s3:GetObjectVersion` and `s3:GetObjectVersionAttributes`
9124
+ # permissions.
9125
+ #
9126
+ # * If you do not pass a version ID in your request, you need the
9127
+ # `s3:GetObject` and `s3:GetObjectAttributes` permissions.
9128
+ # For more information, see [Specifying Permissions in a Policy][3]
9129
+ # in the *Amazon S3 User Guide*.
9130
+ #
9131
+ # If the object that you request does not exist, the error Amazon S3
9132
+ # returns depends on whether you also have the `s3:ListBucket`
9133
+ # permission.
9127
9134
  #
9128
9135
  # * If you have the `s3:ListBucket` permission on the bucket, Amazon
9129
9136
  # S3 returns an HTTP status code `404 Not Found` ("no such key")
@@ -9167,12 +9174,12 @@ module Aws::S3
9167
9174
  #
9168
9175
  # </note>
9169
9176
  #
9170
- # If you encrypt an object by using server-side encryption with
9171
- # customer-provided encryption keys (SSE-C) when you store the object
9172
- # in Amazon S3, then when you retrieve the metadata from the object,
9173
- # you must use the following headers to provide the encryption key for
9174
- # the server to be able to retrieve the object's metadata. The
9175
- # headers are:
9177
+ # If you encrypted an object when you stored the object in Amazon S3
9178
+ # by using server-side encryption with customer-provided encryption
9179
+ # keys (SSE-C), then when you retrieve the metadata from the object,
9180
+ # you must use the following headers. These headers provide the server
9181
+ # with the encryption key required to retrieve the object's metadata.
9182
+ # The headers are:
9176
9183
  #
9177
9184
  # * `x-amz-server-side-encryption-customer-algorithm`
9178
9185
  #
@@ -9332,11 +9339,23 @@ module Aws::S3
9332
9339
  # </note>
9333
9340
  #
9334
9341
  # @option params [Integer] :max_parts
9335
- # Sets the maximum number of parts to return.
9342
+ # Sets the maximum number of parts to return. For more information, see
9343
+ # [Uploading and copying objects using multipart upload in Amazon S3
9344
+ # ][1] in the *Amazon Simple Storage Service user guide*.
9345
+ #
9346
+ #
9347
+ #
9348
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpuoverview.html
9336
9349
  #
9337
9350
  # @option params [Integer] :part_number_marker
9338
9351
  # Specifies the part after which listing should begin. Only parts with
9339
- # higher part numbers will be listed.
9352
+ # higher part numbers will be listed. For more information, see
9353
+ # [Uploading and copying objects using multipart upload in Amazon S3
9354
+ # ][1] in the *Amazon Simple Storage Service user guide*.
9355
+ #
9356
+ #
9357
+ #
9358
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpuoverview.html
9340
9359
  #
9341
9360
  # @option params [String] :sse_customer_algorithm
9342
9361
  # Specifies the algorithm to use when encrypting the object (for
@@ -15280,6 +15299,22 @@ module Aws::S3
15280
15299
  # The `OwnershipControls` (BucketOwnerEnforced, BucketOwnerPreferred, or
15281
15300
  # ObjectWriter) that you want to apply to this Amazon S3 bucket.
15282
15301
  #
15302
+ # @option params [String] :checksum_algorithm
15303
+ # Indicates the algorithm used to create the checksum for the object
15304
+ # when you use the SDK. This header will not provide any additional
15305
+ # functionality if you don't use the SDK. When you send this header,
15306
+ # there must be a corresponding `x-amz-checksum-algorithm ` header sent.
15307
+ # Otherwise, Amazon S3 fails the request with the HTTP status code `400
15308
+ # Bad Request`. For more information, see [Checking object integrity][1]
15309
+ # in the *Amazon S3 User Guide*.
15310
+ #
15311
+ # If you provide an individual checksum, Amazon S3 ignores any provided
15312
+ # `ChecksumAlgorithm` parameter.
15313
+ #
15314
+ #
15315
+ #
15316
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
15317
+ #
15283
15318
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
15284
15319
  #
15285
15320
  # @example Request syntax with placeholder values
@@ -15295,6 +15330,7 @@ module Aws::S3
15295
15330
  # },
15296
15331
  # ],
15297
15332
  # },
15333
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
15298
15334
  # })
15299
15335
  #
15300
15336
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketOwnershipControls AWS API Documentation
@@ -17133,38 +17169,39 @@ module Aws::S3
17133
17169
  # * {Types::PutObjectOutput#request_charged #request_charged} => String
17134
17170
  #
17135
17171
  #
17136
- # @example Example: To create an object.
17172
+ # @example Example: To upload an object and specify canned ACL.
17137
17173
  #
17138
- # # The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.
17174
+ # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
17175
+ # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
17139
17176
  #
17140
17177
  # resp = client.put_object({
17178
+ # acl: "authenticated-read",
17141
17179
  # body: "filetoupload",
17142
17180
  # bucket: "examplebucket",
17143
- # key: "objectkey",
17181
+ # key: "exampleobject",
17144
17182
  # })
17145
17183
  #
17146
17184
  # resp.to_h outputs the following:
17147
17185
  # {
17148
17186
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
17149
- # version_id: "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ",
17187
+ # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
17150
17188
  # }
17151
17189
  #
17152
- # @example Example: To upload an object and specify optional tags
17190
+ # @example Example: To upload an object
17153
17191
  #
17154
- # # The following example uploads an object. The request specifies optional object tags. The bucket is versioned, therefore
17155
- # # S3 returns version ID of the newly created object.
17192
+ # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
17193
+ # # syntax. S3 returns VersionId of the newly created object.
17156
17194
  #
17157
17195
  # resp = client.put_object({
17158
- # body: "c:\\HappyFace.jpg",
17196
+ # body: "HappyFace.jpg",
17159
17197
  # bucket: "examplebucket",
17160
17198
  # key: "HappyFace.jpg",
17161
- # tagging: "key1=value1&key2=value2",
17162
17199
  # })
17163
17200
  #
17164
17201
  # resp.to_h outputs the following:
17165
17202
  # {
17166
17203
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
17167
- # version_id: "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a",
17204
+ # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
17168
17205
  # }
17169
17206
  #
17170
17207
  # @example Example: To upload an object (specify optional headers)
@@ -17187,22 +17224,22 @@ module Aws::S3
17187
17224
  # version_id: "CG612hodqujkf8FaaNfp8U..FIhLROcp",
17188
17225
  # }
17189
17226
  #
17190
- # @example Example: To upload an object and specify canned ACL.
17227
+ # @example Example: To upload an object and specify optional tags
17191
17228
  #
17192
- # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
17193
- # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
17229
+ # # The following example uploads an object. The request specifies optional object tags. The bucket is versioned, therefore
17230
+ # # S3 returns version ID of the newly created object.
17194
17231
  #
17195
17232
  # resp = client.put_object({
17196
- # acl: "authenticated-read",
17197
- # body: "filetoupload",
17233
+ # body: "c:\\HappyFace.jpg",
17198
17234
  # bucket: "examplebucket",
17199
- # key: "exampleobject",
17235
+ # key: "HappyFace.jpg",
17236
+ # tagging: "key1=value1&key2=value2",
17200
17237
  # })
17201
17238
  #
17202
17239
  # resp.to_h outputs the following:
17203
17240
  # {
17204
17241
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
17205
- # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
17242
+ # version_id: "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a",
17206
17243
  # }
17207
17244
  #
17208
17245
  # @example Example: To upload an object and specify server-side encryption and object tags
@@ -17246,21 +17283,20 @@ module Aws::S3
17246
17283
  # version_id: "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0",
17247
17284
  # }
17248
17285
  #
17249
- # @example Example: To upload an object
17286
+ # @example Example: To create an object.
17250
17287
  #
17251
- # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
17252
- # # syntax. S3 returns VersionId of the newly created object.
17288
+ # # The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.
17253
17289
  #
17254
17290
  # resp = client.put_object({
17255
- # body: "HappyFace.jpg",
17291
+ # body: "filetoupload",
17256
17292
  # bucket: "examplebucket",
17257
- # key: "HappyFace.jpg",
17293
+ # key: "objectkey",
17258
17294
  # })
17259
17295
  #
17260
17296
  # resp.to_h outputs the following:
17261
17297
  # {
17262
17298
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
17263
- # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
17299
+ # version_id: "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ",
17264
17300
  # }
17265
17301
  #
17266
17302
  # @example Streaming a file from disk
@@ -20162,45 +20198,45 @@ module Aws::S3
20162
20198
  # * {Types::UploadPartCopyOutput#request_charged #request_charged} => String
20163
20199
  #
20164
20200
  #
20165
- # @example Example: To upload a part by copying byte range from an existing object as data source
20201
+ # @example Example: To upload a part by copying data from an existing object as data source
20166
20202
  #
20167
- # # The following example uploads a part of a multipart upload by copying a specified byte range from an existing object as
20168
- # # data source.
20203
+ # # The following example uploads a part of a multipart upload by copying data from an existing object as data source.
20169
20204
  #
20170
20205
  # resp = client.upload_part_copy({
20171
20206
  # bucket: "examplebucket",
20172
20207
  # copy_source: "/bucketname/sourceobjectkey",
20173
- # copy_source_range: "bytes=1-100000",
20174
20208
  # key: "examplelargeobject",
20175
- # part_number: 2,
20209
+ # part_number: 1,
20176
20210
  # upload_id: "exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--",
20177
20211
  # })
20178
20212
  #
20179
20213
  # resp.to_h outputs the following:
20180
20214
  # {
20181
20215
  # copy_part_result: {
20182
- # etag: "\"65d16d19e65a7508a51f043180edcc36\"",
20183
- # last_modified: Time.parse("2016-12-29T21:44:28.000Z"),
20216
+ # etag: "\"b0c6f0e7e054ab8fa2536a2677f8734d\"",
20217
+ # last_modified: Time.parse("2016-12-29T21:24:43.000Z"),
20184
20218
  # },
20185
20219
  # }
20186
20220
  #
20187
- # @example Example: To upload a part by copying data from an existing object as data source
20221
+ # @example Example: To upload a part by copying byte range from an existing object as data source
20188
20222
  #
20189
- # # The following example uploads a part of a multipart upload by copying data from an existing object as data source.
20223
+ # # The following example uploads a part of a multipart upload by copying a specified byte range from an existing object as
20224
+ # # data source.
20190
20225
  #
20191
20226
  # resp = client.upload_part_copy({
20192
20227
  # bucket: "examplebucket",
20193
20228
  # copy_source: "/bucketname/sourceobjectkey",
20229
+ # copy_source_range: "bytes=1-100000",
20194
20230
  # key: "examplelargeobject",
20195
- # part_number: 1,
20231
+ # part_number: 2,
20196
20232
  # upload_id: "exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--",
20197
20233
  # })
20198
20234
  #
20199
20235
  # resp.to_h outputs the following:
20200
20236
  # {
20201
20237
  # copy_part_result: {
20202
- # etag: "\"b0c6f0e7e054ab8fa2536a2677f8734d\"",
20203
- # last_modified: Time.parse("2016-12-29T21:24:43.000Z"),
20238
+ # etag: "\"65d16d19e65a7508a51f043180edcc36\"",
20239
+ # last_modified: Time.parse("2016-12-29T21:44:28.000Z"),
20204
20240
  # },
20205
20241
  # }
20206
20242
  #
@@ -20547,12 +20583,18 @@ module Aws::S3
20547
20583
  #
20548
20584
  # @option params [String] :request_charged
20549
20585
  # If present, indicates that the requester was successfully charged for
20550
- # the request.
20586
+ # the request. For more information, see [Using Requester Pays buckets
20587
+ # for storage transfers and usage][1] in the *Amazon Simple Storage
20588
+ # Service user guide*.
20551
20589
  #
20552
20590
  # <note markdown="1"> This functionality is not supported for directory buckets.
20553
20591
  #
20554
20592
  # </note>
20555
20593
  #
20594
+ #
20595
+ #
20596
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/RequesterPaysBuckets.html
20597
+ #
20556
20598
  # @option params [String] :restore
20557
20599
  # Provides information about object restoration operation and expiration
20558
20600
  # time of the restored object copy.
@@ -20680,7 +20722,7 @@ module Aws::S3
20680
20722
  tracer: tracer
20681
20723
  )
20682
20724
  context[:gem_name] = 'aws-sdk-s3'
20683
- context[:gem_version] = '1.186.1'
20725
+ context[:gem_version] = '1.189.1'
20684
20726
  Seahorse::Client::Request.new(handlers, context)
20685
20727
  end
20686
20728
 
@@ -2299,6 +2299,7 @@ module Aws::S3
2299
2299
  PutBucketOwnershipControlsRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
2300
2300
  PutBucketOwnershipControlsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
2301
2301
  PutBucketOwnershipControlsRequest.add_member(:ownership_controls, Shapes::ShapeRef.new(shape: OwnershipControls, required: true, location_name: "OwnershipControls", metadata: {"xmlNamespace" => {"uri" => "http://s3.amazonaws.com/doc/2006-03-01/"}}))
2302
+ PutBucketOwnershipControlsRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-sdk-checksum-algorithm"))
2302
2303
  PutBucketOwnershipControlsRequest.struct_class = Types::PutBucketOwnershipControlsRequest
2303
2304
  PutBucketOwnershipControlsRequest[:payload] = :ownership_controls
2304
2305
  PutBucketOwnershipControlsRequest[:payload_member] = PutBucketOwnershipControlsRequest.member(:ownership_controls)
@@ -3753,6 +3754,11 @@ module Aws::S3
3753
3754
  o.http_method = "PUT"
3754
3755
  o.http_request_uri = "/?ownershipControls"
3755
3756
  o.http_checksum = {
3757
+ "requestAlgorithmMember" => "checksum_algorithm",
3758
+ "requestChecksumRequired" => true,
3759
+ }
3760
+ o.http_checksum = {
3761
+ "requestAlgorithmMember" => "checksum_algorithm",
3756
3762
  "requestChecksumRequired" => true,
3757
3763
  }
3758
3764
  o.input = Shapes::ShapeRef.new(shape: PutBucketOwnershipControlsRequest)
@@ -3,7 +3,8 @@
3
3
  require 'set'
4
4
  require 'time'
5
5
  require 'openssl'
6
- require 'cgi'
6
+ require "cgi/escape"
7
+ require "cgi/util" if RUBY_VERSION < "3.5"
7
8
  require 'aws-sdk-core/query'
8
9
 
9
10
  module Aws
@@ -397,11 +397,17 @@ module Aws::S3
397
397
  end
398
398
 
399
399
  # If present, indicates that the requester was successfully charged for
400
- # the request.
400
+ # the request. For more information, see [Using Requester Pays buckets
401
+ # for storage transfers and usage][1] in the *Amazon Simple Storage
402
+ # Service user guide*.
401
403
  #
402
404
  # <note markdown="1"> This functionality is not supported for directory buckets.
403
405
  #
404
406
  # </note>
407
+ #
408
+ #
409
+ #
410
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/RequesterPaysBuckets.html
405
411
  # @return [String]
406
412
  def request_charged
407
413
  data[:request_charged]
@@ -55,11 +55,17 @@ module Aws::S3
55
55
  end
56
56
 
57
57
  # If present, indicates that the requester was successfully charged for
58
- # the request.
58
+ # the request. For more information, see [Using Requester Pays buckets
59
+ # for storage transfers and usage][1] in the *Amazon Simple Storage
60
+ # Service user guide*.
59
61
  #
60
62
  # <note markdown="1"> This functionality is not supported for directory buckets.
61
63
  #
62
64
  # </note>
65
+ #
66
+ #
67
+ #
68
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/RequesterPaysBuckets.html
63
69
  # @return [String]
64
70
  def request_charged
65
71
  data[:request_charged]
@@ -1,7 +1,8 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'thread'
4
- require 'cgi'
4
+ require "cgi/escape"
5
+ require "cgi/util" if RUBY_VERSION < "3.5"
5
6
 
6
7
  module Aws
7
8
  module S3