kotlinx.rpc 0.4.0 Help

Migration to 0.2.1

Version 0.2.1 introduces changes that are not compatible with the previous 0.1.0 release. This guide contains a full list of all incompatible changes.

New artifact names

Most of the artifacts were renamed and restructured to properly reflect what parts of the library they contain. Below is the complete list of new names and changes. Note that only artifactId is shown; the groupId remains unchanged:

  • kotlinx-rpc-runtime

    Renamed to kotlinx-rpc-core

  • kotlinx-rpc-runtime

    Declarations moved to kotlinx-rpc-utils

  • kotlinx-rpc-runtime-client

    Renamed to kotlinx-rpc-krpc-client

  • kotlinx-rpc-runtime-server

    Renamed to kotlinx-rpc-krpc-server

  • kotlinx-rpc-runtime-logging

    Renamed to kotlinx-rpc-krpc-logging

  • kotlinx-rpc-runtime-test

    Renamed to kotlinx-rpc-krpc-test

  • kotlinx-rpc-runtime-serialization

    Renamed to kotlinx-rpc-krpc-serialization-core

  • kotlinx-rpc-runtime-serialization-json

    Renamed to kotlinx-rpc-krpc-serialization-json

  • kotlinx-rpc-runtime-serialization-cbor

    Renamed to kotlinx-rpc-krpc-serialization-cbor

  • kotlinx-rpc-runtime-serialization-protobuf

    Renamed to kotlinx-rpc-krpc-serialization-protobuf

  • kotlinx-rpc-transport-ktor

    Renamed to kotlinx-rpc-krpc-ktor-core

  • kotlinx-rpc-transport-ktor-client

    Renamed to kotlinx-rpc-krpc-ktor-client

  • kotlinx-rpc-transport-ktor-server

    Renamed to kotlinx-rpc-krpc-ktor-server

Versioning

Our version scheme has changed. Prior to this release, all artifacts were versioned with the Kotlin prefix for multiple versions of Kotlin:

org.jetbrains.kotlinx.kotlinx-rpc-runtime:1.9.24-0.1.0

This approach proved challenging for the third-party library developers, as it was not clear which version they should use for their artifacts.

From now on, only code-generation artifacts will contain the explicit Kotlin version. All other artifacts will use a simplified versioning format like this:

org.jetbrains.kotlinx.kotlinx-rpc-core:0.2.1

Our gradle plugin is still capable of including proper versions of artifacts for you. Code-generation artifacts are added automatically and should not be referred to directly.

To know more about versioning, see Versions.

Repositories

Version 0.2.1 is being released to the Maven Central repository instead of Space, like it was previously. In your gradle build scripts (build.gradle.kts) you need to update the repository to ensure you consume the correct artifacts.

Old configuration:

repositories { maven("https://maven.pkg.jetbrains.space/public/p/krpc/maven") }

New configuration:

repositories { mavenCentral() }

This also affects Gradle plugins. Now they are being published to the Gradle Plugin Portal. That means that the old configuration block in settings.gradle.kts is no longer needed.

You can remove this block:

pluginManagement { repositories { maven("https://maven.pkg.jetbrains.space/public/p/krpc/maven") } }
Last modified: 01 July 2024