Skip to content

Commit 56db81c

Browse files
committed
merge from main
2 parents c9c75c1 + 61a6919 commit 56db81c

File tree

30 files changed

+2937
-452
lines changed

30 files changed

+2937
-452
lines changed
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"id": "058bf26f-7f37-439a-9170-d0a2c9c84e3e",
3+
"type": "misc",
4+
"description": "Upgrade to Gradle 9.0.0"
5+
}

.changes/13ef4936-91c8-45ec-9cb3-98f651488130.json

Lines changed: 0 additions & 5 deletions
This file was deleted.

CHANGELOG.md

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,34 @@
11
# Changelog
22

3+
## [1.5.39] - 09/15/2025
4+
5+
### Features
6+
* (**costexplorer**) Added endpoint support for eusc-de-east-1 region.
7+
* (**medicalimaging**) Added support for OpenID Connect (OIDC) custom authorizer
8+
* (**observabilityadmin**) CloudWatch Observability Admin adds the ability to enable telemetry centralization in customers' Organizations. The release introduces new APIs to manage centralization rules, which define settings to replicate telemetry data to a central destination in the customers' Organization.
9+
* (**s3control**) Introduce three new encryption filters: EncryptionType (SSE-S3, SSE-KMS, DSSE-KMS, SSE-C, NOT-SSE), KmsKeyArn (for SSE-KMS and DSSE-KMS), and BucketKeyEnabled (for SSE-KMS).
10+
11+
## [1.5.38] - 09/12/2025
12+
13+
### Features
14+
* (**paymentcryptography**) Add support for certificates to be signed by 3rd party certificate authorities. New API GetCertificateSigningRequest API and support for providing certificates at run-time for tr-34 import/export
15+
16+
### Documentation
17+
* Improve documentation for [`AwsRetryPolicy`](https://docs.aws.amazon.com/sdk-for-kotlin/api/latest/aws-http/aws.sdk.kotlin.runtime.http.retries/-aws-retry-policy/)
18+
19+
## [1.5.37] - 09/11/2025
20+
21+
### Features
22+
* (**amp**) Add Vended Logs APIs for Amazon Prometheus Managed Collector
23+
* (**datazone**) adding IAM principal id to IAM user profile details
24+
* (**ecs**) This release supports hook details for Amazon ECS lifecycle hooks.
25+
* (**emrcontainers**) Added nodeLabel support in container provider to aid hardware isolation support for virtual cluster and security configuration.
26+
* (**evs**) CreateEnvironment API now supports parameters (isHcxPublic & hcxNetworkAclId) for HCX migration via public internet, adding flexibility for migration scenarios. New APIs have been added for associating (AssociateEipToVlan) & disassociating (DisassociateEipFromVlan) Elastic IP (EIP) addresses.
27+
* (**guardduty**) Updated Java SDK implementation of entity set status in GuardDuty API.
28+
* (**medialive**) AWS Elemental MediaLive adds a new feature in MediaPackage output group that enables MediaPackage V2 users to control HLS-related parameters directly in MediaLive. These parameter settings are then reflected in MediaPackage outputs, providing more streamlined control over HLS configurations.
29+
* (**quicksight**) This release adds support for Account level custom permissions, additional Dashboard Options, and Null support for Q&A.
30+
* (**rds**) Adds support for end-to-end IAM authentication in RDS Proxy for MySQL, MariaDB, and PostgreSQL engines.
31+
332
## [1.5.36] - 09/10/2025
433

534
### Features

build.gradle.kts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,18 @@ buildscript {
1414
// Add our custom gradle build logic to buildscript classpath
1515
classpath(libs.aws.kotlin.repo.tools.build.support)
1616
}
17+
18+
configurations.classpath {
19+
resolutionStrategy {
20+
/*
21+
Version bumping the SDK to 1.5.x in repo tools broke our buildscript classpath:
22+
java.lang.NoSuchMethodError: 'void kotlinx.coroutines.CancellableContinuation.resume(java.lang.Object, kotlin.jvm.functions.Function3)
23+
24+
FIXME: Figure out what broke our buildscipt classpath, this is a temporary fix
25+
*/
26+
force("com.squareup.okhttp3:okhttp-coroutines:5.0.0-alpha.14")
27+
}
28+
}
1729
}
1830

