Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 0 additions & 8 deletions .changes/aa10152c-0040-46b3-8551-ed63aca0c6ee.json

This file was deleted.

6 changes: 5 additions & 1 deletion .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,11 @@ jobs:
uses: ./.github/actions/setup-build
- name: Build and Test ${{ env.PACKAGE_NAME }}
run: |
./gradlew build
if [ "${{ matrix.os }}" = "macos-13" ]; then
./gradlew build -PiosSimulatorDevice="iPhone 15"
else
./gradlew build
fi
- name: Save Test Reports
if: failure()
uses: actions/upload-artifact@v4
Expand Down
12 changes: 12 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,17 @@
# Changelog

## [0.10.2] - 07/24/2025

## [0.10.1] - 07/21/2025

## [0.10.0] - 07/15/2025

### Features
* Upgrade to Kotlin 2.2.0

### Fixes
* [#1295](https://github.com/smithy-lang/smithy-kotlin/issues/1295) Enable building this project on JDK21 by setting -Xjdk-release flag

## [0.9.2] - 06/18/2025

### Fixes
Expand Down
23 changes: 9 additions & 14 deletions aws-crt-kotlin/api/aws-crt-kotlin.api
Original file line number Diff line number Diff line change
Expand Up @@ -406,10 +406,10 @@ public final class aws/sdk/kotlin/crt/auth/signing/AwsSigningResult {
public abstract interface class aws/sdk/kotlin/crt/http/Headers {
public static final field Companion Laws/sdk/kotlin/crt/http/Headers$Companion;
public abstract fun contains (Ljava/lang/String;)Z
public abstract fun contains (Ljava/lang/String;Ljava/lang/String;)Z
public fun contains (Ljava/lang/String;Ljava/lang/String;)Z
public abstract fun entries ()Ljava/util/Set;
public abstract fun forEach (Lkotlin/jvm/functions/Function2;)V
public abstract fun get (Ljava/lang/String;)Ljava/lang/String;
public fun forEach (Lkotlin/jvm/functions/Function2;)V
public fun get (Ljava/lang/String;)Ljava/lang/String;
public abstract fun getAll (Ljava/lang/String;)Ljava/util/List;
public abstract fun isEmpty ()Z
public abstract fun names ()Ljava/util/Set;
Expand Down Expand Up @@ -622,8 +622,8 @@ public final class aws/sdk/kotlin/crt/http/HttpRequest$Companion {

public abstract interface class aws/sdk/kotlin/crt/http/HttpRequestBodyStream {
public static final field Companion Laws/sdk/kotlin/crt/http/HttpRequestBodyStream$Companion;
public abstract fun resetPosition ()Z
public abstract fun sendRequestBody (Laws/sdk/kotlin/crt/io/MutableBuffer;)Z
public fun resetPosition ()Z
public fun sendRequestBody (Laws/sdk/kotlin/crt/io/MutableBuffer;)Z
}

public final class aws/sdk/kotlin/crt/http/HttpRequestBodyStream$Companion {
Expand Down Expand Up @@ -686,11 +686,11 @@ public final class aws/sdk/kotlin/crt/http/HttpStreamMetricsJVMKt {
}

public abstract interface class aws/sdk/kotlin/crt/http/HttpStreamResponseHandler {
public abstract fun onMetrics (Laws/sdk/kotlin/crt/http/HttpStream;Laws/sdk/kotlin/crt/http/HttpStreamMetrics;)V
public abstract fun onResponseBody (Laws/sdk/kotlin/crt/http/HttpStream;Laws/sdk/kotlin/crt/io/Buffer;)I
public fun onMetrics (Laws/sdk/kotlin/crt/http/HttpStream;Laws/sdk/kotlin/crt/http/HttpStreamMetrics;)V
public fun onResponseBody (Laws/sdk/kotlin/crt/http/HttpStream;Laws/sdk/kotlin/crt/io/Buffer;)I
public abstract fun onResponseComplete (Laws/sdk/kotlin/crt/http/HttpStream;I)V
public abstract fun onResponseHeaders (Laws/sdk/kotlin/crt/http/HttpStream;IILjava/util/List;)V
public abstract fun onResponseHeadersDone (Laws/sdk/kotlin/crt/http/HttpStream;I)V
public fun onResponseHeadersDone (Laws/sdk/kotlin/crt/http/HttpStream;I)V
}

public final class aws/sdk/kotlin/crt/http/HttpStreamResponseHandler$DefaultImpls {
Expand All @@ -702,6 +702,7 @@ public final class aws/sdk/kotlin/crt/http/HttpStreamResponseHandler$DefaultImpl
public abstract interface class aws/sdk/kotlin/crt/io/Buffer {
public static final field Companion Laws/sdk/kotlin/crt/io/Buffer$Companion;
public abstract fun copyTo ([BI)I
public static synthetic fun copyTo$default (Laws/sdk/kotlin/crt/io/Buffer;[BIILjava/lang/Object;)I
public abstract fun getLen ()I
public abstract fun readAll ()[B
}
Expand Down Expand Up @@ -818,14 +819,8 @@ public final class aws/sdk/kotlin/crt/io/SocketType : java/lang/Enum {
}

public final class aws/sdk/kotlin/crt/io/TlsCipherPreference : java/lang/Enum {
public static final field KMS_PQ_SIKE_TLS_V1_0_2019_11 Laws/sdk/kotlin/crt/io/TlsCipherPreference;
public static final field KMS_PQ_SIKE_TLS_V1_0_2020_02 Laws/sdk/kotlin/crt/io/TlsCipherPreference;
public static final field KMS_PQ_TLS_V1_0_2019_06 Laws/sdk/kotlin/crt/io/TlsCipherPreference;
public static final field KMS_PQ_TLS_V1_0_2020_02 Laws/sdk/kotlin/crt/io/TlsCipherPreference;
public static final field KMS_PQ_TLS_V1_0_2020_07 Laws/sdk/kotlin/crt/io/TlsCipherPreference;
public static final field PQ_DEFAULT Laws/sdk/kotlin/crt/io/TlsCipherPreference;
public static final field PQ_TLSV1_2_2024_10 Laws/sdk/kotlin/crt/io/TlsCipherPreference;
public static final field PQ_TLS_V1_0_2021_05 Laws/sdk/kotlin/crt/io/TlsCipherPreference;
public static final field SYSTEM_DEFAULT Laws/sdk/kotlin/crt/io/TlsCipherPreference;
public static fun getEntries ()Lkotlin/enums/EnumEntries;
public final fun getValue ()I
Expand Down
2 changes: 1 addition & 1 deletion aws-crt-kotlin/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ plugins {
}

val sdkVersion: String by project
group = properties["publishGroupName"] ?: error("missing publishGroupName")
group = "aws.sdk.kotlin.crt"
version = sdkVersion
description = "Kotlin Multiplatform bindings for AWS Common Runtime"

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,42 +18,6 @@ public enum class TlsCipherPreference(public val value: Int) {
*/
SYSTEM_DEFAULT(0),

/**
* This cipher preference is no longer supported. Use PQ_TLSV1_2_2024_10 instead.
*/
@Deprecated("This cipher preference is no longer supported. Use PQ_TLSV1_2_2024_10 instead.")
KMS_PQ_TLS_V1_0_2019_06(1),

/**
* This cipher preference is no longer supported. Use PQ_TLSV1_2_2024_10 instead.
*/
@Deprecated("This cipher preference is no longer supported. Use PQ_TLSV1_2_2024_10 instead.")
KMS_PQ_SIKE_TLS_V1_0_2019_11(2),

/**
* This cipher preference is no longer supported. Use PQ_TLSV1_2_2024_10 instead.
*/
@Deprecated("This cipher preference is no longer supported. Use PQ_TLSV1_2_2024_10 instead.")
KMS_PQ_TLS_V1_0_2020_02(3),

/**
* This cipher preference is no longer supported. Use PQ_TLSV1_2_2024_10 instead.
*/
@Deprecated("This cipher preference is no longer supported. Use PQ_TLSV1_2_2024_10 instead.")
KMS_PQ_SIKE_TLS_V1_0_2020_02(4),

/**
* This cipher preference is no longer supported. Use PQ_TLSV1_2_2024_10 instead.
*/
@Deprecated("This cipher preference is no longer supported. Use PQ_TLSV1_2_2024_10 instead.")
KMS_PQ_TLS_V1_0_2020_07(5),

/**
* This cipher preference is no longer supported. Use PQ_TLSV1_2_2024_10 instead.
*/
@Deprecated("This cipher preference is no longer supported. Use PQ_TLSV1_2_2024_10 instead.")
PQ_TLS_V1_0_2021_05(6),

/**
* This TLS cipher preference list contains post-quantum key exchange algorithms that have been standardized by
* NIST. PQ algorithms in this preference list will be used in hybrid mode, and always combined with a classical
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,15 +27,8 @@ internal actual fun isCipherSupported(cipher: TlsCipherPreference): Boolean =

internal actual fun isAlpnSupported(): Boolean = TlsContextOptionsJni.isAlpnSupported()

@Suppress("DEPRECATION")
private fun TlsCipherPreference.into(): TlsCipherPreferenceJni = when (this) {
TlsCipherPreference.SYSTEM_DEFAULT -> TlsCipherPreferenceJni.TLS_CIPHER_SYSTEM_DEFAULT
TlsCipherPreference.KMS_PQ_TLS_V1_0_2019_06 -> TlsCipherPreferenceJni.TLS_CIPHER_KMS_PQ_TLSv1_0_2019_06
TlsCipherPreference.KMS_PQ_SIKE_TLS_V1_0_2019_11 -> TlsCipherPreferenceJni.TLS_CIPHER_PREF_KMS_PQ_SIKE_TLSv1_0_2019_11
TlsCipherPreference.KMS_PQ_TLS_V1_0_2020_02 -> TlsCipherPreferenceJni.TLS_CIPHER_PREF_KMS_PQ_TLSv1_0_2020_02
TlsCipherPreference.KMS_PQ_SIKE_TLS_V1_0_2020_02 -> TlsCipherPreferenceJni.TLS_CIPHER_PREF_KMS_PQ_SIKE_TLSv1_0_2020_02
TlsCipherPreference.KMS_PQ_TLS_V1_0_2020_07 -> TlsCipherPreferenceJni.TLS_CIPHER_PREF_KMS_PQ_TLSv1_0_2020_07
TlsCipherPreference.PQ_TLS_V1_0_2021_05 -> TlsCipherPreferenceJni.TLS_CIPHER_PREF_PQ_TLSv1_0_2021_05
TlsCipherPreference.PQ_TLSV1_2_2024_10 -> TlsCipherPreferenceJni.TLS_CIPHER_PREF_PQ_TLSv1_2_2023
TlsCipherPreference.PQ_DEFAULT -> TlsCipherPreferenceJni.TLS_CIPHER_PQ_DEFAULT
}
Expand Down
7 changes: 5 additions & 2 deletions build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0
*/
import aws.sdk.kotlin.gradle.dsl.configureJReleaser
import aws.sdk.kotlin.gradle.dsl.configureLinting
import aws.sdk.kotlin.gradle.dsl.configureNexus
import aws.sdk.kotlin.gradle.util.typedProp
import org.jetbrains.kotlin.gradle.dsl.JvmTarget

Expand Down Expand Up @@ -67,7 +67,7 @@ if (project.typedProp<Boolean>("kotlinWarningsAsErrors") == true) {
}

// Publishing
configureNexus()
configureJReleaser()

// Code Style
val lintPaths = listOf(
Expand All @@ -76,3 +76,6 @@ val lintPaths = listOf(
)

configureLinting(lintPaths)

// https://github.com/jreleaser/jreleaser/issues/1492
tasks.register("clean") {}
5 changes: 1 addition & 4 deletions gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,4 @@ kotlin.daemon.jvmargs=-Xmx6g -XX:+HeapDumpOnOutOfMemoryError
org.gradle.jvmargs=-Xmx2G -XX:MaxMetaspaceSize=1G

# aws-crt-kotlin
sdkVersion=0.9.3-SNAPSHOT

# publishing
publishGroupName=aws.sdk.kotlin.crt
sdkVersion=0.10.3-SNAPSHOT
12 changes: 6 additions & 6 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
@@ -1,15 +1,16 @@
[versions]
kotlin-version = "2.1.0"
kotlin-version = "2.2.0"

aws-kotlin-repo-tools-version = "0.4.27-kn"
aws-kotlin-repo-tools-version = "0.4.30-kn"

# libs
crt-java-version = "0.38.1"
coroutines-version = "1.9.0"
binary-compatibility-validator-version = "0.16.3"
coroutines-version = "1.10.2"
binary-compatibility-validator-version = "0.18.0"

# testing
junit-version = "5.10.1"
junit-version = "5.13.2"
kotest-version = "5.9.1"
mock-server-version = "5.15.0"

[libraries]
Expand All @@ -19,7 +20,6 @@ crt-java = { module = "software.amazon.awssdk.crt:aws-crt", version.ref = "crt-j
kotlin-stdlib = { module = "org.jetbrains.kotlin:kotlin-stdlib", version.ref = "kotlin-version"}
kotlin-test-junit5 = { module = "org.jetbrains.kotlin:kotlin-test-junit5", version.ref = "kotlin-version" }


kotlinx-coroutines-debug = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-debug", version.ref = "coroutines-version" }
kotlinx-coroutines-test = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-test", version.ref = "coroutines-version" }
kotlinx-coroutines-core = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "coroutines-version" }
Expand Down
Loading