Skip to content

Commit 9112d7e

Browse files
Merge pull request #3429 from aws/staging/353b4dad-d2e4-461c-8534-71eddf014921
Pull request: release <- staging/353b4dad-d2e4-461c-8534-71eddf014921
2 parents 2a972bc + 7acdd97 commit 9112d7e

File tree

497 files changed

+3009
-1403
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

497 files changed

+3009
-1403
lines changed

.changes/2.29.11.json

+48
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
{
2+
"version": "2.29.11",
3+
"date": "2024-11-12",
4+
"entries": [
5+
{
6+
"type": "feature",
7+
"category": "AWS CodeBuild",
8+
"contributor": "",
9+
"description": "AWS CodeBuild now supports non-containerized Linux and Windows builds on Reserved Capacity."
10+
},
11+
{
12+
"type": "feature",
13+
"category": "AWS Control Tower",
14+
"contributor": "",
15+
"description": "Added ResetEnabledControl API."
16+
},
17+
{
18+
"type": "feature",
19+
"category": "AWS Fault Injection Simulator",
20+
"contributor": "",
21+
"description": "This release adds support for generating experiment reports with the experiment report configuration"
22+
},
23+
{
24+
"type": "feature",
25+
"category": "Amazon GameLift",
26+
"contributor": "",
27+
"description": "Amazon GameLift releases container fleets support for general availability. Deploy Linux-based containerized game server software for hosting on Amazon GameLift."
28+
},
29+
{
30+
"type": "feature",
31+
"category": "Amazon Relational Database Service",
32+
"contributor": "",
33+
"description": "Updates Amazon RDS documentation for Amazon RDS Extended Support for Amazon Aurora MySQL."
34+
},
35+
{
36+
"type": "feature",
37+
"category": "Payment Cryptography Control Plane",
38+
"contributor": "",
39+
"description": "Updated ListAliases API with KeyArn filter."
40+
},
41+
{
42+
"type": "feature",
43+
"category": "AWS SDK for Java v2",
44+
"contributor": "",
45+
"description": "Updated endpoint and partition metadata."
46+
}
47+
]
48+
}

CHANGELOG.md

+29
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,33 @@
11
#### 👋 _Looking for changelogs for older versions? You can find them in the [changelogs](./changelogs) directory._
2+
# __2.29.11__ __2024-11-12__
3+
## __AWS CodeBuild__
4+
- ### Features
5+
- AWS CodeBuild now supports non-containerized Linux and Windows builds on Reserved Capacity.
6+
7+
## __AWS Control Tower__
8+
- ### Features
9+
- Added ResetEnabledControl API.
10+
11+
## __AWS Fault Injection Simulator__
12+
- ### Features
13+
- This release adds support for generating experiment reports with the experiment report configuration
14+
15+
## __AWS SDK for Java v2__
16+
- ### Features
17+
- Updated endpoint and partition metadata.
18+
19+
## __Amazon GameLift__
20+
- ### Features
21+
- Amazon GameLift releases container fleets support for general availability. Deploy Linux-based containerized game server software for hosting on Amazon GameLift.
22+
23+
## __Amazon Relational Database Service__
24+
- ### Features
25+
- Updates Amazon RDS documentation for Amazon RDS Extended Support for Amazon Aurora MySQL.
26+
27+
## __Payment Cryptography Control Plane__
28+
- ### Features
29+
- Updated ListAliases API with KeyArn filter.
30+
231
# __2.29.10__ __2024-11-11__
332
## __AWS Lambda__
433
- ### Features

