Skip to content

Commit 8c6ca16

Browse files
Merge pull request #28 from matejsemancik/feature/update-dependencies
Upgrade Kotlin to latest 2.3.20, CMP and other dependencies
2 parents d0c4d2d + 966fbf4 commit 8c6ca16

17 files changed

Lines changed: 36 additions & 40 deletions

File tree

build.gradle.kts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,5 @@ plugins {
88
alias(libs.plugins.ktorfit) apply false
99
alias(libs.plugins.kotlinx.serialization) apply false
1010
alias(libs.plugins.androidx.room) apply false
11-
}
11+
alias(libs.plugins.composeHotReload) apply false
12+
}

desktopApp/build.gradle.kts

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import org.jetbrains.compose.desktop.application.dsl.TargetFormat
2-
import org.jetbrains.kotlin.compose.compiler.gradle.ComposeFeatureFlag
32

43
plugins {
54
alias(libs.plugins.kotlinMultiplatform)
@@ -8,11 +7,6 @@ plugins {
87
alias(libs.plugins.composeHotReload)
98
}
109

11-
// https://github.com/JetBrains/compose-hot-reload?tab=readme-ov-file#enable-optimizenonskippinggroups
12-
composeCompiler {
13-
featureFlags.add(ComposeFeatureFlag.OptimizeNonSkippingGroups)
14-
}
15-
1610
kotlin {
1711
jvm("desktop")
1812

desktopApp/src/desktopMain/kotlin/dev/matsem/bpm/main.kt

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ import dev.matsem.bpm.injection.AppInjection
3030
import dev.matsem.bpm.tooling.Platform
3131
import dev.matsem.bpm.tooling.isMetaOrCtrlPressed
3232
import org.jetbrains.compose.resources.painterResource
33-
import org.koin.compose.KoinContext
3433
import org.koin.compose.koinInject
3534
import java.awt.Desktop
3635
import java.awt.Taskbar
@@ -39,9 +38,7 @@ import java.awt.desktop.AppReopenedListener
3938
fun main() {
4039
AppInjection.initializeInjection()
4140
application {
42-
KoinContext {
43-
MainApplication()
44-
}
41+
MainApplication()
4542
}
4643
}
4744

gradle/libs.versions.toml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
[versions]
22
androidx-lifecycle = "2.8.4"
3-
compose-multiplatform = "1.8.0"
4-
compose-hotReload = "1.0.0-alpha09"
3+
compose-multiplatform = "1.10.2"
4+
compose-hotReload = "1.1.0-beta01"
55
junit = "4.13.2"
6-
kotlin = "2.1.20"
7-
ksp = "2.1.20-1.0.31"
8-
kotlinx-coroutines = "1.10.1"
6+
kotlin = "2.3.20"
7+
ksp = "2.3.6"
8+
kotlinx-coroutines = "1.10.2"
99
kotlinx-collections = "0.3.8"
10-
kotlinx-datetime = "0.6.1"
10+
kotlinx-datetime = "0.7.1"
1111
kotlinx-serialization = "2.1.0"
12-
ktorfit = "2.5.0"
13-
koin = "4.1.0-Beta5"
14-
ktor = "3.1.3"
12+
ktorfit = "2.7.2"
13+
koin = "4.2.0"
14+
ktor = "3.4.1"
1515
coil = "3.0.4"
1616
dataStore = "1.1.2"
1717
androidx-room = "2.7.2"

settings.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ dependencyResolutionManagement {
3535
}
3636

3737
plugins {
38-
id("org.gradle.toolchains.foojay-resolver-convention") version "0.10.0"
38+
id("org.gradle.toolchains.foojay-resolver-convention") version "1.0.0"
3939
}
4040

4141
include(":desktopApp")

shared/build.gradle.kts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,3 +76,7 @@ dependencies {
7676
room {
7777
schemaDirectory(project.layout.projectDirectory.dir("room-schemas"))
7878
}
79+
80+
ktorfit {
81+
compilerPluginVersion.set("2.3.3")
82+
}

shared/src/commonMain/kotlin/dev/matsem/bpm/data/database/model/Timer.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import androidx.room.ForeignKey
77
import androidx.room.Index
88
import androidx.room.PrimaryKey
99
import androidx.room.Relation
10-
import kotlinx.datetime.Instant
10+
import kotlin.time.Instant
1111

1212
@Entity(
1313
tableName = "timer",
@@ -51,4 +51,4 @@ data class TimerComplete(
5151
entityColumn = "id"
5252
)
5353
val issue: JiraIssue,
54-
)
54+
)

shared/src/commonMain/kotlin/dev/matsem/bpm/data/database/typeConverter/JsonTypeConverters.kt

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,12 @@
11
package dev.matsem.bpm.data.database.typeConverter
22

33
import androidx.room.TypeConverter
4-
import kotlinx.datetime.Instant
4+
import kotlinx.serialization.builtins.serializer
55
import kotlinx.serialization.json.Json
6+
import kotlin.time.ExperimentalTime
7+
import kotlin.time.Instant
68

9+
@OptIn(ExperimentalTime::class)
710
internal class JsonTypeConverters {
811

912
// When implemented using @ProvidedTypeConverter according to documentation, the runtime error is thrown,
@@ -25,4 +28,4 @@ internal class JsonTypeConverters {
2528
@TypeConverter
2629
fun jsonToInstant(string: String): Instant =
2730
json.decodeFromString(Instant.serializer(), string)
28-
}
31+
}

shared/src/commonMain/kotlin/dev/matsem/bpm/data/repo/TimerRepo.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import dev.matsem.bpm.data.repo.model.Issue
88
import dev.matsem.bpm.data.repo.model.Timer
99
import kotlinx.coroutines.flow.Flow
1010
import kotlinx.coroutines.flow.map
11-
import kotlinx.datetime.Clock
11+
import kotlin.time.Clock
1212
import dev.matsem.bpm.data.database.model.Timer as Timer_Database
1313

1414
interface TimerRepo {

shared/src/commonMain/kotlin/dev/matsem/bpm/data/repo/WorklogRepo.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,16 +16,16 @@ import kotlinx.coroutines.flow.asStateFlow
1616
import kotlinx.coroutines.flow.update
1717
import kotlinx.coroutines.launch
1818
import kotlinx.coroutines.plus
19-
import kotlinx.datetime.Clock
2019
import kotlinx.datetime.DateTimeUnit
21-
import kotlinx.datetime.Instant
2220
import kotlinx.datetime.LocalDate
2321
import kotlinx.datetime.TimeZone
2422
import kotlinx.datetime.minus
2523
import kotlinx.datetime.plus
2624
import kotlinx.datetime.toLocalDateTime
25+
import kotlin.time.Clock
2726
import kotlin.time.Duration
2827
import kotlin.time.Duration.Companion.seconds
28+
import kotlin.time.Instant
2929

3030
/**
3131
* Interface for managing worklogs and retrieving related work statistics.

0 commit comments

Comments
 (0)