Join us for GraphQL Summit, October 10-12 in San Diego. Use promo code ODYSSEY for $400 off your pass.
Launch GraphOS Studio
You're viewing documentation for an upcoming version of this software. Switch to the latest stable version.

Kotlin native

Apollo Kotlin supports multiple native targets, including iOS and MacOS.

Apollo Kotlin requires the new Kotlin Native Memory Manager. It is enabled by default since Kotlin 1.7.20. If you're using a version of Kotlin lower than 1.7.20, you need to opt-in:

kotlin.targets.withType( {
binaries.all {
binaryOptions["memoryModel"] = "experimental"

More information is available on the migration guide.

Multithreaded coroutines

By default when using the x.y.z-native-mt branch of coroutines, Gradle replaces the -native-mt version with the non-mt version as outlined here. To prevent this, add the following to your root build.gradle.kts:

allprojects {
configurations {
all {
resolutionStrategy {

This ensures that the same version is used everywhere, and that Gradle doesn't fail because -native-mt is a pre-release version (1.5.1-native-mt < 1.5.1).

RxJava support
Apollo AST
Edit on GitHubEditForumsDiscord