Skip to content

Commit

Permalink
Updated Kotlin to 2.0.0, coroutines to 1.8.1, enabled klib API valida…
Browse files Browse the repository at this point in the history
…tion
  • Loading branch information
arkivanov committed Jun 1, 2024
1 parent eece207 commit c871033
Show file tree
Hide file tree
Showing 11 changed files with 490 additions and 220 deletions.
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,5 @@
local.properties
.idea
/build
.DS_Store
.DS_Store
.kotlin
80 changes: 80 additions & 0 deletions back-handler/api/back-handler.klib.api
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
// Klib ABI Dump
// Targets: [iosArm64, iosSimulatorArm64, iosX64, js, linuxX64, macosArm64, macosX64, tvosArm64, tvosSimulatorArm64, tvosX64, wasmJs, watchosArm32, watchosArm64, watchosSimulatorArm64, watchosX64]
// Rendering settings:
// - Signature version: 2
// - Show manifest properties: true
// - Show declarations: true

// Library unique name: <com.arkivanov.essenty:back-handler>
abstract class com.arkivanov.essenty.backhandler/BackCallback { // com.arkivanov.essenty.backhandler/BackCallback|null[0]
abstract fun onBack() // com.arkivanov.essenty.backhandler/BackCallback.onBack|onBack(){}[0]
constructor <init>(kotlin/Boolean = ..., kotlin/Int = ...) // com.arkivanov.essenty.backhandler/BackCallback.<init>|<init>(kotlin.Boolean;kotlin.Int){}[0]
final fun addEnabledChangedListener(kotlin/Function1<kotlin/Boolean, kotlin/Unit>) // com.arkivanov.essenty.backhandler/BackCallback.addEnabledChangedListener|addEnabledChangedListener(kotlin.Function1<kotlin.Boolean,kotlin.Unit>){}[0]
final fun removeEnabledChangedListener(kotlin/Function1<kotlin/Boolean, kotlin/Unit>) // com.arkivanov.essenty.backhandler/BackCallback.removeEnabledChangedListener|removeEnabledChangedListener(kotlin.Function1<kotlin.Boolean,kotlin.Unit>){}[0]
final object Companion { // com.arkivanov.essenty.backhandler/BackCallback.Companion|null[0]
final const val PRIORITY_DEFAULT // com.arkivanov.essenty.backhandler/BackCallback.Companion.PRIORITY_DEFAULT|{}PRIORITY_DEFAULT[0]
final fun <get-PRIORITY_DEFAULT>(): kotlin/Int // com.arkivanov.essenty.backhandler/BackCallback.Companion.PRIORITY_DEFAULT.<get-PRIORITY_DEFAULT>|<get-PRIORITY_DEFAULT>(){}[0]
final const val PRIORITY_MAX // com.arkivanov.essenty.backhandler/BackCallback.Companion.PRIORITY_MAX|{}PRIORITY_MAX[0]
final fun <get-PRIORITY_MAX>(): kotlin/Int // com.arkivanov.essenty.backhandler/BackCallback.Companion.PRIORITY_MAX.<get-PRIORITY_MAX>|<get-PRIORITY_MAX>(){}[0]
final const val PRIORITY_MIN // com.arkivanov.essenty.backhandler/BackCallback.Companion.PRIORITY_MIN|{}PRIORITY_MIN[0]
final fun <get-PRIORITY_MIN>(): kotlin/Int // com.arkivanov.essenty.backhandler/BackCallback.Companion.PRIORITY_MIN.<get-PRIORITY_MIN>|<get-PRIORITY_MIN>(){}[0]
}
final var isEnabled // com.arkivanov.essenty.backhandler/BackCallback.isEnabled|{}isEnabled[0]
final fun <get-isEnabled>(): kotlin/Boolean // com.arkivanov.essenty.backhandler/BackCallback.isEnabled.<get-isEnabled>|<get-isEnabled>(){}[0]
final fun <set-isEnabled>(kotlin/Boolean) // com.arkivanov.essenty.backhandler/BackCallback.isEnabled.<set-isEnabled>|<set-isEnabled>(kotlin.Boolean){}[0]
final var priority // com.arkivanov.essenty.backhandler/BackCallback.priority|{}priority[0]
final fun <get-priority>(): kotlin/Int // com.arkivanov.essenty.backhandler/BackCallback.priority.<get-priority>|<get-priority>(){}[0]
final fun <set-priority>(kotlin/Int) // com.arkivanov.essenty.backhandler/BackCallback.priority.<set-priority>|<set-priority>(kotlin.Int){}[0]
open fun onBackCancelled() // com.arkivanov.essenty.backhandler/BackCallback.onBackCancelled|onBackCancelled(){}[0]
open fun onBackProgressed(com.arkivanov.essenty.backhandler/BackEvent) // com.arkivanov.essenty.backhandler/BackCallback.onBackProgressed|onBackProgressed(com.arkivanov.essenty.backhandler.BackEvent){}[0]
open fun onBackStarted(com.arkivanov.essenty.backhandler/BackEvent) // com.arkivanov.essenty.backhandler/BackCallback.onBackStarted|onBackStarted(com.arkivanov.essenty.backhandler.BackEvent){}[0]
}
abstract interface com.arkivanov.essenty.backhandler/BackDispatcher : com.arkivanov.essenty.backhandler/BackHandler { // com.arkivanov.essenty.backhandler/BackDispatcher|null[0]
abstract fun addEnabledChangedListener(kotlin/Function1<kotlin/Boolean, kotlin/Unit>) // com.arkivanov.essenty.backhandler/BackDispatcher.addEnabledChangedListener|addEnabledChangedListener(kotlin.Function1<kotlin.Boolean,kotlin.Unit>){}[0]
abstract fun back(): kotlin/Boolean // com.arkivanov.essenty.backhandler/BackDispatcher.back|back(){}[0]
abstract fun cancelPredictiveBack() // com.arkivanov.essenty.backhandler/BackDispatcher.cancelPredictiveBack|cancelPredictiveBack(){}[0]
abstract fun progressPredictiveBack(com.arkivanov.essenty.backhandler/BackEvent) // com.arkivanov.essenty.backhandler/BackDispatcher.progressPredictiveBack|progressPredictiveBack(com.arkivanov.essenty.backhandler.BackEvent){}[0]
abstract fun removeEnabledChangedListener(kotlin/Function1<kotlin/Boolean, kotlin/Unit>) // com.arkivanov.essenty.backhandler/BackDispatcher.removeEnabledChangedListener|removeEnabledChangedListener(kotlin.Function1<kotlin.Boolean,kotlin.Unit>){}[0]
abstract fun startPredictiveBack(com.arkivanov.essenty.backhandler/BackEvent): kotlin/Boolean // com.arkivanov.essenty.backhandler/BackDispatcher.startPredictiveBack|startPredictiveBack(com.arkivanov.essenty.backhandler.BackEvent){}[0]
abstract val isEnabled // com.arkivanov.essenty.backhandler/BackDispatcher.isEnabled|{}isEnabled[0]
abstract fun <get-isEnabled>(): kotlin/Boolean // com.arkivanov.essenty.backhandler/BackDispatcher.isEnabled.<get-isEnabled>|<get-isEnabled>(){}[0]
}
abstract interface com.arkivanov.essenty.backhandler/BackHandler { // com.arkivanov.essenty.backhandler/BackHandler|null[0]
abstract fun isRegistered(com.arkivanov.essenty.backhandler/BackCallback): kotlin/Boolean // com.arkivanov.essenty.backhandler/BackHandler.isRegistered|isRegistered(com.arkivanov.essenty.backhandler.BackCallback){}[0]
abstract fun register(com.arkivanov.essenty.backhandler/BackCallback) // com.arkivanov.essenty.backhandler/BackHandler.register|register(com.arkivanov.essenty.backhandler.BackCallback){}[0]
abstract fun unregister(com.arkivanov.essenty.backhandler/BackCallback) // com.arkivanov.essenty.backhandler/BackHandler.unregister|unregister(com.arkivanov.essenty.backhandler.BackCallback){}[0]
}
abstract interface com.arkivanov.essenty.backhandler/BackHandlerOwner { // com.arkivanov.essenty.backhandler/BackHandlerOwner|null[0]
abstract val backHandler // com.arkivanov.essenty.backhandler/BackHandlerOwner.backHandler|{}backHandler[0]
abstract fun <get-backHandler>(): com.arkivanov.essenty.backhandler/BackHandler // com.arkivanov.essenty.backhandler/BackHandlerOwner.backHandler.<get-backHandler>|<get-backHandler>(){}[0]
}
final class com.arkivanov.essenty.backhandler/BackEvent { // com.arkivanov.essenty.backhandler/BackEvent|null[0]
constructor <init>(kotlin/Float = ..., com.arkivanov.essenty.backhandler/BackEvent.SwipeEdge = ..., kotlin/Float = ..., kotlin/Float = ...) // com.arkivanov.essenty.backhandler/BackEvent.<init>|<init>(kotlin.Float;com.arkivanov.essenty.backhandler.BackEvent.SwipeEdge;kotlin.Float;kotlin.Float){}[0]
final enum class SwipeEdge : kotlin/Enum<com.arkivanov.essenty.backhandler/BackEvent.SwipeEdge> { // com.arkivanov.essenty.backhandler/BackEvent.SwipeEdge|null[0]
enum entry LEFT // com.arkivanov.essenty.backhandler/BackEvent.SwipeEdge.LEFT|null[0]
enum entry RIGHT // com.arkivanov.essenty.backhandler/BackEvent.SwipeEdge.RIGHT|null[0]
enum entry UNKNOWN // com.arkivanov.essenty.backhandler/BackEvent.SwipeEdge.UNKNOWN|null[0]
final fun valueOf(kotlin/String): com.arkivanov.essenty.backhandler/BackEvent.SwipeEdge // com.arkivanov.essenty.backhandler/BackEvent.SwipeEdge.valueOf|valueOf#static(kotlin.String){}[0]
final fun values(): kotlin/Array<com.arkivanov.essenty.backhandler/BackEvent.SwipeEdge> // com.arkivanov.essenty.backhandler/BackEvent.SwipeEdge.values|values#static(){}[0]
final val entries // com.arkivanov.essenty.backhandler/BackEvent.SwipeEdge.entries|#static{}entries[0]
final fun <get-entries>(): kotlin.enums/EnumEntries<com.arkivanov.essenty.backhandler/BackEvent.SwipeEdge> // com.arkivanov.essenty.backhandler/BackEvent.SwipeEdge.entries.<get-entries>|<get-entries>#static(){}[0]
}
final fun component1(): kotlin/Float // com.arkivanov.essenty.backhandler/BackEvent.component1|component1(){}[0]
final fun component2(): com.arkivanov.essenty.backhandler/BackEvent.SwipeEdge // com.arkivanov.essenty.backhandler/BackEvent.component2|component2(){}[0]
final fun component3(): kotlin/Float // com.arkivanov.essenty.backhandler/BackEvent.component3|component3(){}[0]
final fun component4(): kotlin/Float // com.arkivanov.essenty.backhandler/BackEvent.component4|component4(){}[0]
final fun copy(kotlin/Float = ..., com.arkivanov.essenty.backhandler/BackEvent.SwipeEdge = ..., kotlin/Float = ..., kotlin/Float = ...): com.arkivanov.essenty.backhandler/BackEvent // com.arkivanov.essenty.backhandler/BackEvent.copy|copy(kotlin.Float;com.arkivanov.essenty.backhandler.BackEvent.SwipeEdge;kotlin.Float;kotlin.Float){}[0]
final fun equals(kotlin/Any?): kotlin/Boolean // com.arkivanov.essenty.backhandler/BackEvent.equals|equals(kotlin.Any?){}[0]
final fun hashCode(): kotlin/Int // com.arkivanov.essenty.backhandler/BackEvent.hashCode|hashCode(){}[0]
final fun toString(): kotlin/String // com.arkivanov.essenty.backhandler/BackEvent.toString|toString(){}[0]
final val progress // com.arkivanov.essenty.backhandler/BackEvent.progress|{}progress[0]
final fun <get-progress>(): kotlin/Float // com.arkivanov.essenty.backhandler/BackEvent.progress.<get-progress>|<get-progress>(){}[0]
final val swipeEdge // com.arkivanov.essenty.backhandler/BackEvent.swipeEdge|{}swipeEdge[0]
final fun <get-swipeEdge>(): com.arkivanov.essenty.backhandler/BackEvent.SwipeEdge // com.arkivanov.essenty.backhandler/BackEvent.swipeEdge.<get-swipeEdge>|<get-swipeEdge>(){}[0]
final val touchX // com.arkivanov.essenty.backhandler/BackEvent.touchX|{}touchX[0]
final fun <get-touchX>(): kotlin/Float // com.arkivanov.essenty.backhandler/BackEvent.touchX.<get-touchX>|<get-touchX>(){}[0]
final val touchY // com.arkivanov.essenty.backhandler/BackEvent.touchY|{}touchY[0]
final fun <get-touchY>(): kotlin/Float // com.arkivanov.essenty.backhandler/BackEvent.touchY.<get-touchY>|<get-touchY>(){}[0]
}
final fun com.arkivanov.essenty.backhandler/BackCallback(kotlin/Boolean = ..., kotlin/Int = ..., kotlin/Function1<com.arkivanov.essenty.backhandler/BackEvent, kotlin/Unit>? = ..., kotlin/Function1<com.arkivanov.essenty.backhandler/BackEvent, kotlin/Unit>? = ..., kotlin/Function0<kotlin/Unit>? = ..., kotlin/Function0<kotlin/Unit>): com.arkivanov.essenty.backhandler/BackCallback // com.arkivanov.essenty.backhandler/BackCallback|BackCallback(kotlin.Boolean;kotlin.Int;kotlin.Function1<com.arkivanov.essenty.backhandler.BackEvent,kotlin.Unit>?;kotlin.Function1<com.arkivanov.essenty.backhandler.BackEvent,kotlin.Unit>?;kotlin.Function0<kotlin.Unit>?;kotlin.Function0<kotlin.Unit>){}[0]
final fun com.arkivanov.essenty.backhandler/BackDispatcher(): com.arkivanov.essenty.backhandler/BackDispatcher // com.arkivanov.essenty.backhandler/BackDispatcher|BackDispatcher(){}[0]
2 changes: 2 additions & 0 deletions build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import com.arkivanov.gradle.AndroidConfig
import com.arkivanov.gradle.BinaryCompatibilityValidatorConfig
import com.arkivanov.gradle.PublicationConfig
import com.arkivanov.gradle.ensureUnreachableTasksDisabled
import com.arkivanov.gradle.iosCompat
Expand Down Expand Up @@ -71,6 +72,7 @@ setupDefaults(
repositoryUserName = "arkivanov",
repositoryPassword = System.getenv("SONATYPE_PASSWORD"),
),
binaryCompatibilityValidatorConfig = BinaryCompatibilityValidatorConfig(klib = true),
)

