aws-sdk-s3 1.149.0 → 1.151.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d4d91f16763c42e349f2e6d50ff4f37926096c5148ae5f78b953685e4d2f171e
4
- data.tar.gz: 2e72de55c5c10a86437e89200db3b357bb89f083ca5b1c044c20ed90143b66b4
3
+ metadata.gz: 6114dedb4a21eb5fbf21942e75b07672dc196f796c7803d700294aa8e1a591af
4
+ data.tar.gz: 450308ca25390a935185963b6d90dcba80b8ad54fb692db8c39a0e9d70a40527
5
5
  SHA512:
6
- metadata.gz: '078c6651b2bc5d4c4cf9abb678303f3dc41250eb24ee66fcbbb22d9c96064dc8dbade173862964021948234fff6e9d38b4a9eb255949891fc047a0b06ac785f6'
7
- data.tar.gz: d17a3204313a0977ee8f108c057fefbcbca80eb48e54e146274be01b9f2d9d4c33502cf2474c49fffe560d4a134d8e985a0f8db7a3f83ff533b898e725236473
6
+ metadata.gz: 89f03a41c4dfa28e743e7948d96c088fc983610fc5b60af7e63e92b33f088c411d3f72d264bd447e6806963807eb6256938991d571e9df59eb641194b1a5b99d
7
+ data.tar.gz: '09c924fb2e88f0789fee482eb95eb7f3e636b8246c6ed2f28d410396fa5a199c74d4adfd1fbd7c33ef4524a72c7ee18e78e74d65f58f5219b166d0b96ec550d9'
data/CHANGELOG.md CHANGED
@@ -1,6 +1,21 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.151.0 (2024-05-14)
5
+ ------------------
6
+
7
+ * Feature - Updated a few x-id in the http uri traits
8
+
9
+ 1.150.0 (2024-05-13)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
14
+ 1.149.1 (2024-05-06)
15
+ ------------------
16
+
17
+ * Issue - Fix bug where destination bucket default encryption was inadvertently overridden by source object encryption.
18
+
4
19
  1.149.0 (2024-04-30)
5
20
  ------------------
6
21
 
@@ -167,7 +182,7 @@ Unreleased Changes
167
182
  1.123.2 (2023-06-12)
168
183
  ------------------
169
184
 
