Skip to content

Commit

Permalink
[build] Enable klib api dump (#5839)
Browse files Browse the repository at this point in the history
* ienable klib api dump

* update api dump
  • Loading branch information
martinbonnin committed Apr 30, 2024
1 parent 8efd9c1 commit 40ffe19
Show file tree
Hide file tree
Showing 22 changed files with 3,850 additions and 67 deletions.
4 changes: 4 additions & 0 deletions build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import JapiCmp.configureJapiCmp
import kotlinx.validation.ExperimentalBCVApi
import org.jetbrains.kotlin.gradle.targets.native.tasks.KotlinNativeHostTest

plugins {
Expand Down Expand Up @@ -122,6 +123,9 @@ rootProject.configureNode()
rootProject.configureJapiCmp()

configure<kotlinx.validation.ApiValidationExtension> {
@OptIn(ExperimentalBCVApi::class)
klib.enabled = true

ignoredPackages.addAll(
listOf(
/**
Expand Down
2 changes: 1 addition & 1 deletion gradle/libraries.toml
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,7 @@ kotlin-node = "org.jetbrains.kotlin-wrappers:kotlin-node:18.16.12-pre.634"
kotlinx-serialization-plugin = { group = "org.jetbrains.kotlin", name = "kotlin-serialization", version.ref = "kotlin-plugin" }
kotlinx-serialization-core = { group = "org.jetbrains.kotlinx", name = "kotlinx-serialization-core", version.ref = "kotlinx-serialization-runtime" }
kotlinx-serialization-json = { group = "org.jetbrains.kotlinx", name = "kotlinx-serialization-json", version.ref = "kotlinx-serialization-runtime" }
kotlinx-binarycompatibilityvalidator = { group = "org.jetbrains.kotlinx", name = "binary-compatibility-validator", version = "0.13.2" }
kotlinx-binarycompatibilityvalidator = { group = "org.jetbrains.kotlinx", name = "binary-compatibility-validator", version = "0.15.0-Beta.2" }
ksp = { module = "com.google.devtools.ksp:symbol-processing-gradle-plugin", version.ref = "ksp" }
ksp-api = { module = "com.google.devtools.ksp:symbol-processing-api", version.ref = "ksp" }
ktor-client-core = { group = "io.ktor", name= "ktor-client-core", version.ref = "ktor" }
Expand Down
76 changes: 76 additions & 0 deletions libraries/apollo-adapters/api/apollo-adapters.klib.api
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
// Klib ABI Dump
// Targets: [iosArm64, iosSimulatorArm64, iosX64, js, macosArm64, macosX64, tvosArm64, tvosSimulatorArm64, tvosX64, wasmJs, watchosArm32, watchosArm64, watchosSimulatorArm64]
// Alias: apple => [iosArm64, iosSimulatorArm64, iosX64, macosArm64, macosX64, tvosArm64, tvosSimulatorArm64, tvosX64, watchosArm32, watchosArm64, watchosSimulatorArm64]
// Rendering settings:
// - Signature version: 2
// - Show manifest properties: true
// - Show declarations: true

// Library unique name: <com.apollographql.apollo3:apollo-adapters>
final fun (com.apollographql.apollo3.adapter/BigDecimal).com.apollographql.apollo3.adapter/toNumber(): kotlin/Number // com.apollographql.apollo3.adapter/toNumber|toNumber@com.apollographql.apollo3.adapter.BigDecimal(){}[0]
final object com.apollographql.apollo3.adapter/BigDecimalAdapter : com.apollographql.apollo3.api/Adapter<com.apollographql.apollo3.adapter/BigDecimal> { // com.apollographql.apollo3.adapter/BigDecimalAdapter|null[0]
final fun fromJson(com.apollographql.apollo3.api.json/JsonReader, com.apollographql.apollo3.api/CustomScalarAdapters): com.apollographql.apollo3.adapter/BigDecimal // com.apollographql.apollo3.adapter/BigDecimalAdapter.fromJson|fromJson(com.apollographql.apollo3.api.json.JsonReader;com.apollographql.apollo3.api.CustomScalarAdapters){}[0]
final fun toJson(com.apollographql.apollo3.api.json/JsonWriter, com.apollographql.apollo3.api/CustomScalarAdapters, com.apollographql.apollo3.adapter/BigDecimal) // com.apollographql.apollo3.adapter/BigDecimalAdapter.toJson|toJson(com.apollographql.apollo3.api.json.JsonWriter;com.apollographql.apollo3.api.CustomScalarAdapters;com.apollographql.apollo3.adapter.BigDecimal){}[0]
}
final object com.apollographql.apollo3.adapter/KotlinxInstantAdapter : com.apollographql.apollo3.api/Adapter<kotlinx.datetime/Instant> { // com.apollographql.apollo3.adapter/KotlinxInstantAdapter|null[0]
final fun fromJson(com.apollographql.apollo3.api.json/JsonReader, com.apollographql.apollo3.api/CustomScalarAdapters): kotlinx.datetime/Instant // com.apollographql.apollo3.adapter/KotlinxInstantAdapter.fromJson|fromJson(com.apollographql.apollo3.api.json.JsonReader;com.apollographql.apollo3.api.CustomScalarAdapters){}[0]
final fun toJson(com.apollographql.apollo3.api.json/JsonWriter, com.apollographql.apollo3.api/CustomScalarAdapters, kotlinx.datetime/Instant) // com.apollographql.apollo3.adapter/KotlinxInstantAdapter.toJson|toJson(com.apollographql.apollo3.api.json.JsonWriter;com.apollographql.apollo3.api.CustomScalarAdapters;kotlinx.datetime.Instant){}[0]
}
final object com.apollographql.apollo3.adapter/KotlinxLocalDateAdapter : com.apollographql.apollo3.api/Adapter<kotlinx.datetime/LocalDate> { // com.apollographql.apollo3.adapter/KotlinxLocalDateAdapter|null[0]
final fun fromJson(com.apollographql.apollo3.api.json/JsonReader, com.apollographql.apollo3.api/CustomScalarAdapters): kotlinx.datetime/LocalDate // com.apollographql.apollo3.adapter/KotlinxLocalDateAdapter.fromJson|fromJson(com.apollographql.apollo3.api.json.JsonReader;com.apollographql.apollo3.api.CustomScalarAdapters){}[0]
final fun toJson(com.apollographql.apollo3.api.json/JsonWriter, com.apollographql.apollo3.api/CustomScalarAdapters, kotlinx.datetime/LocalDate) // com.apollographql.apollo3.adapter/KotlinxLocalDateAdapter.toJson|toJson(com.apollographql.apollo3.api.json.JsonWriter;com.apollographql.apollo3.api.CustomScalarAdapters;kotlinx.datetime.LocalDate){}[0]
}
final object com.apollographql.apollo3.adapter/KotlinxLocalDateTimeAdapter : com.apollographql.apollo3.api/Adapter<kotlinx.datetime/LocalDateTime> { // com.apollographql.apollo3.adapter/KotlinxLocalDateTimeAdapter|null[0]
final fun fromJson(com.apollographql.apollo3.api.json/JsonReader, com.apollographql.apollo3.api/CustomScalarAdapters): kotlinx.datetime/LocalDateTime // com.apollographql.apollo3.adapter/KotlinxLocalDateTimeAdapter.fromJson|fromJson(com.apollographql.apollo3.api.json.JsonReader;com.apollographql.apollo3.api.CustomScalarAdapters){}[0]
final fun toJson(com.apollographql.apollo3.api.json/JsonWriter, com.apollographql.apollo3.api/CustomScalarAdapters, kotlinx.datetime/LocalDateTime) // com.apollographql.apollo3.adapter/KotlinxLocalDateTimeAdapter.toJson|toJson(com.apollographql.apollo3.api.json.JsonWriter;com.apollographql.apollo3.api.CustomScalarAdapters;kotlinx.datetime.LocalDateTime){}[0]
}
final object com.apollographql.apollo3.adapter/KotlinxLocalTimeAdapter : com.apollographql.apollo3.api/Adapter<kotlinx.datetime/LocalTime> { // com.apollographql.apollo3.adapter/KotlinxLocalTimeAdapter|null[0]
final fun fromJson(com.apollographql.apollo3.api.json/JsonReader, com.apollographql.apollo3.api/CustomScalarAdapters): kotlinx.datetime/LocalTime // com.apollographql.apollo3.adapter/KotlinxLocalTimeAdapter.fromJson|fromJson(com.apollographql.apollo3.api.json.JsonReader;com.apollographql.apollo3.api.CustomScalarAdapters){}[0]
final fun toJson(com.apollographql.apollo3.api.json/JsonWriter, com.apollographql.apollo3.api/CustomScalarAdapters, kotlinx.datetime/LocalTime) // com.apollographql.apollo3.adapter/KotlinxLocalTimeAdapter.toJson|toJson(com.apollographql.apollo3.api.json.JsonWriter;com.apollographql.apollo3.api.CustomScalarAdapters;kotlinx.datetime.LocalTime){}[0]
}
// Targets: [apple]
final class com.apollographql.apollo3.adapter/BigDecimal : kotlin/Number { // com.apollographql.apollo3.adapter/BigDecimal|null[0]
constructor <init>(kotlin/Double) // com.apollographql.apollo3.adapter/BigDecimal.<init>|<init>(kotlin.Double){}[0]
constructor <init>(kotlin/Int) // com.apollographql.apollo3.adapter/BigDecimal.<init>|<init>(kotlin.Int){}[0]
constructor <init>(kotlin/Long) // com.apollographql.apollo3.adapter/BigDecimal.<init>|<init>(kotlin.Long){}[0]
constructor <init>(kotlin/String) // com.apollographql.apollo3.adapter/BigDecimal.<init>|<init>(kotlin.String){}[0]
final fun add(com.apollographql.apollo3.adapter/BigDecimal): com.apollographql.apollo3.adapter/BigDecimal // com.apollographql.apollo3.adapter/BigDecimal.add|add(com.apollographql.apollo3.adapter.BigDecimal){}[0]
final fun divide(com.apollographql.apollo3.adapter/BigDecimal): com.apollographql.apollo3.adapter/BigDecimal // com.apollographql.apollo3.adapter/BigDecimal.divide|divide(com.apollographql.apollo3.adapter.BigDecimal){}[0]
final fun equals(kotlin/Any?): kotlin/Boolean // com.apollographql.apollo3.adapter/BigDecimal.equals|equals(kotlin.Any?){}[0]
final fun hashCode(): kotlin/Int // com.apollographql.apollo3.adapter/BigDecimal.hashCode|hashCode(){}[0]
final fun multiply(com.apollographql.apollo3.adapter/BigDecimal): com.apollographql.apollo3.adapter/BigDecimal // com.apollographql.apollo3.adapter/BigDecimal.multiply|multiply(com.apollographql.apollo3.adapter.BigDecimal){}[0]
final fun negate(): com.apollographql.apollo3.adapter/BigDecimal // com.apollographql.apollo3.adapter/BigDecimal.negate|negate(){}[0]
final fun signum(): kotlin/Int // com.apollographql.apollo3.adapter/BigDecimal.signum|signum(){}[0]
final fun subtract(com.apollographql.apollo3.adapter/BigDecimal): com.apollographql.apollo3.adapter/BigDecimal // com.apollographql.apollo3.adapter/BigDecimal.subtract|subtract(com.apollographql.apollo3.adapter.BigDecimal){}[0]
final fun toByte(): kotlin/Byte // com.apollographql.apollo3.adapter/BigDecimal.toByte|toByte(){}[0]
final fun toDouble(): kotlin/Double // com.apollographql.apollo3.adapter/BigDecimal.toDouble|toDouble(){}[0]
final fun toFloat(): kotlin/Float // com.apollographql.apollo3.adapter/BigDecimal.toFloat|toFloat(){}[0]
final fun toInt(): kotlin/Int // com.apollographql.apollo3.adapter/BigDecimal.toInt|toInt(){}[0]
final fun toLong(): kotlin/Long // com.apollographql.apollo3.adapter/BigDecimal.toLong|toLong(){}[0]
final fun toShort(): kotlin/Short // com.apollographql.apollo3.adapter/BigDecimal.toShort|toShort(){}[0]
final fun toString(): kotlin/String // com.apollographql.apollo3.adapter/BigDecimal.toString|toString(){}[0]
}
// Targets: [js, wasmJs]
final class com.apollographql.apollo3.adapter/BigDecimal { // com.apollographql.apollo3.adapter/BigDecimal|null[0]
constructor <init>() // com.apollographql.apollo3.adapter/BigDecimal.<init>|<init>(){}[0]
constructor <init>(kotlin/Double) // com.apollographql.apollo3.adapter/BigDecimal.<init>|<init>(kotlin.Double){}[0]
constructor <init>(kotlin/Int) // com.apollographql.apollo3.adapter/BigDecimal.<init>|<init>(kotlin.Int){}[0]
constructor <init>(kotlin/Long) // com.apollographql.apollo3.adapter/BigDecimal.<init>|<init>(kotlin.Long){}[0]
constructor <init>(kotlin/String) // com.apollographql.apollo3.adapter/BigDecimal.<init>|<init>(kotlin.String){}[0]
final fun add(com.apollographql.apollo3.adapter/BigDecimal): com.apollographql.apollo3.adapter/BigDecimal // com.apollographql.apollo3.adapter/BigDecimal.add|add(com.apollographql.apollo3.adapter.BigDecimal){}[0]
final fun divide(com.apollographql.apollo3.adapter/BigDecimal): com.apollographql.apollo3.adapter/BigDecimal // com.apollographql.apollo3.adapter/BigDecimal.divide|divide(com.apollographql.apollo3.adapter.BigDecimal){}[0]
final fun equals(kotlin/Any?): kotlin/Boolean // com.apollographql.apollo3.adapter/BigDecimal.equals|equals(kotlin.Any?){}[0]
final fun hashCode(): kotlin/Int // com.apollographql.apollo3.adapter/BigDecimal.hashCode|hashCode(){}[0]
final fun multiply(com.apollographql.apollo3.adapter/BigDecimal): com.apollographql.apollo3.adapter/BigDecimal // com.apollographql.apollo3.adapter/BigDecimal.multiply|multiply(com.apollographql.apollo3.adapter.BigDecimal){}[0]
final fun negate(): com.apollographql.apollo3.adapter/BigDecimal // com.apollographql.apollo3.adapter/BigDecimal.negate|negate(){}[0]
final fun signum(): kotlin/Int // com.apollographql.apollo3.adapter/BigDecimal.signum|signum(){}[0]
final fun subtract(com.apollographql.apollo3.adapter/BigDecimal): com.apollographql.apollo3.adapter/BigDecimal // com.apollographql.apollo3.adapter/BigDecimal.subtract|subtract(com.apollographql.apollo3.adapter.BigDecimal){}[0]
final fun toByte(): kotlin/Byte // com.apollographql.apollo3.adapter/BigDecimal.toByte|toByte(){}[0]
final fun toChar(): kotlin/Char // com.apollographql.apollo3.adapter/BigDecimal.toChar|toChar(){}[0]
final fun toDouble(): kotlin/Double // com.apollographql.apollo3.adapter/BigDecimal.toDouble|toDouble(){}[0]
final fun toFloat(): kotlin/Float // com.apollographql.apollo3.adapter/BigDecimal.toFloat|toFloat(){}[0]
final fun toInt(): kotlin/Int // com.apollographql.apollo3.adapter/BigDecimal.toInt|toInt(){}[0]
final fun toLong(): kotlin/Long // com.apollographql.apollo3.adapter/BigDecimal.toLong|toLong(){}[0]
final fun toShort(): kotlin/Short // com.apollographql.apollo3.adapter/BigDecimal.toShort|toShort(){}[0]
final fun toString(): kotlin/String // com.apollographql.apollo3.adapter/BigDecimal.toString|toString(){}[0]
}
66 changes: 66 additions & 0 deletions libraries/apollo-annotations/api/apollo-annotations.klib.api
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
// Klib ABI Dump
// Targets: [iosArm64, iosSimulatorArm64, iosX64, js, linuxX64.linux, macosArm64, macosX64, tvosArm64, tvosSimulatorArm64, tvosX64, wasmJs, watchosArm32, watchosArm64, watchosSimulatorArm64]
// Rendering settings:
// - Signature version: 2
// - Show manifest properties: true
// - Show declarations: true

// Library unique name: <com.apollographql.apollo3:apollo-annotations>
open annotation class com.apollographql.apollo3.annotations/ApolloAdaptableWith : kotlin/Annotation { // com.apollographql.apollo3.annotations/ApolloAdaptableWith|null[0]
constructor <init>(kotlin.reflect/KClass<*>) // com.apollographql.apollo3.annotations/ApolloAdaptableWith.<init>|<init>(kotlin.reflect.KClass<*>){}[0]
final val adapter // com.apollographql.apollo3.annotations/ApolloAdaptableWith.adapter|{}adapter[0]
final fun <get-adapter>(): kotlin.reflect/KClass<*> // com.apollographql.apollo3.annotations/ApolloAdaptableWith.adapter.<get-adapter>|<get-adapter>(){}[0]
}
open annotation class com.apollographql.apollo3.annotations/ApolloDeprecatedSince : kotlin/Annotation { // com.apollographql.apollo3.annotations/ApolloDeprecatedSince|null[0]
constructor <init>(com.apollographql.apollo3.annotations/ApolloDeprecatedSince.Version) // com.apollographql.apollo3.annotations/ApolloDeprecatedSince.<init>|<init>(com.apollographql.apollo3.annotations.ApolloDeprecatedSince.Version){}[0]
final enum class Version : kotlin/Enum<com.apollographql.apollo3.annotations/ApolloDeprecatedSince.Version> { // com.apollographql.apollo3.annotations/ApolloDeprecatedSince.Version|null[0]
enum entry v3_0_0 // com.apollographql.apollo3.annotations/ApolloDeprecatedSince.Version.v3_0_0|null[0]
enum entry v3_0_1 // com.apollographql.apollo3.annotations/ApolloDeprecatedSince.Version.v3_0_1|null[0]
enum entry v3_1_1 // com.apollographql.apollo3.annotations/ApolloDeprecatedSince.Version.v3_1_1|null[0]
enum entry v3_2_1 // com.apollographql.apollo3.annotations/ApolloDeprecatedSince.Version.v3_2_1|null[0]
enum entry v3_2_2 // com.apollographql.apollo3.annotations/ApolloDeprecatedSince.Version.v3_2_2|null[0]
enum entry v3_2_3 // com.apollographql.apollo3.annotations/ApolloDeprecatedSince.Version.v3_2_3|null[0]
enum entry v3_3_1 // com.apollographql.apollo3.annotations/ApolloDeprecatedSince.Version.v3_3_1|null[0]
enum entry v3_3_2 // com.apollographql.apollo3.annotations/ApolloDeprecatedSince.Version.v3_3_2|null[0]
enum entry v3_3_3 // com.apollographql.apollo3.annotations/ApolloDeprecatedSince.Version.v3_3_3|null[0]
enum entry v3_4_1 // com.apollographql.apollo3.annotations/ApolloDeprecatedSince.Version.v3_4_1|null[0]
enum entry v3_5_1 // com.apollographql.apollo3.annotations/ApolloDeprecatedSince.Version.v3_5_1|null[0]
enum entry v3_6_3 // com.apollographql.apollo3.annotations/ApolloDeprecatedSince.Version.v3_6_3|null[0]
enum entry v3_7_2 // com.apollographql.apollo3.annotations/ApolloDeprecatedSince.Version.v3_7_2|null[0]
enum entry v3_7_5 // com.apollographql.apollo3.annotations/ApolloDeprecatedSince.Version.v3_7_5|null[0]
enum entry v4_0_0 // com.apollographql.apollo3.annotations/ApolloDeprecatedSince.Version.v4_0_0|null[0]
final fun valueOf(kotlin/String): com.apollographql.apollo3.annotations/ApolloDeprecatedSince.Version // com.apollographql.apollo3.annotations/ApolloDeprecatedSince.Version.valueOf|valueOf#static(kotlin.String){}[0]
final fun values(): kotlin/Array<com.apollographql.apollo3.annotations/ApolloDeprecatedSince.Version> // com.apollographql.apollo3.annotations/ApolloDeprecatedSince.Version.values|values#static(){}[0]
final val entries // com.apollographql.apollo3.annotations/ApolloDeprecatedSince.Version.entries|#static{}entries[0]
final fun <get-entries>(): kotlin.enums/EnumEntries<com.apollographql.apollo3.annotations/ApolloDeprecatedSince.Version> // com.apollographql.apollo3.annotations/ApolloDeprecatedSince.Version.entries.<get-entries>|<get-entries>#static(){}[0]
}
final val version // com.apollographql.apollo3.annotations/ApolloDeprecatedSince.version|{}version[0]
final fun <get-version>(): com.apollographql.apollo3.annotations/ApolloDeprecatedSince.Version // com.apollographql.apollo3.annotations/ApolloDeprecatedSince.version.<get-version>|<get-version>(){}[0]
}
open annotation class com.apollographql.apollo3.annotations/ApolloEnumConstructor : kotlin/Annotation { // com.apollographql.apollo3.annotations/ApolloEnumConstructor|null[0]
constructor <init>() // com.apollographql.apollo3.annotations/ApolloEnumConstructor.<init>|<init>(){}[0]
}
open annotation class com.apollographql.apollo3.annotations/ApolloExperimental : kotlin/Annotation { // com.apollographql.apollo3.annotations/ApolloExperimental|null[0]
constructor <init>() // com.apollographql.apollo3.annotations/ApolloExperimental.<init>|<init>(){}[0]
}
open annotation class com.apollographql.apollo3.annotations/ApolloInternal : kotlin/Annotation { // com.apollographql.apollo3.annotations/ApolloInternal|null[0]
constructor <init>() // com.apollographql.apollo3.annotations/ApolloInternal.<init>|<init>(){}[0]
}
open annotation class com.apollographql.apollo3.annotations/ApolloRequiresOptIn : kotlin/Annotation { // com.apollographql.apollo3.annotations/ApolloRequiresOptIn|null[0]
constructor <init>() // com.apollographql.apollo3.annotations/ApolloRequiresOptIn.<init>|<init>(){}[0]
}
open annotation class com.apollographql.apollo3.annotations/GraphQLAdapter : kotlin/Annotation { // com.apollographql.apollo3.annotations/GraphQLAdapter|null[0]
constructor <init>(kotlin/String) // com.apollographql.apollo3.annotations/GraphQLAdapter.<init>|<init>(kotlin.String){}[0]
final val forScalar // com.apollographql.apollo3.annotations/GraphQLAdapter.forScalar|{}forScalar[0]
final fun <get-forScalar>(): kotlin/String // com.apollographql.apollo3.annotations/GraphQLAdapter.forScalar.<get-forScalar>|<get-forScalar>(){}[0]
}
open annotation class com.apollographql.apollo3.annotations/GraphQLName : kotlin/Annotation { // com.apollographql.apollo3.annotations/GraphQLName|null[0]
constructor <init>(kotlin/String) // com.apollographql.apollo3.annotations/GraphQLName.<init>|<init>(kotlin.String){}[0]
final val name // com.apollographql.apollo3.annotations/GraphQLName.name|{}name[0]
final fun <get-name>(): kotlin/String // com.apollographql.apollo3.annotations/GraphQLName.name.<get-name>|<get-name>(){}[0]
}
open annotation class com.apollographql.apollo3.annotations/GraphQLObject : kotlin/Annotation { // com.apollographql.apollo3.annotations/GraphQLObject|null[0]
constructor <init>(kotlin/String = ...) // com.apollographql.apollo3.annotations/GraphQLObject.<init>|<init>(kotlin.String){}[0]
final val name // com.apollographql.apollo3.annotations/GraphQLObject.name|{}name[0]
final fun <get-name>(): kotlin/String // com.apollographql.apollo3.annotations/GraphQLObject.name.<get-name>|<get-name>(){}[0]
}

0 comments on commit 40ffe19

Please sign in to comment.