forked from igorwojda/android-showcase
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathlibs.versions.toml
123 lines (112 loc) · 6.87 KB
/
libs.versions.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
[versions]
kotlin = "1.7.20"
# KSP depends on specific Kotlin version, so it must be upgraded together with Kotlin (disabled in Renovate)
# https://repo.maven.apache.org/maven2/com/google/devtools/ksp/symbol-processing-gradle-plugin/
kotlinSymbolProcessing = "1.7.20-1.0.7"
# Compose compiler depends on specific Kotlin version, so it must be upgraded together with Kotlin (disabled in Renovate)
# https://developer.android.com/jetpack/androidx/releases/compose-kotlin
kotlinCompilerExtensionVersion = "1.3.2"
navigation = "2.5.3"
testLogger = "3.2.0"
coroutines = "1.6.4"
retrofit = "2.9.0"
okhttp = "4.10.0"
koin = "3.3.0"
coil = "2.2.2"
# verison 2.6.0-alpha01 has collectAsStateWithLifecycle
# https://issuetracker.google.com/issues/230557927?hl=id
lifecycle = "2.6.0-alpha03"
room = "2.4.3"
serializationJson = "1.4.1"
kotlinxSerializationConverter = "0.8.0"
viewBindingPropertyDelegate = "1.5.6"
timber = "5.0.1"
constraintLayout = "2.1.4"
appCompat = "1.5.1"
recyclerView = "1.2.1"
compose = "1.3.0"
materialCompose = "1.0.0"
material = "1.7.0"
lottie = "5.2.0"
playCore = "1.10.3"
coreKtx = "1.9.0"
fragmentKtx = "1.5.4"
# Info https://google.github.io/accompanist/flowlayout/
# Repo https://oss.sonatype.org/content/repositories/snapshots/com/google/accompanist/accompanist-flowlayout/
accompanistFlowLayout = "0.27.0"
detekt = "1.22.0-RC3"
androidGradlePlugin = "7.3.1"
# Test versionsandroid-junit5-plugin-dsl
junit = "5.9.1"
androidJUnit5 = "1.8.2.1"
kluent = "1.72"
testRunner = "1.5.1"
mockk = "1.13.2"
espresso = "3.5.0"
coreTesting = "2.1.0"
[libraries]
kotlin = { module = "org.jetbrains.kotlin:kotlin-reflect", version.ref = "kotlin" }
junit = { module = "junit:junit", version.ref = "junit" }
coroutines = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-android", version.ref = "coroutines" }
retrofitCore = { module = "com.squareup.retrofit2:retrofit", version.ref = "retrofit" }
kotlinxSerializationConverter = { module = "com.jakewharton.retrofit:retrofit2-kotlinx-serialization-converter", version.ref = "kotlinxSerializationConverter" }
serializationJson = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json", version.ref = "serializationJson" }
# Retrofit will use okhttp 4 (it has binary capability with okhttp 3)
# See: https://square.github.io/okhttp/upgrading_to_okhttp_4/
okhttp = { module = "com.squareup.okhttp3:okhttp", version.ref = "okhttp" }
okhttpInterceptor = { module = "com.squareup.okhttp3:logging-interceptor", version.ref = "okhttp" }
koin = { module = "io.insert-koin:koin-android", version.ref = "koin" }
koinNavigation = { module = "io.insert-koin:koin-androidx-navigation", version.ref = "koin" }
viewBindingPropertyDelegate = { module = "com.github.kirich1409:viewbindingpropertydelegate", version.ref = "viewBindingPropertyDelegate" }
timber = { module = "com.jakewharton.timber:timber", version.ref = "timber" }
constraintLayout = { module = "androidx.constraintlayout:constraintlayout", version.ref = "constraintLayout" }
appCompat = { module = "androidx.appcompat:appcompat", version.ref = "appCompat" }
recyclerView = { module = "androidx.recyclerview:recyclerview", version.ref = "recyclerView" }
composeMaterial = { module = "androidx.compose.material3:material3", version.ref = "materialCompose" }
material = { module = "com.google.android.material:material", version.ref = "material" }
lottie = { module = "com.airbnb.android:lottie-compose", version.ref = "lottie" }
coil = { module = "io.coil-kt:coil-compose", version.ref = "coil" }
playCore = { module = "com.google.android.play:core", version.ref = "playCore" }
coreKtx = { module = "androidx.core:core-ktx", version.ref = "coreKtx" }
fragmentKtx = { module = "androidx.fragment:fragment-ktx", version.ref = "fragmentKtx" }
viewmodelKtx = { module = "androidx.lifecycle:lifecycle-viewmodel-ktx", version.ref = "lifecycle" }
livedataKtx = { module = "androidx.lifecycle:lifecycle-livedata-ktx", version.ref = "lifecycle" }
composeUI = { module = "androidx.compose.ui:ui", version.ref = "compose" }
toolingPreview = { module = "androidx.compose.ui:ui-tooling-preview", version.ref = "compose" }
livedataRuntime = { module = "androidx.lifecycle:lifecycle-runtime-compose", version.ref = "lifecycle" }
navigationFragment = { module = "androidx.navigation:navigation-fragment-ktx", version.ref = "navigation" }
navigationUiKtx = { module = "androidx.navigation:navigation-ui-ktx", version.ref = "navigation" }
roomKtx = { module = "androidx.room:room-ktx", version.ref = "room" }
roomRuntime = { module = "androidx.room:room-runtime", version.ref = "room" }
roomCompiler = { module = "androidx.room:room-compiler", version.ref = "room" }
accompanistFlowLayout = { module = "com.google.accompanist:accompanist-flowlayout", version.ref = "accompanistFlowLayout" }
detektFormatting = { module = "io.gitlab.arturbosch.detekt:detekt-formatting", version.ref = "detekt" }
# Test dependencies
testCoroutines = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-test", version.ref = "coroutines" }
kluent = { module = "org.amshove.kluent:kluent-android", version.ref = "kluent" }
testRunner = { module = "androidx.test:runner", version.ref = "testRunner" }
espresso = { module = "androidx.test.espresso:espresso-core", version.ref = "espresso" }
mockk = { module = "io.mockk:mockk", version.ref = "mockk" }
coreTesting = { module = "androidx.arch.core:core-testing", version.ref = "coreTesting" }
junitJupiterApi = { module = "org.junit.jupiter:junit-jupiter-api", version.ref = "junit" }
junitJupiterEngine = { module = "org.junit.jupiter:junit-jupiter-engine", version.ref = "junit" }
[bundles]
retrofit = ["retrofitCore", "kotlinxSerializationConverter", "serializationJson", "okhttp", "okhttpInterceptor"]
koin = ["koin", "koinNavigation"]
compose = ["composeUI", "toolingPreview", "lottie", "coil"]
lifecycle = ["viewmodelKtx", "livedataKtx", "livedataRuntime"]
navigation = ["navigationFragment", "navigationUiKtx"]
room = ["roomKtx", "roomRuntime"]
test = ["testCoroutines", "kluent", "testRunner", "espresso", "mockk", "coreTesting", "junitJupiterApi", "junitJupiterEngine"]
[plugins]
# Search Gradle Plugins https://plugins.gradle.org/
android-application = { id = "com.android.application", version.ref = "androidGradlePlugin" }
android-library = { id = "com.android.library", version.ref = "androidGradlePlugin" }
kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" }
kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" }
kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }
kotlin-symbolProcessing = { id = "com.google.devtools.ksp", version.ref = "kotlinSymbolProcessing" }
detekt = { id = "io.gitlab.arturbosch.detekt", version.ref = "detekt" }
safeArgs = { id = "androidx.navigation.safeargs.kotlin", version.ref = "navigation" }
junit5Android = { id = "de.mannodermaus.android-junit5", version.ref = "androidJUnit5" }
testLogger = { id = "com.adarshr.test-logger", version.ref = "testLogger" }