README.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ To automatically manage module versions (currently all modules have the same ver
5151
<dependency>
5252
<groupId>software.amazon.awssdk</groupId>
5353
<artifactId>bom</artifactId>
54-
<version>2.29.10</version>
54+
<version>2.29.11</version>
5555
<type>pom</type>
5656
<scope>import</scope>
5757
</dependency>
@@ -85,12 +85,12 @@ Alternatively you can add dependencies for the specific services you use only:
8585
<dependency>
8686
<groupId>software.amazon.awssdk</groupId>
8787
<artifactId>ec2</artifactId>
88-
<version>2.29.10</version>
88+
<version>2.29.11</version>
8989
</dependency>
9090
<dependency>
9191
<groupId>software.amazon.awssdk</groupId>
9292
<artifactId>s3</artifactId>
93-
<version>2.29.10</version>
93+
<version>2.29.11</version>
9494
</dependency>
9595
```
9696

@@ -102,7 +102,7 @@ You can import the whole SDK into your project (includes *ALL* services). Please
102102
<dependency>
103103
<groupId>software.amazon.awssdk</groupId>
104104
<artifactId>aws-sdk-java</artifactId>
105-
<version>2.29.10</version>
105+
<version>2.29.11</version>
106106
</dependency>
107107
```
108108

archetypes/archetype-app-quickstart/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
<parent>
2121
<artifactId>archetypes</artifactId>
2222
<groupId>software.amazon.awssdk</groupId>
23-
<version>2.29.10</version>
23+
<version>2.29.11</version>
2424
</parent>
2525
<modelVersion>4.0.0</modelVersion>
2626

archetypes/archetype-lambda/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
<parent>
2121
<artifactId>archetypes</artifactId>
2222
<groupId>software.amazon.awssdk</groupId>
23-
<version>2.29.10</version>
23+
<version>2.29.11</version>
2424
</parent>
2525
<modelVersion>4.0.0</modelVersion>
2626
<artifactId>archetype-lambda</artifactId>

archetypes/archetype-tools/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
<parent>
2121
<artifactId>archetypes</artifactId>
2222
<groupId>software.amazon.awssdk</groupId>
23-
<version>2.29.10</version>
23+
<version>2.29.11</version>
2424
</parent>
2525
<modelVersion>4.0.0</modelVersion>
2626

archetypes/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
<parent>
2121
<artifactId>aws-sdk-java-pom</artifactId>
2222
<groupId>software.amazon.awssdk</groupId>
23-
<version>2.29.10</version>
23+
<version>2.29.11</version>
2424
</parent>
2525
<modelVersion>4.0.0</modelVersion>
2626
<artifactId>archetypes</artifactId>

aws-sdk-java/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
<parent>
1818
<groupId>software.amazon.awssdk</groupId>
1919
<artifactId>aws-sdk-java-pom</artifactId>
20-
<version>2.29.10</version>
20+
<version>2.29.11</version>
2121
<relativePath>../pom.xml</relativePath>
2222
</parent>
2323
<artifactId>aws-sdk-java</artifactId>

bom-internal/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
<parent>
2121
<artifactId>aws-sdk-java-pom</artifactId>
2222
<groupId>software.amazon.awssdk</groupId>
23-
<version>2.29.10</version>
23+
<version>2.29.11</version>
2424
</parent>
2525
<modelVersion>4.0.0</modelVersion>
2626

bom/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
<parent>
1818
<groupId>software.amazon.awssdk</groupId>
1919
<artifactId>aws-sdk-java-pom</artifactId>
20-
<version>2.29.10</version>
20+
<version>2.29.11</version>
2121
<relativePath>../pom.xml</relativePath>
2222
</parent>
2323
<artifactId>bom</artifactId>

bundle-logging-bridge/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
<parent>
2222
<groupId>software.amazon.awssdk</groupId>
2323
<artifactId>aws-sdk-java-pom</artifactId>
24-
<version>2.29.10</version>
24+
<version>2.29.11</version>
2525
</parent>
2626
<artifactId>bundle-logging-bridge</artifactId>
2727
<packaging>jar</packaging>

bundle-sdk/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
<parent>
2222
<groupId>software.amazon.awssdk</groupId>
2323
<artifactId>aws-sdk-java-pom</artifactId>
24-
<version>2.29.10</version>
24+
<version>2.29.11</version>
2525
</parent>
2626
<artifactId>bundle-sdk</artifactId>
2727
<packaging>jar</packaging>

bundle/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
<parent>
2222
<groupId>software.amazon.awssdk</groupId>
2323
<artifactId>aws-sdk-java-pom</artifactId>
24-
<version>2.29.10</version>
24+
<version>2.29.11</version>
2525
</parent>
2626
<artifactId>bundle</artifactId>
2727
<packaging>jar</packaging>

codegen-lite-maven-plugin/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
<parent>
2323
<groupId>software.amazon.awssdk</groupId>
2424
<artifactId>aws-sdk-java-pom</artifactId>
25-
<version>2.29.10</version>
25+
<version>2.29.11</version>
2626
<relativePath>../pom.xml</relativePath>
2727
</parent>
2828
<artifactId>codegen-lite-maven-plugin</artifactId>

codegen-lite/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
<parent>
2222
<groupId>software.amazon.awssdk</groupId>
2323
<artifactId>aws-sdk-java-pom</artifactId>
24-
<version>2.29.10</version>
24+
<version>2.29.11</version>
2525
</parent>
2626
<artifactId>codegen-lite</artifactId>
2727
<name>AWS Java SDK :: Code Generator Lite</name>

codegen-maven-plugin/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
<parent>
2323
<groupId>software.amazon.awssdk</groupId>
2424
<artifactId>aws-sdk-java-pom</artifactId>
25-
<version>2.29.10</version>
25+
<version>2.29.11</version>
2626
<relativePath>../pom.xml</relativePath>
2727
</parent>
2828
<artifactId>codegen-maven-plugin</artifactId>

codegen/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
<parent>
2222
<groupId>software.amazon.awssdk</groupId>
2323
<artifactId>aws-sdk-java-pom</artifactId>
24-
<version>2.29.10</version>
24+
<version>2.29.11</version>
2525
</parent>
2626
<artifactId>codegen</artifactId>
2727
<name>AWS Java SDK :: Code Generator</name>

codegen/src/main/java/software/amazon/awssdk/codegen/poet/rules/EndpointParamsKnowledgeIndex.java

+49-3
Original file line numberDiff line numberDiff line change
@@ -23,14 +23,17 @@
2323
import com.squareup.javapoet.MethodSpec;
2424
import com.squareup.javapoet.ParameterizedTypeName;
2525
import com.squareup.javapoet.TypeName;
26+
import com.squareup.javapoet.TypeSpec;
2627
import com.squareup.javapoet.TypeVariableName;
2728
import java.util.EnumMap;
2829
import java.util.Map;
2930
import java.util.Optional;
3031
import javax.lang.model.element.Modifier;
32+
import software.amazon.awssdk.awscore.AwsExecutionAttribute;
3133
import software.amazon.awssdk.awscore.client.config.AwsClientOption;
3234
import software.amazon.awssdk.awscore.endpoints.AccountIdEndpointMode;
3335
import software.amazon.awssdk.awscore.endpoints.AccountIdEndpointModeResolver;
36+
import software.amazon.awssdk.awscore.internal.useragent.BusinessMetricsUtils;
3437
import software.amazon.awssdk.codegen.internal.Utils;
3538
import software.amazon.awssdk.codegen.model.intermediate.IntermediateModel;
3639
import software.amazon.awssdk.codegen.model.internal.LocalParameter;
@@ -39,6 +42,9 @@
3942
import software.amazon.awssdk.core.SelectedAuthScheme;
4043
import software.amazon.awssdk.core.client.config.SdkClientConfiguration;
4144
import software.amazon.awssdk.core.client.config.SdkClientOption;
45+
import software.amazon.awssdk.core.interceptor.ExecutionAttributes;
46+
import software.amazon.awssdk.core.interceptor.SdkInternalExecutionAttribute;
47+
import software.amazon.awssdk.core.useragent.BusinessMetricFeatureId;
4248
import software.amazon.awssdk.identity.spi.AwsCredentialsIdentity;
4349
import software.amazon.awssdk.identity.spi.Identity;
4450
import software.amazon.awssdk.utils.CompletableFutureUtils;
@@ -163,11 +169,51 @@ private Map<BuiltInParameter, LocalParameter> builtInsForClientBuilder(Map<Strin
163169
return actualParams;
164170
}
165171

166-
public Optional<MethodSpec> accountIdFromIdentityMethod() {
172+
public void addAccountIdMethodsIfPresent(TypeSpec.Builder b) {
167173
if (!hasAccountIdEndpointModeBuiltIn()) {
168-
return Optional.empty();
174+
return;
169175
}
170176

177+
b.addMethod(resolveAndRecordAccountIdFromIdentityMethod());
178+
b.addMethod(accountIdFromIdentityMethod());
179+
b.addMethod(recordAccountIdEndpointModeMethod());
180+
}
181+
182+
public MethodSpec recordAccountIdEndpointModeMethod() {
183+
MethodSpec.Builder builder = MethodSpec.methodBuilder("recordAccountIdEndpointMode")
184+
.addModifiers(PRIVATE, STATIC)
185+
.addParameter(ExecutionAttributes.class, "executionAttributes")
186+
.returns(String.class);
187+
builder.addStatement("$T mode = executionAttributes.getAttribute($T.AWS_AUTH_ACCOUNT_ID_ENDPOINT_MODE)",
188+
AccountIdEndpointMode.class, AwsExecutionAttribute.class);
189+
190+
builder.addStatement("$T.resolveAccountIdEndpointModeMetric(mode)"
191+
+ ".ifPresent(m -> executionAttributes.getAttribute($T.BUSINESS_METRICS).addMetric(m))",
192+
BusinessMetricsUtils.class, SdkInternalExecutionAttribute.class);
193+
194+
builder.addStatement("return mode.name().toLowerCase()");
195+
196+
return builder.build();
197+
}
198+
199+
public MethodSpec resolveAndRecordAccountIdFromIdentityMethod() {
200+
MethodSpec.Builder builder = MethodSpec.methodBuilder("resolveAndRecordAccountIdFromIdentity")
201+
.addModifiers(PRIVATE, STATIC)
202+
.addParameter(ExecutionAttributes.class, "executionAttributes")
203+
.returns(String.class);
204+
builder.addStatement("$T accountId = accountIdFromIdentity(executionAttributes.getAttribute($T.SELECTED_AUTH_SCHEME))",
205+
String.class, SdkInternalExecutionAttribute.class);
206+
207+
builder.addStatement("executionAttributes.getAttribute($T.BUSINESS_METRICS).addMetric($T.RESOLVED_ACCOUNT_ID.value())",
208+
SdkInternalExecutionAttribute.class, BusinessMetricFeatureId.class);
209+
210+
builder.addStatement("return accountId");
211+
212+
return builder.build();
213+
}
214+
215+
216+
public MethodSpec accountIdFromIdentityMethod() {
171217
ParameterizedTypeName paramType = ParameterizedTypeName.get(ClassName.get(SelectedAuthScheme.class),
172218
TypeVariableName.get("T"));
173219

@@ -184,6 +230,6 @@ public Optional<MethodSpec> accountIdFromIdentityMethod() {
184230
builder.addStatement("accountId = (($T) identity).accountId().orElse(null)", AwsCredentialsIdentity.class);
185231
builder.endControlFlow();
186232
builder.addStatement("return accountId");
187-
return Optional.of(builder.build());
233+
return builder.build();
188234
}
189235
}

codegen/src/main/java/software/amazon/awssdk/codegen/poet/rules/EndpointResolverInterceptorSpec.java

+3-6
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,7 @@ public TypeSpec poetSpec() {
155155
b.addMethod(signerProviderMethod());
156156
}
157157

158-
endpointParamsKnowledgeIndex.accountIdFromIdentityMethod().ifPresent(b::addMethod);
158+
endpointParamsKnowledgeIndex.addAccountIdMethodsIfPresent(b);
159159
return b.build();
160160
}
161161

@@ -303,13 +303,10 @@ private MethodSpec ruleParams() {
303303
b.addStatement(endpointProviderUtilsSetter("endpointBuiltIn", setter));
304304
break;
305305
case AWS_AUTH_ACCOUNT_ID:
306-
b.addStatement("builder.$N(accountIdFromIdentity(executionAttributes.getAttribute($T.SELECTED_AUTH_SCHEME)))",
307-
setter, SdkInternalExecutionAttribute.class);
306+
b.addStatement("builder.$N(resolveAndRecordAccountIdFromIdentity(executionAttributes))", setter);
308307
break;
309308
case AWS_AUTH_ACCOUNT_ID_ENDPOINT_MODE:
310-
b.addStatement("builder.$N(executionAttributes.getAttribute($T.$N).name().toLowerCase())",
311-
setter, AwsExecutionAttribute.class,
312-
model.getNamingStrategy().getEnumValueName(m.getBuiltInEnum().name()));
309+
b.addStatement("builder.$N(recordAccountIdEndpointMode(executionAttributes))", setter);
313310
break;
314311
case AWS_S3_USE_GLOBAL_ENDPOINT:
315312
b.addStatement("builder.$N(executionAttributes.getAttribute($T.$N))",

codegen/src/main/resources/software/amazon/awssdk/codegen/rules/AwsEndpointProviderUtils.java.resource

+3
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import software.amazon.awssdk.core.exception.SdkClientException;
1010
import software.amazon.awssdk.core.interceptor.ExecutionAttributes;
1111
import software.amazon.awssdk.core.interceptor.SdkExecutionAttribute;
1212
import software.amazon.awssdk.core.interceptor.SdkInternalExecutionAttribute;
13+
import software.amazon.awssdk.core.useragent.BusinessMetricFeatureId;
1314
import software.amazon.awssdk.endpoints.Endpoint;
1415
import software.amazon.awssdk.http.SdkHttpRequest;
1516
import software.amazon.awssdk.regions.Region;
@@ -43,6 +44,8 @@ public final class AwsEndpointProviderUtils {
4344
*/
4445
public static String endpointBuiltIn(ExecutionAttributes executionAttributes) {
4546
if (endpointIsOverridden(executionAttributes)) {
47+
executionAttributes.getOptionalAttribute(SdkInternalExecutionAttribute.BUSINESS_METRICS).ifPresent(
48+
metric -> metric.addMetric(BusinessMetricFeatureId.ENDPOINT_OVERRIDE.value()));
4649
return invokeSafely(() -> {
4750
URI endpointOverride = executionAttributes.getAttribute(SdkInternalExecutionAttribute.CLIENT_ENDPOINT_PROVIDER)
4851
.clientEndpoint();

0 commit comments

Comments
 (0)