aws-sdk-core 3.197.2 → 3.225.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.
Files changed (150) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +355 -0
  3. data/VERSION +1 -1
  4. data/lib/aws-defaults/default_configuration.rb +1 -2
  5. data/lib/aws-defaults.rb +4 -1
  6. data/lib/aws-sdk-core/arn.rb +1 -3
  7. data/lib/aws-sdk-core/assume_role_credentials.rb +13 -5
  8. data/lib/aws-sdk-core/assume_role_web_identity_credentials.rb +14 -7
  9. data/lib/aws-sdk-core/binary/decode_handler.rb +3 -4
  10. data/lib/aws-sdk-core/binary/encode_handler.rb +1 -1
  11. data/lib/aws-sdk-core/binary/event_stream_decoder.rb +1 -0
  12. data/lib/aws-sdk-core/binary/event_stream_encoder.rb +4 -3
  13. data/lib/aws-sdk-core/cbor/decoder.rb +308 -0
  14. data/lib/aws-sdk-core/cbor/encoder.rb +243 -0
  15. data/lib/aws-sdk-core/cbor.rb +53 -0
  16. data/lib/aws-sdk-core/client_side_monitoring.rb +9 -0
  17. data/lib/aws-sdk-core/client_stubs.rb +30 -55
  18. data/lib/aws-sdk-core/credential_provider.rb +4 -0
  19. data/lib/aws-sdk-core/credential_provider_chain.rb +37 -10
  20. data/lib/aws-sdk-core/credentials.rb +19 -6
  21. data/lib/aws-sdk-core/ecs_credentials.rb +1 -0
  22. data/lib/aws-sdk-core/endpoints/endpoint.rb +3 -1
  23. data/lib/aws-sdk-core/endpoints/matchers.rb +1 -8
  24. data/lib/aws-sdk-core/endpoints.rb +74 -18
  25. data/lib/aws-sdk-core/error_handler.rb +41 -0
  26. data/lib/aws-sdk-core/errors.rb +11 -2
  27. data/lib/aws-sdk-core/instance_profile_credentials.rb +1 -0
  28. data/lib/aws-sdk-core/json/error_handler.rb +8 -9
  29. data/lib/aws-sdk-core/json/handler.rb +6 -6
  30. data/lib/aws-sdk-core/json/json_engine.rb +3 -1
  31. data/lib/aws-sdk-core/json/oj_engine.rb +7 -1
  32. data/lib/aws-sdk-core/json/parser.rb +2 -0
  33. data/lib/aws-sdk-core/json.rb +43 -14
  34. data/lib/aws-sdk-core/log/param_filter.rb +2 -2
  35. data/lib/aws-sdk-core/log/param_formatter.rb +7 -3
  36. data/lib/aws-sdk-core/log.rb +10 -0
  37. data/lib/aws-sdk-core/param_validator.rb +1 -1
  38. data/lib/aws-sdk-core/plugins/bearer_authorization.rb +2 -0
  39. data/lib/aws-sdk-core/plugins/checksum_algorithm.rb +332 -169
  40. data/lib/aws-sdk-core/plugins/client_metrics_plugin.rb +0 -1
  41. data/lib/aws-sdk-core/plugins/credentials_configuration.rb +7 -3
  42. data/lib/aws-sdk-core/plugins/endpoint_pattern.rb +40 -32
  43. data/lib/aws-sdk-core/plugins/global_configuration.rb +8 -9
  44. data/lib/aws-sdk-core/plugins/http_checksum.rb +2 -8
  45. data/lib/aws-sdk-core/plugins/protocols/api_gateway.rb +3 -1
  46. data/lib/aws-sdk-core/plugins/protocols/ec2.rb +2 -24
  47. data/lib/aws-sdk-core/plugins/protocols/json_rpc.rb +6 -8
  48. data/lib/aws-sdk-core/plugins/protocols/query.rb +4 -2
  49. data/lib/aws-sdk-core/plugins/protocols/rest_json.rb +4 -3
  50. data/lib/aws-sdk-core/plugins/protocols/rest_xml.rb +5 -1
  51. data/lib/aws-sdk-core/plugins/protocols/rpc_v2.rb +17 -0
  52. data/lib/aws-sdk-core/plugins/regional_endpoint.rb +74 -25
  53. data/lib/aws-sdk-core/plugins/retry_errors.rb +0 -1
  54. data/lib/aws-sdk-core/plugins/sign.rb +28 -12
  55. data/lib/aws-sdk-core/plugins/signature_v2.rb +2 -1
  56. data/lib/aws-sdk-core/plugins/signature_v4.rb +2 -1
  57. data/lib/aws-sdk-core/plugins/stub_responses.rb +52 -9
  58. data/lib/aws-sdk-core/plugins/telemetry.rb +75 -0
  59. data/lib/aws-sdk-core/plugins/transfer_encoding.rb +16 -9
  60. data/lib/aws-sdk-core/plugins/user_agent.rb +48 -9
  61. data/lib/aws-sdk-core/plugins.rb +39 -0
  62. data/lib/aws-sdk-core/process_credentials.rb +3 -2
  63. data/lib/aws-sdk-core/query/ec2_handler.rb +27 -0
  64. data/lib/aws-sdk-core/query/handler.rb +4 -4
  65. data/lib/aws-sdk-core/query.rb +2 -1
  66. data/lib/aws-sdk-core/resources.rb +8 -0
  67. data/lib/aws-sdk-core/rest/{request/content_type.rb → content_type_handler.rb} +1 -1
  68. data/lib/aws-sdk-core/rest/handler.rb +3 -4
  69. data/lib/aws-sdk-core/rest/request/headers.rb +3 -3
  70. data/lib/aws-sdk-core/rest.rb +1 -1
  71. data/lib/aws-sdk-core/rpc_v2/builder.rb +62 -0
  72. data/lib/aws-sdk-core/rpc_v2/cbor_engine.rb +18 -0
  73. data/lib/aws-sdk-core/rpc_v2/content_type_handler.rb +47 -0
  74. data/lib/aws-sdk-core/rpc_v2/error_handler.rb +85 -0
  75. data/lib/aws-sdk-core/rpc_v2/handler.rb +79 -0
  76. data/lib/aws-sdk-core/rpc_v2/parser.rb +98 -0
  77. data/lib/aws-sdk-core/rpc_v2.rb +69 -0
  78. data/lib/aws-sdk-core/shared_config.rb +78 -22
  79. data/lib/aws-sdk-core/shared_credentials.rb +1 -7
  80. data/lib/aws-sdk-core/sso_credentials.rb +4 -1
  81. data/lib/aws-sdk-core/stubbing/protocols/ec2.rb +12 -11
  82. data/lib/aws-sdk-core/stubbing/protocols/json.rb +11 -10
  83. data/lib/aws-sdk-core/stubbing/protocols/query.rb +7 -6
  84. data/lib/aws-sdk-core/stubbing/protocols/rest.rb +2 -1
  85. data/lib/aws-sdk-core/stubbing/protocols/rest_json.rb +9 -8
  86. data/lib/aws-sdk-core/stubbing/protocols/rest_xml.rb +6 -5
  87. data/lib/aws-sdk-core/stubbing/protocols/rpc_v2.rb +39 -0
  88. data/lib/aws-sdk-core/stubbing.rb +22 -0
  89. data/lib/aws-sdk-core/telemetry/base.rb +177 -0
  90. data/lib/aws-sdk-core/telemetry/no_op.rb +70 -0
  91. data/lib/aws-sdk-core/telemetry/otel.rb +235 -0
  92. data/lib/aws-sdk-core/telemetry/span_kind.rb +22 -0
  93. data/lib/aws-sdk-core/telemetry/span_status.rb +59 -0
  94. data/lib/aws-sdk-core/telemetry.rb +78 -0
  95. data/lib/aws-sdk-core/waiters/poller.rb +9 -4
  96. data/lib/aws-sdk-core/xml/error_handler.rb +11 -37
  97. data/lib/aws-sdk-core/xml/parser.rb +2 -6
  98. data/lib/aws-sdk-core.rb +82 -108
  99. data/lib/aws-sdk-sso/client.rb +100 -39
  100. data/lib/aws-sdk-sso/client_api.rb +7 -0
  101. data/lib/aws-sdk-sso/endpoint_parameters.rb +9 -6
  102. data/lib/aws-sdk-sso/endpoint_provider.rb +14 -18
  103. data/lib/aws-sdk-sso/endpoints.rb +2 -54
  104. data/lib/aws-sdk-sso/plugins/endpoints.rb +19 -20
  105. data/lib/aws-sdk-sso/types.rb +1 -0
  106. data/lib/aws-sdk-sso.rb +15 -11
  107. data/lib/aws-sdk-ssooidc/client.rb +137 -59
  108. data/lib/aws-sdk-ssooidc/client_api.rb +11 -0
  109. data/lib/aws-sdk-ssooidc/endpoint_parameters.rb +9 -6
  110. data/lib/aws-sdk-ssooidc/endpoint_provider.rb +14 -18
  111. data/lib/aws-sdk-ssooidc/endpoints.rb +2 -54
  112. data/lib/aws-sdk-ssooidc/plugins/endpoints.rb +19 -20
  113. data/lib/aws-sdk-ssooidc/types.rb +49 -16
  114. data/lib/aws-sdk-ssooidc.rb +15 -11
  115. data/lib/aws-sdk-sts/client.rb +308 -91
  116. data/lib/aws-sdk-sts/client_api.rb +36 -10
  117. data/lib/aws-sdk-sts/customizations.rb +5 -1
  118. data/lib/aws-sdk-sts/endpoint_parameters.rb +10 -9
  119. data/lib/aws-sdk-sts/endpoint_provider.rb +50 -55
  120. data/lib/aws-sdk-sts/endpoints.rb +2 -118
  121. data/lib/aws-sdk-sts/errors.rb +16 -0
  122. data/lib/aws-sdk-sts/plugins/endpoints.rb +19 -28
  123. data/lib/aws-sdk-sts/types.rb +171 -28
  124. data/lib/aws-sdk-sts.rb +15 -11
  125. data/lib/seahorse/client/async_base.rb +4 -5
  126. data/lib/seahorse/client/base.rb +17 -21
  127. data/lib/seahorse/client/h2/connection.rb +18 -28
  128. data/lib/seahorse/client/h2/handler.rb +13 -3
  129. data/lib/seahorse/client/handler.rb +1 -1
  130. data/lib/seahorse/client/http/response.rb +1 -1
  131. data/lib/seahorse/client/net_http/connection_pool.rb +10 -2
  132. data/lib/seahorse/client/net_http/handler.rb +21 -9
  133. data/lib/seahorse/client/networking_error.rb +1 -1
  134. data/lib/seahorse/client/plugins/endpoint.rb +0 -1
  135. data/lib/seahorse/client/plugins/h2.rb +4 -4
  136. data/lib/seahorse/client/plugins/net_http.rb +9 -0
  137. data/lib/seahorse/client/request_context.rb +8 -1
  138. data/lib/seahorse/client/response.rb +2 -0
  139. data/sig/aws-sdk-core/async_client_stubs.rbs +21 -0
  140. data/sig/aws-sdk-core/telemetry/base.rbs +46 -0
  141. data/sig/aws-sdk-core/telemetry/otel.rbs +22 -0
  142. data/sig/aws-sdk-core/telemetry/span_kind.rbs +15 -0
  143. data/sig/aws-sdk-core/telemetry/span_status.rbs +24 -0
  144. data/sig/seahorse/client/async_base.rbs +18 -0
  145. metadata +80 -24
  146. /data/lib/aws-sdk-core/xml/parser/{engines/libxml.rb → libxml_engine.rb} +0 -0
  147. /data/lib/aws-sdk-core/xml/parser/{engines/nokogiri.rb → nokogiri_engine.rb} +0 -0
  148. /data/lib/aws-sdk-core/xml/parser/{engines/oga.rb → oga_engine.rb} +0 -0
  149. /data/lib/aws-sdk-core/xml/parser/{engines/ox.rb → ox_engine.rb} +0 -0
  150. /data/lib/aws-sdk-core/xml/parser/{engines/rexml.rb → rexml_engine.rb} +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5f61e79b590be2eabebf10df5c7874a56969ca427361200575a47d6d63fbaf5e