1931
plugins {

buildSrc/src/main/kotlin/dokka-convention.gradle.kts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -70,8 +70,7 @@ dokka {
7070
dokkaSourceSets.configureEach {
7171
externalDocumentationLinks {
7272
create("smithy-kotlin") {
73-
val smithyKotlinRuntimeVersion = versionCatalogs.named("libs").findVersion("smithy-kotlin-runtime-version").get()
74-
url("https://sdk.amazonaws.com/kotlin/api/smithy-kotlin/api/$smithyKotlinRuntimeVersion")
73+
url("https://docs.aws.amazon.com/smithy-kotlin/api/latest")
7574
}
7675
}
7776
}

codegen/aws-sdk-codegen/src/main/resources/aws/sdk/kotlin/codegen/endpoints.json

Lines changed: 9 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -20226,6 +20226,7 @@
2022620226
},
2022720227
"redshift-serverless" : {
2022820228
"endpoints" : {
20229+
"af-south-1" : { },
2022920230
"ap-east-1" : { },
2023020231
"ap-northeast-1" : { },
2023120232
"ap-northeast-2" : { },
@@ -20244,6 +20245,7 @@
2024420245
"eu-central-1" : { },
2024520246
"eu-central-2" : { },
2024620247
"eu-north-1" : { },
20248+
"eu-south-1" : { },
2024720249
"eu-south-2" : { },
2024820250
"eu-west-1" : { },
2024920251
"eu-west-2" : { },
@@ -24129,23 +24131,6 @@
2412924131
"us-west-2" : { }
2413024132
}
2413124133
},
24132-
"sms" : {
24133-
"endpoints" : {
24134-
"fips-us-west-2" : {
24135-
"credentialScope" : {
24136-
"region" : "us-west-2"
24137-
},
24138-
"deprecated" : true,
24139-
"hostname" : "sms-fips.us-west-2.amazonaws.com"
24140-
},
24141-
"us-west-2" : {
24142-
"variants" : [ {
24143-
"hostname" : "sms-fips.us-west-2.amazonaws.com",
24144-
"tags" : [ "fips" ]
24145-
} ]
24146-
}
24147-
}
24148-
},
2414924134
"sms-voice" : {
2415024135
"endpoints" : {
2415124136
"af-south-1" : {
@@ -27375,6 +27360,7 @@
2737527360
"endpoints" : {
2737627361
"af-south-1" : { },
2737727362
"ap-east-1" : { },
27363+
"ap-east-2" : { },
2737827364
"ap-northeast-1" : { },
2737927365
"ap-northeast-2" : { },
2738027366
"ap-northeast-3" : { },
@@ -30775,11 +30761,6 @@
3077530761
}
3077630762
}
3077730763
},
30778-
"sms" : {
30779-
"endpoints" : {
30780-
"cn-north-1" : { }
30781-
}
30782-
},
3078330764
"snowball" : {
3078430765
"endpoints" : {
3078530766
"cn-north-1" : {
@@ -31653,6 +31634,12 @@
3165331634
}
3165431635
}
3165531636
},
31637+
"aps" : {
31638+
"endpoints" : {
31639+
"us-gov-east-1" : { },
31640+
"us-gov-west-1" : { }
31641+
}
31642+
},
3165631643
"arc-zonal-shift" : {
3165731644
"endpoints" : {
3165831645
"us-gov-east-1" : { },
@@ -35863,23 +35850,6 @@
3586335850
}
3586435851
}
3586535852
},
35866-
"sms" : {
35867-
"endpoints" : {
35868-
"fips-us-gov-west-1" : {
35869-
"credentialScope" : {
35870-
"region" : "us-gov-west-1"
35871-
},
35872-
"deprecated" : true,
35873-
"hostname" : "sms-fips.us-gov-west-1.amazonaws.com"
35874-
},
35875-
"us-gov-west-1" : {
35876-
"variants" : [ {
35877-
"hostname" : "sms-fips.us-gov-west-1.amazonaws.com",
35878-
"tags" : [ "fips" ]
35879-
} ]
35880-
}
35881-
}
35882-
},
3588335853
"sms-voice" : {
3588435854
"endpoints" : {
3588535855
"fips-us-gov-east-1" : {

codegen/protocol-tests/build.gradle.kts

Lines changed: 20 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -73,63 +73,38 @@ dependencies {
7373
codegen(libs.smithy.aws.protocol.tests)
7474
}
7575

76-
abstract class ProtocolTestTask @Inject constructor(private val project: Project) : DefaultTask() {
77-
/**
78-
* The projection
79-
*/
80-
@get:Input
81-
abstract val projectionName: Property<String>
82-
83-
/**
84-
* The projection root directory
85-
*/
86-
@get:Input
87-
abstract val projectionRootDirectory: Property<String>
88-
89-
@TaskAction
90-
fun runTests() {
91-
val projectionRootDir = project.file(projectionRootDirectory.get())
92-
println("[$projectionName] buildDir: $projectionRootDir")
93-
if (!projectionRootDir.exists()) {
94-
throw GradleException("$projectionRootDir does not exist")
95-
}
96-
val wrapper = if (System.getProperty("os.name").lowercase().contains("windows")) "gradlew.bat" else "gradlew"
97-
val gradlew = project.rootProject.file(wrapper).absolutePath
98-
99-
// NOTE - this still requires us to publish to maven local.
100-
project.exec {
101-
workingDir = projectionRootDir
102-
executable = gradlew
103-
args = listOf("test")
104-
}
105-
}
106-
}
107-
10876
smithyBuild.projections.forEach {
10977
val protocolName = it.name
11078

111-
tasks.register<ProtocolTestTask>("testProtocol-$protocolName") {
112-
dependsOn(tasks.generateSmithyProjections)
113-
group = "Verification"
114-
projectionName.set(it.name)
115-
projectionRootDirectory.set(smithyBuild.smithyKotlinProjectionPath(it.name).map { it.toString() })
116-
}
79+
val dirProvider = smithyBuild
80+
.smithyKotlinProjectionPath(protocolName)
81+
.map { file(it.toString()) }
11782

118-
// FIXME This is a hack to work around how protocol tests aren't in the actual service model and thus codegen
119-
// separately from service customizations.
12083
val copyStaticFiles = tasks.register<Copy>("copyStaticFiles-$protocolName") {
12184
group = "codegen"
12285
from(rootProject.projectDir.resolve("services/$protocolName/common/src"))
123-
into(smithyBuild.smithyKotlinProjectionSrcDir(it.name))
86+
into(smithyBuild.smithyKotlinProjectionSrcDir(protocolName))
12487
}
12588

126-
tasks.generateSmithyProjections.configure {
127-
finalizedBy(copyStaticFiles)
89+
tasks.register<Exec>("testProtocol-$protocolName") {
90+
group = "Verification"
91+
dependsOn(tasks.generateSmithyProjections, copyStaticFiles)
92+
93+
doFirst {
94+
val dir = dirProvider.get()
95+
require(dir.exists()) { "$dir does not exist" }
96+
97+
val wrapper = if (System.getProperty("os.name").lowercase().contains("windows")) "gradlew.bat" else "gradlew"
98+
val gradlew = rootProject.layout.projectDirectory.file(wrapper).asFile.absolutePath
99+
100+
workingDir = dir
101+
executable = gradlew
102+
args = listOf("test")
103+
}
128104
}
129105
}
130106

131107
tasks.register("testAllProtocols") {
132108
group = "Verification"
133-
val allTests = tasks.withType<ProtocolTestTask>()
134-
dependsOn(allTests)
109+
dependsOn(tasks.matching { it.name.startsWith("testProtocol-") })
135110
}

0 commit comments

Comments
 (0)