Skip to content

Commit 3b17387

Browse files
committed
chore(gradle): reorganize and clean up libs.versions.toml
Reorder dependencies and bundles in the version catalog for clarity and maintainability. Group related libraries and plugins, remove duplicates, and improve structure without changing versions.
1 parent 1c78b16 commit 3b17387

File tree

1 file changed

+72
-96
lines changed

1 file changed

+72
-96
lines changed

gradle/libs.versions.toml

Lines changed: 72 additions & 96 deletions
Original file line numberDiff line numberDiff line change
@@ -1,152 +1,128 @@
11
# Version catalog for OpenAI Kotlin SDK
22
# Organized for maintainability and modern Gradle practices
3-
43
[versions]
4+
# Mobile development
5+
agp = "8.12.1"
6+
app-cash-turbine = "1.2.1"
7+
assertj-core = "3.27.4"
8+
central-publisher = "0.0.6"
9+
# Gradle plugins
10+
com-linecorp-build-recipe-plugin = "1.1.1"
11+
dependency-analysis = "3.0.0"
12+
# Documentation
13+
dokka = "2.0.0"
14+
gradle-kotlinter = "5.2.0"
15+
# Testing framework
16+
junit = "5.13.4"
17+
koin-annotations = "2.1.0"
18+
# Dependency Injection
19+
koin-core = "4.1.0"
520
# Core language and frameworks
621
kotlin = "2.2.10"
7-
kotlinx-serialization = "1.9.0"
22+
kotlinx-binary-validator = "0.18.1"
823
kotlinx-coroutines = "1.10.2"
24+
kotlinx-serialization = "1.9.0"
25+
# Code quality and coverage
26+
kover = "0.9.1"
927
ksp = "2.2.10-2.0.2"
10-
1128
# HTTP and networking
1229
ktor = "3.2.3"
13-
14-
# Testing framework
15-
junit = "5.13.4"
1630
mockito-junit-jupiter = "5.19.0"
1731
mockito-kotlin = "6.0.0"
18-
assertj-core = "3.27.4"
19-
app-cash-turbine = "1.0.0"
32+
# Logging
33+
napier = "2.7.1"
2034
org-skyscreamer-jsonassert = "1.5.3"
21-
22-
# Dependency Injection
23-
koin-core = "4.1.0"
24-
koin-annotations = "2.1.0"
25-
26-
# Code quality and coverage
27-
kover = "0.9.1"
2835
spotless = "7.2.1"
29-
dependency-analysis = "3.0.0"
30-
31-
# Documentation
32-
dokka = "2.0.0"
33-
34-
# Mobile development
35-
agp = "8.12.1"
36-
android-compileSdk = "34"
37-
android-minSdk = "24"
3836
touchlab-kmmbridge = "1.2.1"
3937
touchlab-skie = "0.10.6"
40-
41-
# Logging
42-
napier = "2.7.1"
43-
44-
# Gradle plugins
45-
com-linecorp-build-recipe-plugin = "1.1.1"
46-
gradle-kotlinter = "5.2.0"
47-
kotlinx-binary-validator = "0.18.1"
4838
version-catalog-update = "1.0.0"
49-
central-publisher = "0.2.0-alpha.1"
5039