4
- data.tar.gz: d50082ed7879c9267e78abb89ad9c973c7a99734562492347777041d3e4b28df
3
+ metadata.gz: 46a7d116a72d11f9bb92bb54fcbd7fc499a648858331558501f929e1ca051abb
4
+ data.tar.gz: fbcc09871a414fbfb5595e5784eb6a073b386d4931c4e7c48f9d2db20295bfdb
5
5
  SHA512:
6
- metadata.gz: affb188b8ecf1117d712f6c0a71c62338333e726c3d4c0ba180d3cc6baba3beabf2f30a8c33ba97d7baccb0196fa720714f04b32f39d98a48b38d1edfd66140a
7
- data.tar.gz: 794ea09971b702916755a6ad06b954be23d3e30874ac41e16e3f9285784a0038e1192b334298ace9691b4631f835a2adf96312254b5d073dfc5ba85c66db62a8
6
+ metadata.gz: 02f986d640f24f9cfff25e1da0d0a911f1731a62f627f9d75baf372031461fb40e6e7c8d7900de4e86177192c32e4945ab609e12254fb4a02e811032966f9964
7
+ data.tar.gz: 93db28af8711d1fa15de97dbd5dc805d241bd6d5d264e793e25660deeb16a1e5dfc0f9777fd7085f7b411dc50cbf34dbf60977437253bb35cc99bb5e857edf5d
data/CHANGELOG.md CHANGED
@@ -1,6 +1,361 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 3.225.1 (2025-06-05)
5
+ ------------------
6
+
7
+ * Issue - Fix RPCv2 parser to handle flattened list and flattened map members correctly for `AwsQueryCompatible` services.
8
+
9
+ 3.225.0 (2025-06-02)
10
+ ------------------
11
+
12
+ * Feature - AWS SDK for Ruby no longer supports Ruby runtime versions 2.5 and 2.6.
13
+
14
+ 3.224.1 (2025-05-28)
15
+ ------------------
16
+
17
+ * Issue - Signal data in http response listeners prior to writing, so that data can be inspected or verified before potential mutation.
18
+
19
+ 3.224.0 (2025-05-12)
20
+ ------------------
21
+
22
+ * Feature - Updated Aws::STS::Client with the latest API changes.
23
+
24
+ * Feature - Updated Aws::SSOOIDC::Client with the latest API changes.
25
+
26
+ * Feature - Updated Aws::SSO::Client with the latest API changes.
27
+
28
+ * Feature - Support `ENV['AWS_DISABLE_HOST_PREFIX_INJECTION']` and `disable_host_prefix_injection` shared config to disable host prefix injection for all services.
29
+
30
+ 3.223.0 (2025-05-01)
31
+ ------------------
32
+
33
+ * Feature - Updated Aws::STS::Client with the latest API changes.
34
+
35
+ 3.222.3 (2025-04-28)
36
+ ------------------
37
+
38
+ * Issue - Do not dynamically create operation methods from the API. (#3234)
39
+
40
+ 3.222.2 (2025-04-16)
41
+ ------------------
42
+
43
+ * Issue - Additional metrics collection for credentials in the User-Agent plugin.
44
+
45
+ 3.222.1 (2025-03-28)
46
+ ------------------
47
+
48
+ * Issue - Allow explicit modeled headers to override prefixed headers for `rest` protocols.
49
+
50
+ 3.222.0 (2025-03-27)
51
+ ------------------
52
+
53
+ * Feature - Updated Aws::SSOOIDC::Client with the latest API changes.
54
+
55
+ * Feature - This release adds AwsAdditionalDetails in the CreateTokenWithIAM API response.
56
+
57
+ 3.221.0 (2025-03-24)
58
+ ------------------
59
+
60
+ * Feature - Add `logger` as an explicit dependency for Ruby 3.5.
61
+ * Issue - Enable ALPN over TLS for H2 Connection by default.
62
+ * Issue - Fix HTTP-2 connections to properly use config values configured on the client.
63
+
64
+ 3.220.2 (2025-03-20)
65
+ ------------------
66
+
67
+ * Issue - Enable ALPN over TLS for H2 by default.
68
+
69
+ 3.220.1 (2025-03-06)
70
+ ------------------
71
+
72
+ * Issue - Convert stubs at request time.
73
+
74
+ 3.220.0 (2025-03-04)
75
+ ------------------
76
+
77
+ * Feature - Updated Aws::STS::Client with the latest API changes.
78
+
79
+ 3.219.0 (2025-02-18)
80
+ ------------------
81
+
82
+ * Feature - Updated Aws::STS::Client with the latest API changes.
83
+
84
+ * Feature - Updated Aws::SSOOIDC::Client with the latest API changes.
85
+
86
+ * Feature - Updated Aws::SSO::Client with the latest API changes.
87
+
88
+ 3.218.1 (2025-02-07)
89
+ ------------------
90
+
91
+ * Issue - Add handling of block in ExtendedSession delegation (#3178).
92
+
93
+ 3.218.0 (2025-02-06)
94
+ ------------------
95
+
96
+ * Feature - Updated Aws::STS::Client with the latest API changes.
97
+
98
+ * Feature - Updated Aws::SSOOIDC::Client with the latest API changes.
99
+
100
+ * Feature - Updated Aws::SSO::Client with the latest API changes.
101
+
102
+ 3.217.1 (2025-01-30)
103
+ ------------------
104
+
105
+ * Issue - Add `transfer-encoding` and `connection` to list of unsigned sigv4 headers.
106
+
107
+ 3.217.0 (2025-01-24)
108
+ ------------------
109
+
110
+ * Feature - Updated Aws::SSOOIDC::Client with the latest API changes.
111
+
112
+ * Feature - Fixed typos in the descriptions.
113
+
114
+ 3.216.1 (2025-01-22)
115
+ ------------------
116
+
117
+ * Issue - Use epoch seconds instead of milliseconds in cbor encode/decode.
118
+
119
+ * Issue - Add handling of block in response delegation (#3169).
120
+
121
+ 3.216.0 (2025-01-15)
122
+ ------------------
123
+
124
+ * Feature - Updated Aws::STS::Client with the latest API changes.
125
+
126
+ * Feature - Updated Aws::SSOOIDC::Client with the latest API changes.
127
+
128
+ * Feature - Updated Aws::SSO::Client with the latest API changes.
129
+
130
+ * Feature - Always calculate request checksums for operations that support or require it. Supported config options are `when_supported` and `when_required`. The default value is `when_supported`. This option is configured in code with `:request_checksum_calculation`, in the shared config file as `request_checksum_calculation`, and in the ENV as `ENV['AWS_REQUEST_CHECKSUM_CALCULATION']`.
131
+
132
+ * Feature - Always validate response checksums for operations that support or require it. Supported config options are `when_supported` and `when_required`. The default value is `when_supported`. This option is configured in code with `:response_checksum_validation`, in the shared config file as `response_checksum_validation`, and in the ENV as `ENV['AWS_RESPONSE_CHECKSUM_VALIDATION']`.
133
+
134
+ * Feature - Support CRC64NVME checksums through the `aws-crt` gem.
135
+
136
+ 3.215.1 (2025-01-14)
137
+ ------------------
138
+
139
+ * Issue - Fixed error when attempting to log an unlinked tempfile.
140
+
141
+ 3.215.0 (2025-01-10)
142
+ ------------------
143
+
144
+ * Feature - Updated Aws::STS::Client with the latest API changes.
145
+
146
+ * Feature - Fixed typos in the descriptions.
147
+
148
+ 3.214.1 (2024-12-28)
149
+ ------------------
150
+
151
+ * Issue - Fix documentation that references a non-existent method.
152
+
153
+ 3.214.0 (2024-11-25)
154
+ ------------------
155
+
156
+ * Feature - Updated configuration values for `defaults_mode`.
157
+
158
+ 3.213.0 (2024-11-14)
159
+ ------------------
160
+
161
+ * Feature - Updated Aws::STS::Client with the latest API changes.
162
+
163
+ * Feature - This release introduces the new API 'AssumeRoot', which returns short-term credentials that you can use to perform privileged tasks.
164
+
165
+ 3.212.0 (2024-11-06)
166
+ ------------------
167
+
168
+ * Feature - Updated Aws::STS::Client with the latest API changes.
169
+
170
+ 3.211.0 (2024-10-21)
171
+ ------------------
172
+
173
+ * Feature - Support functionality for services that migrate from AWS Query to AWS JSON or CBOR.
174
+
175
+ * Issue - Fix RPCv2 protocol to always send an Accept header for CBOR.
176
+
177
+ 3.210.0 (2024-10-18)
178
+ ------------------
179
+
180
+ * Feature - Updated Aws::STS::Client with the latest API changes.
181
+
182
+ * Feature - Updated Aws::SSOOIDC::Client with the latest API changes.
183
+
184
+ * Feature - Updated Aws::SSO::Client with the latest API changes.
185
+
186
+ * Feature - reduce memory usage by not using legacy endpoint data unless required.
187
+
188
+ 3.209.1 (2024-09-25)
189
+ ------------------
190
+
191
+ * Issue - Add all core plugins to autoloads.
192
+
193
+ 3.209.0 (2024-09-24)
194
+ ------------------
195
+
196
+ * Feature - Updated Aws::STS::Client with the latest API changes.
197
+
198
+ * Feature - Updated Aws::SSOOIDC::Client with the latest API changes.
199
+
200
+ * Feature - Updated Aws::SSO::Client with the latest API changes.
201
+
202
+ * Issue - Add service identifiers to GlobalConfig's list of identifiers outside of autoload (#3113).
203
+
204
+ * Issue - Ignore invalid ARNs when trying to parse accountId in assume role credentials.
205
+
206
+ 3.208.0 (2024-09-23)
207
+ ------------------
208
+
209
+ * Feature - Updated Aws::STS::Client with the latest API changes.
210
+
211
+ * Feature - Updated Aws::SSOOIDC::Client with the latest API changes.
212
+
213
+ * Feature - Updated Aws::SSO::Client with the latest API changes.
214
+
215
+ * Feature - Use autoloading at the service level to load service clients and resources.
216
+
217
+ 3.207.0 (2024-09-20)
218
+ ------------------
219
+
220
+ * Feature - Updated Aws::STS::Client with the latest API changes.
221
+
222
+ * Feature - Updated Aws::SSOOIDC::Client with the latest API changes.
223
+
224
+ * Feature - Updated Aws::SSO::Client with the latest API changes.
225
+
226
+ * Feature - Support Account ID credentials using `ENV['AWS_ACCOUNT_ID']`, `aws_account_id` shared config, or the `account_id` Client configuration option.
227
+
228
+ * Feature - Support Account ID endpoint mode using `ENV['AWS_ACCOUNT_ID_ENDPOINT_MODE']`, `aws_account_id_endpoint_mode` shared config, or the `account_id_endpoint_mode` Client configuration option. Defaults to `preferred`, which will use the account id endpoint if available. Set to `disabled` to disable account id endpoints. Set to `required` to require account id endpoint usage; an error is raised if credentials do not have an account id.
229
+
230
+ 3.206.0 (2024-09-17)
231
+ ------------------
232
+
233
+ * Feature - Support `sigv4a` endpoint auth without CRT.
234
+
235
+ 3.205.0 (2024-09-11)
236
+ ------------------
237
+
238
+ * Feature - Updated Aws::STS::Client with the latest API changes.
239
+
240
+ * Feature - Updated Aws::SSOOIDC::Client with the latest API changes.
241
+
242
+ * Feature - Updated Aws::SSO::Client with the latest API changes.
243
+
244
+ * Issue - Additional metrics collection in the User-Agent plugin.
245
+
246
+ 3.204.0 (2024-09-10)
247
+ ------------------
248
+
249
+ * Feature - Updated Aws::STS::Client with the latest API changes.
250
+
251
+ * Feature - Updated Aws::SSOOIDC::Client with the latest API changes.
252
+
253
+ * Feature - Updated Aws::SSO::Client with the latest API changes.
254
+
255
+ * Issue - Add support for `ssl_cert` and `ssl_key` configuration options to support mTLS.
256
+
257
+ 3.203.0 (2024-09-03)
258
+ ------------------
259
+
260
+ * Feature - Updated Aws::STS::Client with the latest API changes.
261
+
262
+ * Feature - Updated Aws::SSOOIDC::Client with the latest API changes.
263
+
264
+ * Feature - Updated Aws::SSO::Client with the latest API changes.
265
+
266
+ * Feature - Add support for Observability which includes a configuration, `telemetry_provider` and an OpenTelemetry-based telemetry provider.
267
+
268
+ 3.202.2 (2024-08-30)
269
+ ------------------
270
+
271
+ * Issue - revert auto-loading of bundled gems.
272
+
273
+ 3.202.1 (2024-08-29)
274
+ ------------------
275
+
276
+ * Issue - require default plugins when loading aws-sdk-core.
277
+
278
+ 3.202.0 (2024-08-27)
279
+ ------------------
280
+
281
+ * Feature - Updated Aws::STS::Client with the latest API changes.
282
+
283
+ * Feature - Updated Aws::SSOOIDC::Client with the latest API changes.
284
+
285
+ * Feature - Updated Aws::SSO::Client with the latest API changes.
286
+
287
+ * Issue - Reduce initial memory usage by auto-loading bundled gems (STS, SSO, SSOOIDC).
288
+
289
+ 3.201.5 (2024-08-15)
290
+ ------------------
291
+
292
+ * Issue - Allow legacy/undocumented `sigv4_signer` configuration to override resolved signer.
293
+
294
+ * Issue - Consider sigv4a supported without crt check.
295
+
296
+ 3.201.4 (2024-08-08)
297
+ ------------------
298
+
299
+ * Issue - Update waiters to handle expected boolean values when matching errors.
300
+
301
+ 3.201.3 (2024-07-23)
302
+ ------------------
303
+
304
+ * Issue - Add `disableNormalizePath` when resolving auth_scheme for S3.
305
+
306
+ 3.201.2 (2024-07-18)
307
+ ------------------
308
+
309
+ * Issue - Allow modeled types to be used for Union inputs.
310
+ * Issue - Ensure that nested sensitive members and sensitive members of lists and maps are filtered.
311
+
312
+ 3.201.1 (2024-07-05)
313
+ ------------------
314
+
315
+ * Issue - Fix `Aws::ProcessCredentials` warning in cases where shared config is used.
316
+
317
+ 3.201.0 (2024-07-02)
318
+ ------------------
319
+
320
+ * Feature - Updated Aws::STS::Client with the latest API changes.
321
+
322
+ * Feature - Updated Aws::SSOOIDC::Client with the latest API changes.
323
+
324
+ * Feature - Updated Aws::SSO::Client with the latest API changes.
325
+
326
+ * Feature - Support `auth` trait to enable SigV4a based services.
327
+
328
+ * Feature - Support configuration for sigv4a signing regions using `ENV['AWS_SIGV4A_SIGNING_REGION_SET']`, `sigv4a_signing_region_set` shared config, or the `sigv4a_signing_region_set` client option.
329
+
330
+ 3.200.0 (2024-06-28)
331
+ ------------------
332
+
333
+ * Feature - Updated Aws::STS::Client with the latest API changes.
334
+
335
+ * Feature - Updated Aws::SSOOIDC::Client with the latest API changes.
336
+
337
+ * Feature - Updated Aws::SSO::Client with the latest API changes.
338
+
339
+ 3.199.0 (2024-06-25)
340
+ ------------------
341
+
342
+ * Feature - Support RpcV2 protocol.
343
+
344
+ * Feature - Add CBOR encoder and decoder.
345
+
346
+ * Issue - Enhance, refactor, and rebase protocols to be consistent. Ensure protocol tests are run for each engine.
347
+
348
+ 3.198.0 (2024-06-24)
349
+ ------------------
350
+
351
+ * Feature - Updated Aws::STS::Client with the latest API changes.
352
+
353
+ * Feature - Updated Aws::SSOOIDC::Client with the latest API changes.
354
+
355
+ * Feature - Updated Aws::SSO::Client with the latest API changes.
356
+
357
+ * Feature - Support `:plugins` option on all Clients or using `Aws.config[:plugins]`.
358
+
4
359
  3.197.2 (2024-06-20)
5
360
  ------------------
6
361
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 3.197.2
1
+ 3.225.1
@@ -128,8 +128,7 @@ module Aws
128
128
  "override" => 3100
129
129
  }
130
130
  },
131
- "in-region" => {
132
- },
131
+ "in-region" => {},
133
132
  "cross-region" => {
134
133
  "connectTimeoutInMillis" => {
135
134
  "override" => 3100
data/lib/aws-defaults.rb CHANGED
@@ -1,3 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative 'aws-defaults/default_configuration'
3
+ module Aws
4
+ autoload :DefaultsModeConfiguration, 'aws-defaults/default_configuration'
5
+ autoload :DefaultsModeConfigResolver, 'aws-defaults/defaults_mode_config_resolver'
6
+ end
@@ -24,9 +24,7 @@ module Aws
24
24
  # arn.resource
25
25
  # # => foo/bar
26
26
  #
27
- # # Note: parser available for parsing resource details
28
- # @see Aws::ARNParser#parse_resource
29
- #
27
+ # @see ARNParser
30
28
  # @see https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-arns
31
29
  class ARN
32
30
 
@@ -50,6 +50,7 @@ module Aws
50
50
  end
51
51
  @client = client_opts[:client] || STS::Client.new(client_opts)
52
52
  @async_refresh = true
53
+ @metrics = ['CREDENTIALS_STS_ASSUME_ROLE']
53
54
  super
54
55
  end
55
56
 
@@ -62,13 +63,20 @@ module Aws
62
63
  private
63
64
 
64
65
  def refresh
65
- c = @client.assume_role(@assume_role_params).credentials
66
+ resp = @client.assume_role(@assume_role_params)
67
+ creds = resp.credentials
66
68
  @credentials = Credentials.new(
67
- c.access_key_id,
68
- c.secret_access_key,
69
- c.session_token
69
+ creds.access_key_id,
70
+ creds.secret_access_key,
71
+ creds.session_token,
72
+ account_id: parse_account_id(resp)
70
73
  )
71
- @expiration = c.expiration
74
+ @expiration = creds.expiration
75
+ end
76
+
77
+ def parse_account_id(resp)
78
+ arn = resp.assumed_role_user&.arn
79
+ ARNParser.parse(arn).account_id if ARNParser.arn?(arn)
72
80
  end
73
81
 
74
82
  class << self
@@ -60,7 +60,8 @@ module Aws
60
60
  # not provided, generate encoded UUID as session name
61
61
  @assume_role_web_identity_params[:role_session_name] = _session_name
62
62
  end
63
- @client = client_opts[:client] || STS::Client.new(client_opts.merge(credentials: false))
63
+ @client = client_opts[:client] || STS::Client.new(client_opts.merge(credentials: nil))
64
+ @metrics = ['CREDENTIALS_STS_ASSUME_ROLE_WEB_ID']
64
65
  super
65
66
  end
66
67
 
@@ -73,14 +74,15 @@ module Aws
73
74
  # read from token file everytime it refreshes
74
75
  @assume_role_web_identity_params[:web_identity_token] = _token_from_file(@token_file)
75
76
 
76
- c = @client.assume_role_with_web_identity(
77
- @assume_role_web_identity_params).credentials
77
+ resp = @client.assume_role_with_web_identity(@assume_role_web_identity_params)
78
+ creds = resp.credentials
78
79
  @credentials = Credentials.new(
79
- c.access_key_id,
80
- c.secret_access_key,
81
- c.session_token
80
+ creds.access_key_id,
81
+ creds.secret_access_key,
82
+ creds.session_token,
83
+ account_id: parse_account_id(resp)
82
84
  )
83
- @expiration = c.expiration
85
+ @expiration = creds.expiration
84
86
  end
85
87
 
86
88
  def _token_from_file(path)
@@ -94,6 +96,11 @@ module Aws
94
96
  Base64.strict_encode64(SecureRandom.uuid)
95
97
  end
96
98
 
99
+ def parse_account_id(resp)
100
+ arn = resp.assumed_role_user&.arn
101
+ ARNParser.parse(arn).account_id if ARNParser.arn?(arn)
102
+ end
103
+
97
104
  class << self
98
105
 
99
106
  # @api private
@@ -22,12 +22,11 @@ module Aws
22
22
  end
23
23
 
24
24
  def attach_eventstream_listeners(context, rules)
25
-
26
25
  context.http_response.on_headers(200) do
27
- protocol = context.config.api.metadata['protocol']
28
- output_handler = context[:output_event_stream_handler] || context[:event_stream_handler]
26
+ output_handler = context[:output_event_stream_handler] ||
27
+ context[:event_stream_handler]
29
28
  context.http_response.body = EventStreamDecoder.new(
30
- protocol,
29
+ context.config.protocol,
31
30
  rules,
32
31
  context.operation.output,
33
32
  context.operation.errors,
@@ -10,7 +10,7 @@ module Aws
10
10
  if eventstream_member = eventstream_input?(context)
11
11
  input_es_handler = context[:input_event_stream_handler]
12
12
  input_es_handler.event_emitter.encoder = EventStreamEncoder.new(
13
- context.config.api.metadata['protocol'],
13
+ context.config.protocol,
14
14
  eventstream_member,
15
15
  context.operation.input,
16
16
  signer_for(context)
@@ -47,6 +47,7 @@ module Aws
47
47
  when 'rest-xml' then Aws::Xml::Parser
48
48
  when 'rest-json' then Aws::Json::Parser
49
49
  when 'json' then Aws::Json::Parser
50
+ when 'smithy-rpc-v2-cbor' then Aws::RpcV2::Parser
50
51
  else raise "unsupported protocol #{protocol} for event stream"
51
52
  end
52
53
  end
@@ -43,9 +43,10 @@ module Aws
43
43
 
44
44
  def serializer_class(protocol)
45
45
  case protocol
46
- when 'rest-xml' then Xml::Builder
47
- when 'rest-json' then Json::Builder
48
- when 'json' then Json::Builder
46
+ when 'rest-xml' then Aws::Xml::Builder
47
+ when 'rest-json' then Aws::Json::Builder
48
+ when 'json' then Aws::Json::Builder
49
+ when 'smithy-rpc-v2-cbor' then Aws::RpcV2::Builder
49
50
  else raise "unsupported protocol #{protocol} for event stream"
50
51
  end
51
52
  end