170
- * Issue - Fix issue when decrypting noncurrent versions of objects when using client side encryption (#2866).
185
+ * Issue - Fix issue when decrypting noncurrent versions of objects when using client side encryption (#2866).
171
186
 
172
187
  1.123.1 (2023-06-02)
173
188
  ------------------
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.149.0
1
+ 1.151.0
@@ -403,8 +403,9 @@ module Aws::S3
403
403
  #
404
404
  # @option options [String] :sdk_ua_app_id
405
405
  # A unique and opaque application ID that is appended to the
406
- # User-Agent header as app/<sdk_ua_app_id>. It should have a
407
- # maximum length of 50.
406
+ # User-Agent header as app/sdk_ua_app_id. It should have a
407
+ # maximum length of 50. This variable is sourced from environment
408
+ # variable AWS_SDK_UA_APP_ID or the shared config profile attribute sdk_ua_app_id.
408
409
  #
409
410
  # @option options [String] :secret_access_key
410
411
  #
@@ -4486,6 +4487,15 @@ module Aws::S3
4486
4487
  # * {Types::DeleteObjectOutput#request_charged #request_charged} => String
4487
4488
  #
4488
4489
  #
4490
+ # @example Example: To delete an object (from a non-versioned bucket)
4491
+ #
4492
+ # # The following example deletes an object from a non-versioned bucket.
4493
+ #
4494
+ # resp = client.delete_object({
4495
+ # bucket: "ExampleBucket",
4496
+ # key: "HappyFace.jpg",
4497
+ # })
4498
+ #
4489
4499
  # @example Example: To delete an object
4490
4500
  #
4491
4501
  # # The following example deletes an object from an S3 bucket.
@@ -4499,15 +4509,6 @@ module Aws::S3
4499
4509
  # {
4500
4510
  # }
4501
4511
  #
4502
- # @example Example: To delete an object (from a non-versioned bucket)
4503
- #
4504
- # # The following example deletes an object from a non-versioned bucket.
4505
- #
4506
- # resp = client.delete_object({
4507
- # bucket: "ExampleBucket",
4508
- # key: "HappyFace.jpg",
4509
- # })
4510
- #
4511
4512
  # @example Request syntax with placeholder values
4512
4513
  #
4513
4514
  # resp = client.delete_object({
@@ -4917,22 +4918,20 @@ module Aws::S3
4917
4918
  # * {Types::DeleteObjectsOutput#errors #errors} => Array&lt;Types::Error&gt;
4918
4919
  #
4919
4920
  #
4920
- # @example Example: To delete multiple object versions from a versioned bucket
4921
+ # @example Example: To delete multiple objects from a versioned bucket
4921
4922
  #
4922
- # # The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object
4923
- # # versions and returns the key and versions of deleted objects in the response.
4923
+ # # The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the
4924
+ # # object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.
4924
4925
  #
4925
4926
  # resp = client.delete_objects({
4926
4927
  # bucket: "examplebucket",
4927
4928
  # delete: {
4928
4929
  # objects: [
4929
4930
  # {
4930
- # key: "HappyFace.jpg",
4931
- # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
4931
+ # key: "objectkey1",
4932
4932
  # },
4933
4933
  # {
4934
- # key: "HappyFace.jpg",
4935
- # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
4934
+ # key: "objectkey2",
4936
4935
  # },
4937
4936
  # ],
4938
4937
  # quiet: false,
@@ -4943,30 +4942,34 @@ module Aws::S3
4943
4942
  # {
4944
4943
  # deleted: [
4945
4944
  # {
4946
- # key: "HappyFace.jpg",
4947
- # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
4945
+ # delete_marker: true,
4946
+ # delete_marker_version_id: "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F",
4947
+ # key: "objectkey1",
4948
4948
  # },
4949
4949
  # {
4950
- # key: "HappyFace.jpg",
4951
- # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
4950
+ # delete_marker: true,
4951
+ # delete_marker_version_id: "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt",
4952
+ # key: "objectkey2",
4952
4953
  # },
4953
4954
  # ],
4954
4955
  # }
4955
4956
  #
4956
- # @example Example: To delete multiple objects from a versioned bucket
4957
+ # @example Example: To delete multiple object versions from a versioned bucket
4957
4958
  #
4958
- # # The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the
4959
- # # object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.
4959
+ # # The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object
4960
+ # # versions and returns the key and versions of deleted objects in the response.
4960
4961
  #
4961
4962
  # resp = client.delete_objects({
4962
4963
  # bucket: "examplebucket",
4963
4964
  # delete: {
4964
4965
  # objects: [
4965
4966
  # {
4966
- # key: "objectkey1",
4967
+ # key: "HappyFace.jpg",
4968
+ # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
4967
4969
  # },
4968
4970
  # {
4969
- # key: "objectkey2",
4971
+ # key: "HappyFace.jpg",
4972
+ # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
4970
4973
  # },
4971
4974
  # ],
4972
4975
  # quiet: false,
@@ -4977,14 +4980,12 @@ module Aws::S3
4977
4980
  # {
4978
4981
  # deleted: [
4979
4982
  # {
4980
- # delete_marker: true,
4981
- # delete_marker_version_id: "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F",
4982
- # key: "objectkey1",
4983
+ # key: "HappyFace.jpg",
4984
+ # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
4983
4985
  # },
4984
4986
  # {
4985
- # delete_marker: true,
4986
- # delete_marker_version_id: "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt",
4987
- # key: "objectkey2",
4987
+ # key: "HappyFace.jpg",
4988
+ # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
4988
4989
  # },
4989
4990
  # ],
4990
4991
  # }
@@ -8734,49 +8735,49 @@ module Aws::S3
8734
8735
  # * {Types::GetObjectTaggingOutput#tag_set #tag_set} => Array&lt;Types::Tag&gt;
8735
8736
  #
8736
8737
  #
8737
- # @example Example: To retrieve tag set of a specific object version
8738
+ # @example Example: To retrieve tag set of an object
8738
8739
  #
8739
- # # The following example retrieves tag set of an object. The request specifies object version.
8740
+ # # The following example retrieves tag set of an object.
8740
8741
  #
8741
8742
  # resp = client.get_object_tagging({
8742
8743
  # bucket: "examplebucket",
8743
- # key: "exampleobject",
8744
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
8744
+ # key: "HappyFace.jpg",
8745
8745
  # })
8746
8746
  #
8747
8747
  # resp.to_h outputs the following:
8748
8748
  # {
8749
8749
  # tag_set: [
8750
8750
  # {
8751
- # key: "Key1",
8752
- # value: "Value1",
8751
+ # key: "Key4",
8752
+ # value: "Value4",
8753
+ # },
8754
+ # {
8755
+ # key: "Key3",
8756
+ # value: "Value3",
8753
8757
  # },
8754
8758
  # ],
8755
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
8759
+ # version_id: "null",
8756
8760
  # }
8757
8761
  #
8758
- # @example Example: To retrieve tag set of an object
8762
+ # @example Example: To retrieve tag set of a specific object version
8759
8763
  #
8760
- # # The following example retrieves tag set of an object.
8764
+ # # The following example retrieves tag set of an object. The request specifies object version.
8761
8765
  #
8762
8766
  # resp = client.get_object_tagging({
8763
8767
  # bucket: "examplebucket",
8764
- # key: "HappyFace.jpg",
8768
+ # key: "exampleobject",
8769
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
8765
8770
  # })
8766
8771
  #
8767
8772
  # resp.to_h outputs the following:
8768
8773
  # {
8769
8774
  # tag_set: [
8770
8775
  # {
8771
- # key: "Key4",
8772
- # value: "Value4",
8773
- # },
8774
- # {
8775
- # key: "Key3",
8776
- # value: "Value3",
8776
+ # key: "Key1",
8777
+ # value: "Value1",
8777
8778
  # },
8778
8779
  # ],
8779
- # version_id: "null",
8780
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
8780
8781
  # }
8781
8782
  #
8782
8783
  # @example Request syntax with placeholder values
@@ -15409,21 +15410,25 @@ module Aws::S3
15409
15410
  # * {Types::PutObjectOutput#request_charged #request_charged} => String
15410
15411
  #
15411
15412
  #
15412
- # @example Example: To upload an object
15413
+ # @example Example: To upload object and specify user-defined metadata
15413
15414
  #
15414
- # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
15415
- # # syntax. S3 returns VersionId of the newly created object.
15415
+ # # The following example creates an object. The request also specifies optional metadata. If the bucket is versioning
15416
+ # # enabled, S3 returns version ID in response.
15416
15417
  #
15417
15418
  # resp = client.put_object({
15418
- # body: "HappyFace.jpg",
15419
+ # body: "filetoupload",
15419
15420
  # bucket: "examplebucket",
15420
- # key: "HappyFace.jpg",
15421
+ # key: "exampleobject",
15422
+ # metadata: {
15423
+ # "metadata1" => "value1",
15424
+ # "metadata2" => "value2",
15425
+ # },
15421
15426
  # })
15422
15427
  #
15423
15428
  # resp.to_h outputs the following:
15424
15429
  # {
15425
15430
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
15426
- # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
15431
+ # version_id: "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0",
15427
15432
  # }
15428
15433
  #
15429
15434
  # @example Example: To upload an object (specify optional headers)
@@ -15446,97 +15451,93 @@ module Aws::S3
15446
15451
  # version_id: "CG612hodqujkf8FaaNfp8U..FIhLROcp",
15447
15452
  # }
15448
15453
  #
15449
- # @example Example: To upload object and specify user-defined metadata
15454
+ # @example Example: To upload an object and specify optional tags
15450
15455
  #
15451
- # # The following example creates an object. The request also specifies optional metadata. If the bucket is versioning
15452
- # # enabled, S3 returns version ID in response.
15456
+ # # The following example uploads an object. The request specifies optional object tags. The bucket is versioned, therefore
15457
+ # # S3 returns version ID of the newly created object.
15453
15458
  #
15454
15459
  # resp = client.put_object({
15455
- # body: "filetoupload",
15460
+ # body: "c:\\HappyFace.jpg",
15456
15461
  # bucket: "examplebucket",
15457
- # key: "exampleobject",
15458
- # metadata: {
15459
- # "metadata1" => "value1",
15460
- # "metadata2" => "value2",
15461
- # },
15462
+ # key: "HappyFace.jpg",
15463
+ # tagging: "key1=value1&key2=value2",
15462
15464
  # })
15463
15465
  #
15464
15466
  # resp.to_h outputs the following:
15465
15467
  # {
15466
15468
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
15467
- # version_id: "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0",
15469
+ # version_id: "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a",
15468
15470
  # }
15469
15471
  #
15470
- # @example Example: To upload an object and specify canned ACL.
15472
+ # @example Example: To create an object.
15471
15473
  #
15472
- # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
15473
- # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
15474
+ # # The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.
15474
15475
  #
15475
15476
  # resp = client.put_object({
15476
- # acl: "authenticated-read",
15477
15477
  # body: "filetoupload",
15478
15478
  # bucket: "examplebucket",
15479
- # key: "exampleobject",
15479
+ # key: "objectkey",
15480
15480
  # })
15481
15481
  #
15482
15482
  # resp.to_h outputs the following:
15483
15483
  # {
15484
15484
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
15485
- # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
15485
+ # version_id: "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ",
15486
15486
  # }
15487
15487
  #
15488
- # @example Example: To create an object.
15488
+ # @example Example: To upload an object
15489
15489
  #
15490
- # # The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.
15490
+ # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
15491
+ # # syntax. S3 returns VersionId of the newly created object.
15491
15492
  #
15492
15493
  # resp = client.put_object({
15493
- # body: "filetoupload",
15494
+ # body: "HappyFace.jpg",
15494
15495
  # bucket: "examplebucket",
15495
- # key: "objectkey",
15496
+ # key: "HappyFace.jpg",
15496
15497
  # })
15497
15498
  #
15498
15499
  # resp.to_h outputs the following:
15499
15500
  # {
15500
15501
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
15501
- # version_id: "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ",
15502
+ # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
15502
15503
  # }
15503
15504
  #
15504
- # @example Example: To upload an object and specify server-side encryption and object tags
15505
+ # @example Example: To upload an object and specify canned ACL.
15505
15506
  #
15506
- # # The following example uploads an object. The request specifies the optional server-side encryption option. The request
15507
- # # also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
15507
+ # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
15508
+ # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
15508
15509
  #
15509
15510
  # resp = client.put_object({
15511
+ # acl: "authenticated-read",
15510
15512
  # body: "filetoupload",
15511
15513
  # bucket: "examplebucket",
15512
15514
  # key: "exampleobject",
15513
- # server_side_encryption: "AES256",
15514
- # tagging: "key1=value1&key2=value2",
15515
15515
  # })
15516
15516
  #
15517
15517
  # resp.to_h outputs the following:
15518
15518
  # {
15519
15519
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
15520
- # server_side_encryption: "AES256",
15521
- # version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
15520
+ # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
15522
15521
  # }
15523
15522
  #
15524
- # @example Example: To upload an object and specify optional tags
15523
+ # @example Example: To upload an object and specify server-side encryption and object tags
15525
15524
  #
15526
- # # The following example uploads an object. The request specifies optional object tags. The bucket is versioned, therefore
15527
- # # S3 returns version ID of the newly created object.
15525
+ # # The following example uploads an object. The request specifies the optional server-side encryption option. The request
15526
+ # # also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
15528
15527
  #
15529
15528
  # resp = client.put_object({
15530
- # body: "c:\\HappyFace.jpg",
15529
+ # body: "filetoupload",
15531
15530
  # bucket: "examplebucket",
15532
- # key: "HappyFace.jpg",
15531
+ # key: "exampleobject",
15532
+ # server_side_encryption: "AES256",
15533
15533
  # tagging: "key1=value1&key2=value2",
15534
15534
  # })
15535
15535
  #
15536
15536
  # resp.to_h outputs the following:
15537
15537
  # {
15538
15538
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
15539
- # version_id: "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a",
15539
+ # server_side_encryption: "AES256",
15540
+ # version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
15540
15541
  # }
15541
15542
  #
15542
15543
  # @example Streaming a file from disk
@@ -18827,7 +18828,7 @@ module Aws::S3
18827
18828
  params: params,
18828
18829
  config: config)
18829
18830
  context[:gem_name] = 'aws-sdk-s3'
18830
- context[:gem_version] = '1.149.0'
18831
+ context[:gem_version] = '1.151.0'
18831
18832
  Seahorse::Client::Request.new(handlers, context)
18832
18833
  end
18833
18834
 
@@ -2764,6 +2764,7 @@ module Aws::S3
2764
2764
  "endpointPrefix" => "s3",
2765
2765
  "globalEndpoint" => "s3.amazonaws.com",
2766
2766
  "protocol" => "rest-xml",
2767
+ "protocols" => ["rest-xml"],
2767
2768
  "serviceAbbreviation" => "Amazon S3",
2768
2769
  "serviceFullName" => "Amazon Simple Storage Service",
2769
2770
  "serviceId" => "S3",
@@ -138,9 +138,7 @@ module Aws
138
138
  end
139
139
 
140
140
  def source_metadata(options)
141
- if options[:content_length]
142
- return { content_length: options.delete(:content_length) }
143
- end
141
+ return options.slice(:content_length) if options[:content_length]
144
142
 
145
143
  client = options[:copy_source_client] || @client
146
144
 
@@ -150,11 +148,15 @@ module Aws
150
148
  bucket, key = options[:copy_source].match(/([^\/]+?)\/(.+)/)[1,2]
151
149
  end
152
150
 
153
- key = CGI.unescape(key)
154
- opts = { bucket: bucket, key: key }
155
- opts[:version_id] = version_id if version_id
156
- opts[:part_number] = options[:part_number] if options[:part_number]
157
- client.head_object(opts).to_h
151
+ head_opts = { bucket: bucket, key: CGI.unescape(key) }.tap { |opts|
152
+ opts[:version_id] = version_id if version_id
153
+ opts[:part_number] = options[:part_number] if options[:part_number]
154
+ }
155
+
156
+ client.head_object(head_opts).to_h.tap { |head|
157
+ head.delete(:server_side_encryption)
158
+ head.delete(:ssekms_key_id)
159
+ }
158
160
  end
159
161
 
160
162
  def default_part_size(source_size)
data/lib/aws-sdk-s3.rb CHANGED
@@ -73,6 +73,6 @@ require_relative 'aws-sdk-s3/event_streams'
73
73
  # @!group service
74
74
  module Aws::S3
75
75
 
76
- GEM_VERSION = '1.149.0'
76
+ GEM_VERSION = '1.151.0'
77
77
 
78
78
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-s3
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.149.0
4
+ version: 1.151.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-04-30 00:00:00.000000000 Z
11
+ date: 2024-05-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-kms