5140
[libraries]
41+
app-cash-turbine = { module = "app.cash.turbine:turbine", version.ref = "app-cash-turbine" }
42+
assertj-core = { module = "org.assertj:assertj-core", version.ref = "assertj-core" }
43+
# Code quality tools
44+
gradle-kotlinter = { module = "org.jmailen.gradle:kotlinter-gradle", version.ref = "gradle-kotlinter" }
45+
juinit-jupiter = { module = "org.junit.jupiter:junit-jupiter", version.ref = "junit" }
46+
# Testing libraries
47+
junit-bom = { module = "org.junit:junit-bom", version.ref = "junit" }
48+
koin-annotations = { module = "io.insert-koin:koin-annotations", version.ref = "koin-annotations" }
49+
# Dependency Injection
50+
koin-core = { module = "io.insert-koin:koin-core", version.ref = "koin-core" }
51+
koin-core-jvm = { module = "io.insert-koin:koin-core-jvm", version.ref = "koin-core" }
52+
koin-ksp-compiler = { module = "io.insert-koin:koin-ksp-compiler", version.ref = "koin-annotations" }
53+
koin-test = { module = "io.insert-koin:koin-test", version.ref = "koin-core" }
54+
koin-test-junit5 = { module = "io.insert-koin:koin-test-junit5", version.ref = "koin-core" }
55+
kotlin-gradle-plugin = { module = "org.jetbrains.kotlin:kotlin-gradle-plugin", version.ref = "kotlin" }
5256
# Core Kotlin libraries
5357
kotlin-test = { module = "org.jetbrains.kotlin:kotlin-test", version.ref = "kotlin" }
5458
kotlin-test-junit = { module = "org.jetbrains.kotlin:kotlin-test-junit", version.ref = "kotlin" }
55-
kotlin-gradle-plugin = { module = "org.jetbrains.kotlin:kotlin-gradle-plugin", version.ref = "kotlin" }
5659
kotlinx-coroutines-core = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "kotlinx-coroutines" }
5760
kotlinx-coroutines-test = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-test", version.ref = "kotlinx-coroutines" }
5861
kotlinx-serialization-json = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json", version.ref = "kotlinx-serialization" }
59-
60-
# HTTP and networking
61-
ktor-client-core = { module = "io.ktor:ktor-client-core", version.ref = "ktor" }
6262
ktor-client-auth = { module = "io.ktor:ktor-client-auth", version.ref = "ktor" }
63-
ktor-client-content-negotiation = { module = "io.ktor:ktor-client-content-negotiation", version.ref = "ktor" }
64-
ktor-client-logging = { module = "io.ktor:ktor-client-logging", version.ref = "ktor" }
65-
ktor-serialization-kotlinx-json = { module = "io.ktor:ktor-serialization-kotlinx-json", version.ref = "ktor" }
66-
6763
# Platform-specific HTTP clients
6864
ktor-client-cio = { module = "io.ktor:ktor-client-cio", version.ref = "ktor" }
69-
ktor-client-okhttp = { module = "io.ktor:ktor-client-okhttp", version.ref = "ktor" }
65+
ktor-client-content-negotiation = { module = "io.ktor:ktor-client-content-negotiation", version.ref = "ktor" }
66+
# HTTP and networking
67+
ktor-client-core = { module = "io.ktor:ktor-client-core", version.ref = "ktor" }
7068
ktor-client-darwin = { module = "io.ktor:ktor-client-darwin", version.ref = "ktor" }
71-
72-
# Testing libraries
73-
junit-bom = { module = "org.junit:junit-bom", version.ref = "junit" }
74-
juinit-jupiter = { module = "org.junit.jupiter:junit-jupiter", version.ref = "junit" }
75-
assertj-core = { module = "org.assertj:assertj-core", version.ref = "assertj-core" }
69+
ktor-client-logging = { module = "io.ktor:ktor-client-logging", version.ref = "ktor" }
70+
ktor-client-mock = { module = "io.ktor:ktor-client-mock", version.ref = "ktor" }
71+
ktor-client-okhttp = { module = "io.ktor:ktor-client-okhttp", version.ref = "ktor" }
72+
ktor-serialization-kotlinx-json = { module = "io.ktor:ktor-serialization-kotlinx-json", version.ref = "ktor" }
7673
mockito-junit-jupiter = { module = "org.mockito:mockito-junit-jupiter", version.ref = "mockito-junit-jupiter" }
7774
mockito-kotlin = { module = "org.mockito.kotlin:mockito-kotlin", version.ref = "mockito-kotlin" }
78-
ktor-client-mock = { module = "io.ktor:ktor-client-mock", version.ref = "ktor" }
79-
app-cash-turbine = { module = "app.cash.turbine:turbine", version.ref = "app-cash-turbine" }
80-
org-skyscreamer-jsonassert = { module = "org.skyscreamer:jsonassert", version.ref = "org-skyscreamer-jsonassert" }
81-
82-
# Dependency Injection
83-
koin-core = { module = "io.insert-koin:koin-core", version.ref = "koin-core" }
84-
koin-core-jvm = { module = "io.insert-koin:koin-core-jvm", version.ref = "koin-core" }
85-
koin-test = { module = "io.insert-koin:koin-test", version.ref = "koin-core" }
86-
koin-test-junit5 = { module = "io.insert-koin:koin-test-junit5", version.ref = "koin-core" }
87-
koin-annotations = { module = "io.insert-koin:koin-annotations", version.ref = "koin-annotations" }
88-
koin-ksp-compiler = { module = "io.insert-koin:koin-ksp-compiler", version.ref = "koin-annotations" }
89-
9075
# Logging
9176
napier = { module = "io.github.aakira:napier", version.ref = "napier" }
92-
93-
# Code quality tools
94-
gradle-kotlinter = { module = "org.jmailen.gradle:kotlinter-gradle", version.ref = "gradle-kotlinter" }
77+
org-skyscreamer-jsonassert = { module = "org.skyscreamer:jsonassert", version.ref = "org-skyscreamer-jsonassert" }
9578

