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
2 changes: 1 addition & 1 deletion .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ env:
ALGOLIA_INDEX_NAME: 'prod_kotlin_rpc'
ALGOLIA_KEY: '${{ secrets.ALGOLIA_KEY }}'
CONFIG_JSON_PRODUCT: 'kotlinx-rpc'
CONFIG_JSON_VERSION: '0.10.2'
CONFIG_JSON_VERSION: '0.10.3'
DOKKA_ARTIFACT: 'dokka.zip'
ASSEMBLE_DIR: '__docs_assembled'
ASSEMBLE_ARTIFACT: 'assembled.zip'
Expand Down
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -243,6 +243,14 @@ Two approaches are supported:

**Full Changelog**: https://github.com/Kotlin/kotlinx-rpc/compare/0.10.2...0.11.0-grpc-185

# 0.10.3
> Published 23 June 2026

### Bug fixes 🐛
* KRPC-560: Fix Native segfault in callables property itable dispatch (… by @eminasljivic in https://github.com/Kotlin/kotlinx-rpc/pull/728

**Full Changelog**: https://github.com/Kotlin/kotlinx-rpc/compare/0.10.2...0.10.3

# 0.10.2
> Published 15 February 2026

Expand Down
12 changes: 6 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,7 @@ Example of a setup in a project's `build.gradle.kts`:
plugins {
kotlin("multiplatform") version "2.4.0"
kotlin("plugin.serialization") version "2.4.0"
id("org.jetbrains.kotlinx.rpc.plugin") version "0.10.2"
id("org.jetbrains.kotlinx.rpc.plugin") version "0.10.3"
}
```

Expand All @@ -157,15 +157,15 @@ And now you can add dependencies to your project:
```kotlin
dependencies {
// Client API
implementation("org.jetbrains.kotlinx:kotlinx-rpc-krpc-client:0.10.2")
implementation("org.jetbrains.kotlinx:kotlinx-rpc-krpc-client:0.10.3")
// Server API
implementation("org.jetbrains.kotlinx:kotlinx-rpc-krpc-server:0.10.2")
implementation("org.jetbrains.kotlinx:kotlinx-rpc-krpc-server:0.10.3")
// Serialization module. Also, protobuf and cbor are provided
implementation("org.jetbrains.kotlinx:kotlinx-rpc-krpc-serialization-json:0.10.2")
implementation("org.jetbrains.kotlinx:kotlinx-rpc-krpc-serialization-json:0.10.3")

// Transport implementation for Ktor
implementation("org.jetbrains.kotlinx:kotlinx-rpc-krpc-ktor-client:0.10.2")
implementation("org.jetbrains.kotlinx:kotlinx-rpc-krpc-ktor-server:0.10.2")
implementation("org.jetbrains.kotlinx:kotlinx-rpc-krpc-ktor-client:0.10.3")
implementation("org.jetbrains.kotlinx:kotlinx-rpc-krpc-ktor-server:0.10.3")

// Ktor API
implementation("io.ktor:ktor-client-cio-jvm:$ktor_version")
Expand Down
2 changes: 1 addition & 1 deletion docs/pages/kotlinx-rpc/help-versions.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
[
{"version":"0.10.2","url":"/kotlinx-rpc/0.10.2/","isCurrent":true}
{"version":"0.10.3","url":"/kotlinx-rpc/0.10.3/","isCurrent":true}
]
9 changes: 9 additions & 0 deletions docs/pages/kotlinx-rpc/topics/changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -251,6 +251,15 @@ Two approaches are supported:
* Konan LLVM bundle mapping update by [@Jozott00](https://github.com/Jozott00) in [#585](https://github.com/Kotlin/kotlinx-rpc/pull/585)


## 0.10.3
> Published 23 June 2026

**Full Changelog**: [0.10.2...0.10.3](https://github.com/Kotlin/kotlinx-rpc/compare/0.10.2...0.10.3)

#### Bug fixes 🐛 {id=Bug_fixes_0_10_3}
* KRPC-560: Fix Native segfault in callables property itable dispatch (… by [@eminasljivic](https://github.com/eminasljivic) in [#728](https://github.com/Kotlin/kotlinx-rpc/pull/728)


## 0.10.2
> Published 15 February 2026

Expand Down
2 changes: 1 addition & 1 deletion docs/pages/kotlinx-rpc/v.list
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,6 @@
<var name="host" value="https://kotlin.github.io"/>

<!-- Library versions -->
<var name="kotlinx-rpc-version" value="0.10.2"/>
<var name="kotlinx-rpc-version" value="0.10.3"/>
<var name="kotlin-version" value="2.4.0"/>
</vars>
2 changes: 1 addition & 1 deletion docs/pages/kotlinx-rpc/writerside.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@
<images dir="images" web-path="images/"/>
<categories src="c.list"/>
<vars src="v.list"/>
<instance src="rpc.tree" version="0.10.2" web-path="/kotlinx-rpc/"/>
<instance src="rpc.tree" version="0.10.3" web-path="/kotlinx-rpc/"/>
</ihp>
9 changes: 8 additions & 1 deletion gradle-plugin/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
* Copyright 2023-2025 JetBrains s.r.o and contributors. Use of this source code is governed by the Apache 2.0 license.
*/

import org.gradle.plugin.compatibility.compatibility
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
import util.other.generateSource
import kotlin.io.path.Path
Expand Down Expand Up @@ -94,8 +95,14 @@ gradlePlugin {
displayName = "kotlinx.rpc Gradle Plugin"
implementationClass = "kotlinx.rpc.RpcGradlePlugin"
description = """
The plugin ensures correct RPC configurations for your project, that will allow proper code generation.
The plugin ensures correct RPC configurations for your project, that will allow proper code generation.
""".trimIndent()

compatibility {
features {
configurationCache = true
}
}
}
}
}
Expand Down
2 changes: 1 addition & 1 deletion samples/ktor-all-platforms-app/gradle/libs.versions.toml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ ktor = "3.3.1"
logback = "1.5.20"
serialization = "1.9.0"
coroutines = "1.10.2"
kotlinx-rpc = "0.10.2"
kotlinx-rpc = "0.10.3"

[libraries]
# kotlin
Expand Down
2 changes: 1 addition & 1 deletion samples/ktor-android-app/app/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ plugins {

android {
namespace = "kotlinx.rpc.sample"
compileSdk = 35
compileSdk = 36

packaging {
resources {
Expand Down
2 changes: 1 addition & 1 deletion samples/ktor-android-app/gradle/libs.versions.toml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ ktor = "3.3.1"
kotlinx-serialization-json = "1.9.0"
kotlinx-coroutines-core = "1.10.2"
logback = "1.5.20"
kotlinx-rpc = "0.10.2"
kotlinx-rpc = "0.10.3"

[libraries]
# kotlin
Expand Down
2 changes: 1 addition & 1 deletion samples/ktor-web-app/gradle/libs.versions.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ ktor = "3.3.1"
kotlinx-serialization-json = "1.9.0"
kotlinx-coroutines-core = "1.10.2"
logback = "1.5.20"
kotlinx-rpc = "0.10.2"
kotlinx-rpc = "0.10.3"

[libraries]
# kotlin
Expand Down
12 changes: 6 additions & 6 deletions samples/simple-ktor-app/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ plugins {
kotlin("jvm") version "2.3.0"
kotlin("plugin.serialization") version "2.3.0"
id("io.ktor.plugin") version "3.3.1"
id("org.jetbrains.kotlinx.rpc.plugin") version "0.10.2"
id("org.jetbrains.kotlinx.rpc.plugin") version "0.10.3"
}

group = "kotlinx.rpc.sample"
Expand All @@ -28,12 +28,12 @@ kotlin {
}

dependencies {
implementation("org.jetbrains.kotlinx:kotlinx-rpc-krpc-client:0.10.2")
implementation("org.jetbrains.kotlinx:kotlinx-rpc-krpc-server:0.10.2")
implementation("org.jetbrains.kotlinx:kotlinx-rpc-krpc-serialization-json:0.10.2")
implementation("org.jetbrains.kotlinx:kotlinx-rpc-krpc-client:0.10.3")
implementation("org.jetbrains.kotlinx:kotlinx-rpc-krpc-server:0.10.3")
implementation("org.jetbrains.kotlinx:kotlinx-rpc-krpc-serialization-json:0.10.3")

implementation("org.jetbrains.kotlinx:kotlinx-rpc-krpc-ktor-client:0.10.2")
implementation("org.jetbrains.kotlinx:kotlinx-rpc-krpc-ktor-server:0.10.2")
implementation("org.jetbrains.kotlinx:kotlinx-rpc-krpc-ktor-client:0.10.3")
implementation("org.jetbrains.kotlinx:kotlinx-rpc-krpc-ktor-server:0.10.3")

implementation("io.ktor:ktor-client-cio")
implementation("io.ktor:ktor-server-netty-jvm")
Expand Down
3 changes: 1 addition & 2 deletions samples/simple-ktor-app/src/main/kotlin/Client.kt
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ import io.ktor.http.*
import kotlinx.coroutines.flow.flow
import kotlinx.coroutines.launch
import kotlinx.coroutines.runBlocking
import kotlinx.io.bytestring.ByteString
import kotlinx.rpc.krpc.ktor.client.installKrpc
import kotlinx.rpc.krpc.ktor.client.rpc
import kotlinx.rpc.krpc.ktor.client.rpcConfig
Expand Down Expand Up @@ -41,7 +40,7 @@ fun main() = runBlocking {
}
}

val image = Image(ByteString(0, 1, 2, 3))
val image = Image(byteArrayOf(0, 1, 2, 3))
val category = recognizer.recognize(image)
println("Recognized category: $category")

Expand Down
5 changes: 2 additions & 3 deletions samples/simple-ktor-app/src/test/kotlin/ApplicationTest.kt
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.cancel
import kotlinx.coroutines.launch
import kotlinx.io.bytestring.ByteString
import kotlinx.rpc.krpc.ktor.client.installKrpc
import kotlinx.rpc.krpc.ktor.client.rpc
import kotlinx.rpc.krpc.ktor.client.rpcConfig
Expand Down Expand Up @@ -50,8 +49,8 @@ class ApplicationTest {
}
}

assertEquals(Category.DOG, recognizer.recognize(Image(ByteString(1, 2, 3))))
assertEquals(Category.CAT, recognizer.recognize(Image(ByteString(0, 2, 3))))
assertEquals(Category.DOG, recognizer.recognize(Image(byteArrayOf(1, 2, 3))))
assertEquals(Category.CAT, recognizer.recognize(Image(byteArrayOf(0, 2, 3))))

job.join()

Expand Down
2 changes: 1 addition & 1 deletion versions-root/libs.versions.toml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ ktor = "3.4.0"
kotlin-logging = "7.0.14"
slf4j = "2.0.17"
logback = "1.3.14"
gradle-plugin-publish = "2.0.0"
gradle-plugin-publish = "2.1.1"
kotlin-wrappers = "2026.3.7"
junit4 = "4.13.2"
junit5 = "5.14.2"
Expand Down
Loading