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
621kotlin = " 2.2.10"
7- kotlinx-serialization = " 1.9.0 "
22+ kotlinx-binary-validator = " 0.18.1 "
823kotlinx-coroutines = " 1.10.2"
24+ kotlinx-serialization = " 1.9.0"
25+ # Code quality and coverage
26+ kover = " 0.9.1"
927ksp = " 2.2.10-2.0.2"
10-
1128# HTTP and networking
1229ktor = " 3.2.3"
13-
14- # Testing framework
15- junit = " 5.13.4"
1630mockito-junit-jupiter = " 5.19.0"
1731mockito-kotlin = " 6.0.0"
18- assertj-core = " 3.27.4 "
19- app-cash-turbine = " 1.0.0 "
32+ # Logging
33+ napier = " 2.7.1 "
2034org-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"
2835spotless = " 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"
3836touchlab-kmmbridge = " 1.2.1"
3937touchlab-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"
4838version-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
5357kotlin-test = { module = " org.jetbrains.kotlin:kotlin-test" , version.ref = " kotlin" }
5458kotlin-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" }
5659kotlinx-coroutines-core = { module = " org.jetbrains.kotlinx:kotlinx-coroutines-core" , version.ref = " kotlinx-coroutines" }
5760kotlinx-coroutines-test = { module = " org.jetbrains.kotlinx:kotlinx-coroutines-test" , version.ref = " kotlinx-coroutines" }
5861kotlinx-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" }
6262ktor-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
6864ktor-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" }
7068ktor-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" }
7673mockito-junit-jupiter = { module = " org.mockito:mockito-junit-jupiter" , version.ref = " mockito-junit-jupiter" }
7774mockito-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
9176napier = { 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
10781jvm-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
11694kotlin-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
135110androidLibrary = { 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
140112build-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
149115com-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" }
150120kotlinx-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" }
151128version-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