9679
[bundles]
97-
# HTTP client bundle
98-
ktor-client = [
99-
"ktor-client-core",
100-
"ktor-client-auth",
101-
"ktor-client-content-negotiation",
102-
"ktor-client-logging",
103-
"ktor-serialization-kotlinx-json"
104-
]
105-
10680
# Testing bundle for JVM projects
10781
jvm-test = [
82+
"assertj-core",
10883
"juinit-jupiter",
109-
"assertj-core",
84+
"ktor-client-mock",
11085
"mockito-junit-jupiter",
11186
"mockito-kotlin",
112-
"ktor-client-mock"
11387
]
114-
88+
# Dependency injection bundle
89+
koin = [
90+
"koin-annotations",
91+
"koin-core",
92+
]
11593
# Kotlin testing bundle
11694
kotlin-test = [
11795
"kotlin-test",
11896
"kotlin-test-junit",
119-
"kotlinx-coroutines-test"
97+
"kotlinx-coroutines-test",
12098
]
121-
122-
# Dependency injection bundle
123-
koin = [
124-
"koin-core",
125-
"koin-annotations"
99+
# HTTP client bundle
100+
ktor-client = [
101+
"ktor-client-auth",
102+
"ktor-client-content-negotiation",
103+
"ktor-client-core",
104+
"ktor-client-logging",
105+
"ktor-serialization-kotlinx-json",
126106
]
127107

128108
[plugins]
129-
# Kotlin plugins
130-
kotlinMultiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" }
131-
kotlinx-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }
132-
ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" }
133-
134109
# Mobile development
135110
androidLibrary = { id = "com.android.library", version.ref = "agp" }
136-
touchlab-kmmbridge = { id = "co.touchlab.kmmbridge.github", version.ref = "touchlab-kmmbridge" }
137-
touchlab-skie = { id = "co.touchlab.skie", version.ref = "touchlab-skie" }
138-
139111
# Documentation
140112
build-dokka-plugin = { id = "org.jetbrains.dokka", version.ref = "dokka" }
141-
142-
# Code quality and coverage
143-
kover = { id = "org.jetbrains.kotlinx.kover", version.ref = "kover" }
144-
spotless = { id = "com.diffplug.spotless", version.ref = "spotless" }
145-
dependency-analysis = { id = "com.autonomousapps.dependency-analysis", version.ref = "dependency-analysis" }
146-
gradle-kotlinter = { id = "org.jmailen.kotlinter", version.ref = "gradle-kotlinter" }
147-
113+
central-publisher = { id = "com.tddworks.central-publisher", version.ref = "central-publisher" }
148114
# Build tools
149115
com-linecorp-build-recipe = { id = "com.linecorp.build-recipe-plugin", version.ref = "com-linecorp-build-recipe-plugin" }
116+
dependency-analysis = { id = "com.autonomousapps.dependency-analysis", version.ref = "dependency-analysis" }
117+
gradle-kotlinter = { id = "org.jmailen.kotlinter", version.ref = "gradle-kotlinter" }
118+
# Kotlin plugins
119+
kotlinMultiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" }
150120
kotlinx-binary-validator = { id = "org.jetbrains.kotlinx.binary-compatibility-validator", version.ref = "kotlinx-binary-validator" }
121+
kotlinx-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }
122+
# Code quality and coverage
123+
kover = { id = "org.jetbrains.kotlinx.kover", version.ref = "kover" }
124+
ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" }
125+
spotless = { id = "com.diffplug.spotless", version.ref = "spotless" }
126+
touchlab-kmmbridge = { id = "co.touchlab.kmmbridge.github", version.ref = "touchlab-kmmbridge" }
127+
touchlab-skie = { id = "co.touchlab.skie", version.ref = "touchlab-skie" }
151128
version-catalog-update = { id = "nl.littlerobots.version-catalog-update", version.ref = "version-catalog-update" }
152-
central-publisher = { id = "com.tddworks.central-publisher", version.ref = "central-publisher" }

0 commit comments

Comments
 (0)