1+ # https://docs.gradle.org/current/userguide/plugins.html#sec:version_catalog_plugin_application
2+ # https://docs.gradle.org/current/userguide/dependency_versions.html#sec:strict-version
13[versions ]
24acraCore = " 5.12.0"
5+ androidGradlePlugin = { strictly = " 8.9.3" }
36appcompat = " 1.7.1"
4- biometric = " 1.4.0-alpha04"
5- buildkonfigGradlePlugin = " 0.15.2 "
6- coil = " 3.1.0 "
7+ biometric = { require = " 1.4.0-alpha04" }
8+ buildkonfigGradlePlugin = " 0.17.1 "
9+ coil = { strictly = " [ 3.1, 3.3[ " } # do not update above 3.2, it's tied to "kotlinGradlePlugin" version
710colorpicker = " 6b46b49bd5"
8- conscryptAndroid = " 2.5.2"
11+ conscryptAndroid = { strictly = " 2.5.2" } # 2.5.3+ crashes everything for everyone.
912constraintlayout = " 2.2.1"
1013coreKtx = " 1.16.0"
1114desugar_jdk_libs_nio = " 2.1.5"
1215dokkaGradlePlugin = " 2.0.0"
13- espressoCore = " 3.6.1 "
16+ espressoCore = " 3.7.0 "
1417fuzzywuzzy = " 1.4.0"
15- gradle = " 8.9.3 "
16- jacksonModuleKotlin = " 2.13.1"
17- json = " 20250107 "
18+ gradleVersionsPlugin = " 0.52.0 "
19+ jacksonModuleKotlin = { strictly = " 2.13.1" } # do not upgrade above 2.13.1, Crashes on Android TV's and FireSticks that have Min API Level 25 or Less.
20+ json = " 20250517 "
1821junit = " 4.13.2"
19- junitKtx = " 1.2.1 "
20- junitVersion = " 1.2.1 "
22+ junitKtx = " 1.3.0 "
23+ junitVersion = " 1.3.0 "
2124juniversalchardet = " 2.5.0"
22- kotlinGradlePluginVersion = " 2.1.10 "
23- kotlinxCoroutinesCore = " 1.10.1 "
24- lifecycleLivedataKtx = " 2.8.7 "
25- lifecycleViewmodelKtx = " 2.8.7 "
25+ kotlinGradlePlugin = { strictly = " [ 2.1, 2.2[ " } # do not upgrade above 2.1, it's tied to "androidGradle" version
26+ kotlinxCoroutinesCore = " 1.10.2 "
27+ lifecycleLivedataKtx = " 2.9.2 "
28+ lifecycleViewmodelKtx = " 2.9.2 "
2629material = " 1.12.0"
27- media3 = " 1.6.1 "
28- navigationKtx = " 2.8.9 "
29- newpipeextractor = " v0.24.6 "
30+ media3 = " 1.8.0 "
31+ navigationKtx = " 2.9.3 "
32+ newpipeextractor = " v0.24.8 "
3033nextlibMedia3 = " 0.8.4"
3134nicehttp = " 0.4.13"
3235overlappingpanels = " 0.1.5"
3336paletteKtx = " 1.0.0"
3437preferenceKtx = " 1.2.1"
3538previewseekbarMedia3 = " 1.1.1.0"
36- qrcodeKotlin = " 4.3 .0"
39+ qrcodeKotlin = " 4.5 .0"
3740rhino = " 1.8.0"
3841safefile = " 0.0.8"
3942shimmer = " 0.5.0"
4043swiperefreshlayout = " 1.1.0"
41- tmdbJava = " 2.11 .0"
44+ tmdbJava = " 2.12 .0"
4245torrentserver = " 7861970e038b35cd8c6918384e49caf26903e09e"
43- tvprovider = " 1.0 .0"
46+ tvprovider = " 1.1 .0"
4447video = " 1.0.0"
45- workRuntime = " 2.10.0 "
46- workRuntimeKtx = " 2.10.0 "
48+ workRuntime = " 2.10.3 "
49+ workRuntimeKtx = " 2.10.3 "
4750
4851jvmTarget = " 1.8"
4952minSdk = " 21"
@@ -53,34 +56,34 @@ targetSdk = "35"
5356[libraries ]
5457acra-core = { module = " ch.acra:acra-core" , version.ref = " acraCore" }
5558acra-toast = { module = " ch.acra:acra-toast" , version.ref = " acraCore" }
59+ android-gradle-plugin = { module = " com.android.tools.build:gradle" , version.ref = " androidGradlePlugin" }
5660appcompat = { module = " androidx.appcompat:appcompat" , version.ref = " appcompat" }
5761biometric = { module = " androidx.biometric:biometric" , version.ref = " biometric" }
58- buildkonfig-gradle-plugin = { module = " com.codingfeline.buildkonfig:buildkonfig-gradle-plugin" , version.ref = " buildkonfigGradlePlugin" }
5962coil = { module = " io.coil-kt.coil3:coil" , version.ref = " coil" }
6063coil-network-okhttp = { module = " io.coil-kt.coil3:coil-network-okhttp" , version.ref = " coil" }
6164colorpicker = { module = " com.github.recloudstream:color-picker-android" , version.ref = " colorpicker" }
6265conscrypt-android = { module = " org.conscrypt:conscrypt-android" , version.ref = " conscryptAndroid" }
6366constraintlayout = { module = " androidx.constraintlayout:constraintlayout" , version.ref = " constraintlayout" }
6467core = { module = " androidx.test:core" }
6568core-ktx = { module = " androidx.core:core-ktx" , version.ref = " coreKtx" }
69+ databinding = { module = " androidx.databinding:viewbinding" , version.ref = " androidGradlePlugin" }
6670desugar_jdk_libs_nio = { module = " com.android.tools:desugar_jdk_libs_nio" , version.ref = " desugar_jdk_libs_nio" }
67- dokka-gradle-plugin = { module = " org.jetbrains.dokka:dokka-gradle-plugin" , version.ref = " dokkaGradlePlugin" }
6871espresso-core = { module = " androidx.test.espresso:espresso-core" , version.ref = " espressoCore" }
6972ext-junit = { module = " androidx.test.ext:junit" , version.ref = " junitVersion" }
7073fuzzywuzzy = { module = " me.xdrop:fuzzywuzzy" , version.ref = " fuzzywuzzy" }
71- gradle = { module = " com.android.tools.build:gradle" , version.ref = " gradle" }
7274jackson-module-kotlin = { module = " com.fasterxml.jackson.module:jackson-module-kotlin" , version.ref = " jacksonModuleKotlin" }
73- jetbrains-kotlin-gradle-plugin = { module = " org.jetbrains.kotlin:kotlin-gradle-plugin" , version.ref = " kotlinGradlePluginVersion" }
7475json = { module = " org.json:json" , version.ref = " json" }
7576junit = { module = " junit:junit" , version.ref = " junit" }
7677junit-ktx = { module = " androidx.test.ext:junit-ktx" , version.ref = " junitKtx" }
7778juniversalchardet = { module = " com.github.albfernandez:juniversalchardet" , version.ref = " juniversalchardet" }
79+ kotlin-gradle-plugin = { module = " org.jetbrains.kotlin:kotlin-gradle-plugin" , version.ref = " kotlinGradlePlugin" }
7880kotlinx-coroutines-core = { module = " org.jetbrains.kotlinx:kotlinx-coroutines-core" , version.ref = " kotlinxCoroutinesCore" }
7981lifecycle-livedata-ktx = { module = " androidx.lifecycle:lifecycle-livedata-ktx" , version.ref = " lifecycleLivedataKtx" }
8082lifecycle-viewmodel-ktx = { module = " androidx.lifecycle:lifecycle-viewmodel-ktx" , version.ref = " lifecycleViewmodelKtx" }
8183material = { module = " com.google.android.material:material" , version.ref = " material" }
8284media3-cast = { module = " androidx.media3:media3-cast" , version.ref = " media3" }
8385media3-common = { module = " androidx.media3:media3-common" , version.ref = " media3" }
86+ media3-container = { module = " androidx.media3:media3-container " , version.ref = " media3" }
8487media3-datasource-okhttp = { module = " androidx.media3:media3-datasource-okhttp" , version.ref = " media3" }
8588media3-exoplayer = { module = " androidx.media3:media3-exoplayer" , version.ref = " media3" }
8689media3-exoplayer-dash = { module = " androidx.media3:media3-exoplayer-dash" , version.ref = " media3" }
@@ -98,8 +101,8 @@ palette-ktx = { module = "androidx.palette:palette-ktx", version.ref = "paletteK
98101preference-ktx = { module = " androidx.preference:preference-ktx" , version.ref = " preferenceKtx" }
99102previewseekbar-media3 = { module = " com.github.rubensousa:previewseekbar-media3" , version.ref = " previewseekbarMedia3" }
100103qrcode-kotlin = { module = " io.github.g0dkar:qrcode-kotlin" , version.ref = " qrcodeKotlin" }
101- rhino = { module = " org.mozilla:rhino" , version.ref = " rhino" }
102104quickjs = { module = " app.cash.quickjs:quickjs-android" , version = " 0.9.2" }
105+ rhino = { module = " org.mozilla:rhino" , version.ref = " rhino" }
103106safefile = { module = " com.github.LagradOst:SafeFile" , version.ref = " safefile" }
104107shimmer = { module = " com.facebook.shimmer:shimmer" , version.ref = " shimmer" }
105108swiperefreshlayout = { module = " androidx.swiperefreshlayout:swiperefreshlayout" , version.ref = " swiperefreshlayout" }
@@ -111,8 +114,16 @@ work-runtime = { module = "androidx.work:work-runtime", version.ref = "workRunti
111114work-runtime-ktx = { module = " androidx.work:work-runtime-ktx" , version.ref = " workRuntimeKtx" }
112115
113116[plugins ]
117+ android-application = { id = " com.android.application" , version.ref = " androidGradlePlugin" }
118+ android-library = { id = " com.android.library" , version.ref = " androidGradlePlugin" }
119+ buildkonfig-gradle-plugin = { id = " com.codingfeline.buildkonfig" , version.ref = " buildkonfigGradlePlugin" }
120+ dokka-gradle-plugin = { id = " org.jetbrains.dokka" , version.ref = " dokkaGradlePlugin" }
121+ gradle-versions-plugin = { id = " com.github.ben-manes.versions" , version.ref = " gradleVersionsPlugin" }
122+ kotlin-android = { id = " org.jetbrains.kotlin.android" , version.ref = " kotlinGradlePlugin" }
123+ kotlin-jvm = { id = " org.jetbrains.kotlin.jvm" , version.ref = " kotlinGradlePlugin" }
124+ kotlin-multiplatform = { id = " org.jetbrains.kotlin.multiplatform" , version.ref = " kotlinGradlePlugin" }
114125
115126[bundles ]
116127media3 = [" media3-cast" , " media3-common" , " media3-datasource-okhttp" , " media3-exoplayer" , " media3-exoplayer-dash" , " media3-exoplayer-hls" , " media3-session" , " media3-ui" ]
117- nextlibMedia3 = [" nextlib-media3ext" , " nextlib-mediainfo" ]
118128navigationKtx = [" navigation-ui-ktx" , " navigation-fragment-ktx" ]
129+ nextlibMedia3 = [" nextlib-media3ext" , " nextlib-mediainfo" ]
0 commit comments