setupDetekt()
Expand Down
8 changes: 4 additions & 4 deletions deps.versions.toml
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
[versions]

essenty = "2.0.0"
kotlin = "1.9.23"
kotlinxBinaryCompatibilityValidator = "0.13.2"
kotlinxCoroutines = "1.8.0"
detektGradlePlugin = "1.23.3"
kotlin = "2.0.0"
kotlinxBinaryCompatibilityValidator = "0.15.0-Beta.2"
kotlinxCoroutines = "1.8.1"
detektGradlePlugin = "1.23.6"
junit = "4.13.2"
androidGradle = "8.0.2"
androidxLifecycle = "2.6.2"
Expand Down
33 changes: 33 additions & 0 deletions instance-keeper/api/instance-keeper.klib.api
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
// Klib ABI Dump
// Targets: [iosArm64, iosSimulatorArm64, iosX64, js, linuxX64, macosArm64, macosX64, tvosArm64, tvosSimulatorArm64, tvosX64, wasmJs, watchosArm32, watchosArm64, watchosSimulatorArm64, watchosX64]
// Rendering settings:
// - Signature version: 2
// - Show manifest properties: true
// - Show declarations: true

// Library unique name: <com.arkivanov.essenty:instance-keeper>
abstract interface com.arkivanov.essenty.instancekeeper/InstanceKeeper { // com.arkivanov.essenty.instancekeeper/InstanceKeeper|null[0]
abstract fun get(kotlin/Any): com.arkivanov.essenty.instancekeeper/InstanceKeeper.Instance? // com.arkivanov.essenty.instancekeeper/InstanceKeeper.get|get(kotlin.Any){}[0]
abstract fun put(kotlin/Any, com.arkivanov.essenty.instancekeeper/InstanceKeeper.Instance) // com.arkivanov.essenty.instancekeeper/InstanceKeeper.put|put(kotlin.Any;com.arkivanov.essenty.instancekeeper.InstanceKeeper.Instance){}[0]
abstract fun remove(kotlin/Any): com.arkivanov.essenty.instancekeeper/InstanceKeeper.Instance? // com.arkivanov.essenty.instancekeeper/InstanceKeeper.remove|remove(kotlin.Any){}[0]
abstract interface Instance { // com.arkivanov.essenty.instancekeeper/InstanceKeeper.Instance|null[0]
open fun onDestroy() // com.arkivanov.essenty.instancekeeper/InstanceKeeper.Instance.onDestroy|onDestroy(){}[0]
}
final class <#A1: out kotlin/Any?> SimpleInstance : com.arkivanov.essenty.instancekeeper/InstanceKeeper.Instance { // com.arkivanov.essenty.instancekeeper/InstanceKeeper.SimpleInstance|null[0]
constructor <init>(#A1) // com.arkivanov.essenty.instancekeeper/InstanceKeeper.SimpleInstance.<init>|<init>(1:0){}[0]
final val instance // com.arkivanov.essenty.instancekeeper/InstanceKeeper.SimpleInstance.instance|{}instance[0]
final fun <get-instance>(): #A1 // com.arkivanov.essenty.instancekeeper/InstanceKeeper.SimpleInstance.instance.<get-instance>|<get-instance>(){}[0]
}
}
abstract interface com.arkivanov.essenty.instancekeeper/InstanceKeeperDispatcher : com.arkivanov.essenty.instancekeeper/InstanceKeeper { // com.arkivanov.essenty.instancekeeper/InstanceKeeperDispatcher|null[0]
abstract fun destroy() // com.arkivanov.essenty.instancekeeper/InstanceKeeperDispatcher.destroy|destroy(){}[0]
}
abstract interface com.arkivanov.essenty.instancekeeper/InstanceKeeperOwner { // com.arkivanov.essenty.instancekeeper/InstanceKeeperOwner|null[0]
abstract val instanceKeeper // com.arkivanov.essenty.instancekeeper/InstanceKeeperOwner.instanceKeeper|{}instanceKeeper[0]
abstract fun <get-instanceKeeper>(): com.arkivanov.essenty.instancekeeper/InstanceKeeper // com.arkivanov.essenty.instancekeeper/InstanceKeeperOwner.instanceKeeper.<get-instanceKeeper>|<get-instanceKeeper>(){}[0]
}
final fun com.arkivanov.essenty.instancekeeper/InstanceKeeperDispatcher(): com.arkivanov.essenty.instancekeeper/InstanceKeeperDispatcher // com.arkivanov.essenty.instancekeeper/InstanceKeeperDispatcher|InstanceKeeperDispatcher(){}[0]
final inline fun <#A: com.arkivanov.essenty.instancekeeper/InstanceKeeper.Instance> (com.arkivanov.essenty.instancekeeper/InstanceKeeper).com.arkivanov.essenty.instancekeeper/getOrCreate(kotlin/Any, kotlin/Function0<#A>): #A // com.arkivanov.essenty.instancekeeper/getOrCreate|[email protected](kotlin.Any;kotlin.Function0<0:0>){0§<com.arkivanov.essenty.instancekeeper.InstanceKeeper.Instance>}[0]
final inline fun <#A: kotlin/Any?> (com.arkivanov.essenty.instancekeeper/InstanceKeeper).com.arkivanov.essenty.instancekeeper/getOrCreateSimple(kotlin/Any, kotlin/Function0<#A>): #A // com.arkivanov.essenty.instancekeeper/getOrCreateSimple|getOrCreateSimple@com.arkivanov.essenty.instancekeeper.InstanceKeeper(kotlin.Any;kotlin.Function0<0:0>){0§<kotlin.Any?>}[0]
final inline fun <#A: reified com.arkivanov.essenty.instancekeeper/InstanceKeeper.Instance> (com.arkivanov.essenty.instancekeeper/InstanceKeeper).com.arkivanov.essenty.instancekeeper/getOrCreate(kotlin/Function0<#A>): #A // com.arkivanov.essenty.instancekeeper/getOrCreate|[email protected](kotlin.Function0<0:0>){0§<com.arkivanov.essenty.instancekeeper.InstanceKeeper.Instance>}[0]
final inline fun <#A: reified kotlin/Any?> (com.arkivanov.essenty.instancekeeper/InstanceKeeper).com.arkivanov.essenty.instancekeeper/getOrCreateSimple(kotlin/Function0<#A>): #A // com.arkivanov.essenty.instancekeeper/getOrCreateSimple|getOrCreateSimple@com.arkivanov.essenty.instancekeeper.InstanceKeeper(kotlin.Function0<0:0>){0§<kotlin.Any?>}[0]
Loading

0 comments on commit c871033

Please sign in to comment.