mirror of
				https://github.com/TeamNewPipe/NewPipe
				synced 2025-10-30 23:03:00 +00:00 
			
		
		
		
	Merge pull request #11684 from JL0000/version-catalogs
Migrate build to version catalogs
This commit is contained in:
		
							
								
								
									
										201
									
								
								app/build.gradle
									
									
									
									
									
								
							
							
						
						
									
										201
									
								
								app/build.gradle
									
									
									
									
									
								
							| @@ -3,14 +3,14 @@ import com.android.tools.profgen.ArtProfileSerializer | |||||||
| import com.android.tools.profgen.DexFile | import com.android.tools.profgen.DexFile | ||||||
|  |  | ||||||
| plugins { | plugins { | ||||||
|     id "com.android.application" |     alias libs.plugins.android.application | ||||||
|     id "kotlin-android" |     alias libs.plugins.kotlin.android | ||||||
|     id "kotlin-kapt" |     alias libs.plugins.kotlin.compose | ||||||
|     id "kotlin-parcelize" |     alias libs.plugins.kotlin.kapt | ||||||
|     id "checkstyle" |     alias libs.plugins.kotlin.parcelize | ||||||
|     id "org.sonarqube" version "4.0.0.2929" |     alias libs.plugins.checkstyle | ||||||
|     id "org.jetbrains.kotlin.plugin.compose" version "${kotlin_version}" |     alias libs.plugins.sonarqube | ||||||
|     id 'com.google.dagger.hilt.android' |     alias libs.plugins.hilt | ||||||
| } | } | ||||||
|  |  | ||||||
| android { | android { | ||||||
| @@ -109,25 +109,6 @@ android { | |||||||
|     } |     } | ||||||
| } | } | ||||||
|  |  | ||||||
| ext { |  | ||||||
|     checkstyleVersion = '10.12.1' |  | ||||||
|  |  | ||||||
|     androidxLifecycleVersion = '2.6.2' |  | ||||||
|     androidxRoomVersion = '2.6.1' |  | ||||||
|     androidxWorkVersion = '2.8.1' |  | ||||||
|  |  | ||||||
|     stateSaverVersion = '1.4.1' |  | ||||||
|     exoPlayerVersion = '2.18.7' |  | ||||||
|     googleAutoServiceVersion = '1.1.1' |  | ||||||
|     groupieVersion = '2.10.1' |  | ||||||
|     markwonVersion = '4.6.2' |  | ||||||
|  |  | ||||||
|     leakCanaryVersion = '2.12' |  | ||||||
|     stethoVersion = '1.6.0' |  | ||||||
|  |  | ||||||
|     coilVersion = '3.0.3' |  | ||||||
| } |  | ||||||
|  |  | ||||||
| configurations { | configurations { | ||||||
|     checkstyle |     checkstyle | ||||||
|     ktlint |     ktlint | ||||||
| @@ -137,7 +118,7 @@ checkstyle { | |||||||
|     getConfigDirectory().set(rootProject.file("checkstyle")) |     getConfigDirectory().set(rootProject.file("checkstyle")) | ||||||
|     ignoreFailures false |     ignoreFailures false | ||||||
|     showViolations true |     showViolations true | ||||||
|     toolVersion = checkstyleVersion |     toolVersion = libs.versions.checkstyle.get() | ||||||
| } | } | ||||||
|  |  | ||||||
| tasks.register('runCheckstyle', Checkstyle) { | tasks.register('runCheckstyle', Checkstyle) { | ||||||
| @@ -200,146 +181,140 @@ kapt { | |||||||
|  |  | ||||||
| dependencies { | dependencies { | ||||||
| /** Desugaring **/ | /** Desugaring **/ | ||||||
|     coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs_nio:2.0.4' |     coreLibraryDesugaring libs.desugar.jdk.libs.nio | ||||||
|  |  | ||||||
| /** NewPipe libraries **/ | /** NewPipe libraries **/ | ||||||
|     // You can use a local version by uncommenting a few lines in settings.gradle |     implementation libs.teamnewpipe.nanojson | ||||||
|     // Or you can use a commit you pushed to GitHub by just replacing TeamNewPipe with your GitHub |     implementation libs.teamnewpipe.newpipe.extractor | ||||||
|     // name and the commit hash with the commit hash of the (pushed) commit you want to test |     implementation libs.teamnewpipe.nononsense.filepicker | ||||||
|     // This works thanks to JitPack: https://jitpack.io/ |  | ||||||
|     implementation 'com.github.TeamNewPipe:nanojson:1d9e1aea9049fc9f85e68b43ba39fe7be1c1f751' |  | ||||||
|     // WORKAROUND: v0.24.2 can't be resolved by jitpack -> use git commit hash instead |  | ||||||
|     implementation 'com.github.TeamNewPipe:NewPipeExtractor:d3d5f2b3f03a5f2b479b9f6fdf1c2555cbb9de0e' |  | ||||||
|     implementation 'com.github.TeamNewPipe:NoNonsense-FilePicker:5.0.0' |  | ||||||
|  |  | ||||||
| /** Checkstyle **/ | /** Checkstyle **/ | ||||||
|     checkstyle "com.puppycrawl.tools:checkstyle:${checkstyleVersion}" |     checkstyle libs.tools.checkstyle | ||||||
|     ktlint 'com.pinterest:ktlint:0.45.2' |     ktlint libs.tools.ktlint | ||||||
|  |  | ||||||
| /** Kotlin **/ | /** Kotlin **/ | ||||||
|     implementation "org.jetbrains.kotlin:kotlin-stdlib:${kotlin_version}" |     implementation libs.kotlin.stdlib | ||||||
|  |  | ||||||
| /** AndroidX **/ | /** AndroidX **/ | ||||||
|     implementation 'androidx.appcompat:appcompat:1.6.1' |     implementation libs.androidx.appcompat | ||||||
|     implementation 'androidx.cardview:cardview:1.0.0' |     implementation libs.androidx.cardview | ||||||
|     implementation 'androidx.constraintlayout:constraintlayout:2.1.4' |     implementation libs.androidx.constraintlayout | ||||||
|     implementation 'androidx.core:core-ktx:1.12.0' |     implementation libs.androidx.core.ktx | ||||||
|     implementation 'androidx.documentfile:documentfile:1.0.1' |     implementation libs.androidx.documentfile | ||||||
|     implementation 'androidx.fragment:fragment-compose:1.8.2' |     implementation libs.androidx.fragment.compose | ||||||
|     implementation "androidx.lifecycle:lifecycle-livedata-ktx:${androidxLifecycleVersion}" |     implementation libs.androidx.lifecycle.livedata | ||||||
|     implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:${androidxLifecycleVersion}" |     implementation libs.androidx.lifecycle.viewmodel | ||||||
|     implementation 'androidx.localbroadcastmanager:localbroadcastmanager:1.1.0' |     implementation libs.androidx.localbroadcastmanager | ||||||
|     implementation 'androidx.media:media:1.7.0' |     implementation libs.androidx.media | ||||||
|     implementation 'androidx.preference:preference:1.2.1' |     implementation libs.androidx.preference | ||||||
|     implementation 'androidx.recyclerview:recyclerview:1.3.2' |     implementation libs.androidx.recyclerview | ||||||
|     implementation "androidx.room:room-runtime:${androidxRoomVersion}" |     implementation libs.androidx.room.runtime | ||||||
|     implementation "androidx.room:room-rxjava3:${androidxRoomVersion}" |     implementation libs.androidx.room.rxjava3 | ||||||
|     kapt "androidx.room:room-compiler:${androidxRoomVersion}" |     kapt libs.androidx.room.compiler | ||||||
|     implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0' |     implementation libs.androidx.swiperefreshlayout | ||||||
|     // Newer version specified to prevent accessibility regressions with RecyclerView, see: |     // Newer version specified to prevent accessibility regressions with RecyclerView, see: | ||||||
|     // https://developer.android.com/jetpack/androidx/releases/viewpager2#1.1.0-alpha01 |     // https://developer.android.com/jetpack/androidx/releases/viewpager2#1.1.0-alpha01 | ||||||
|     implementation 'androidx.viewpager2:viewpager2:1.1.0-beta02' |     implementation libs.androidx.viewpager2 | ||||||
|     implementation "androidx.work:work-runtime-ktx:${androidxWorkVersion}" |     implementation libs.androidx.work.runtime | ||||||
|     implementation "androidx.work:work-rxjava3:${androidxWorkVersion}" |     implementation libs.androidx.work.rxjava3 | ||||||
|     implementation 'com.google.android.material:material:1.11.0' |     implementation libs.androidx.material | ||||||
|  |  | ||||||
| /** Third-party libraries **/ | /** Third-party libraries **/ | ||||||
|     // Instance state boilerplate elimination |     // Instance state boilerplate elimination | ||||||
|     implementation 'com.github.livefront:bridge:v2.0.2' |     implementation libs.livefront.bridge | ||||||
|     implementation "com.evernote:android-state:$stateSaverVersion" |     implementation libs.android.state | ||||||
|     kapt "com.evernote:android-state-processor:$stateSaverVersion" |     kapt libs.android.state.processor | ||||||
|  |  | ||||||
|     // HTML parser |     // HTML parser | ||||||
|     implementation "org.jsoup:jsoup:1.17.2" |     implementation libs.jsoup | ||||||
|  |  | ||||||
|     // HTTP client |     // HTTP client | ||||||
|     implementation "com.squareup.okhttp3:okhttp:4.12.0" |     implementation libs.okhttp | ||||||
|  |  | ||||||
|     // Media player |     // Media player | ||||||
|     implementation "com.google.android.exoplayer:exoplayer-core:${exoPlayerVersion}" |     implementation libs.exoplayer.core | ||||||
|     implementation "com.google.android.exoplayer:exoplayer-dash:${exoPlayerVersion}" |     implementation libs.exoplayer.dash | ||||||
|     implementation "com.google.android.exoplayer:exoplayer-database:${exoPlayerVersion}" |     implementation libs.exoplayer.database | ||||||
|     implementation "com.google.android.exoplayer:exoplayer-datasource:${exoPlayerVersion}" |     implementation libs.exoplayer.datasource | ||||||
|     implementation "com.google.android.exoplayer:exoplayer-hls:${exoPlayerVersion}" |     implementation libs.exoplayer.hls | ||||||
|     implementation "com.google.android.exoplayer:exoplayer-smoothstreaming:${exoPlayerVersion}" |     implementation libs.exoplayer.smoothstreaming | ||||||
|     implementation "com.google.android.exoplayer:exoplayer-ui:${exoPlayerVersion}" |     implementation libs.exoplayer.ui | ||||||
|     implementation "com.google.android.exoplayer:extension-mediasession:${exoPlayerVersion}" |     implementation libs.extension.mediasession | ||||||
|  |  | ||||||
|     // Metadata generator for service descriptors |     // Metadata generator for service descriptors | ||||||
|     compileOnly "com.google.auto.service:auto-service-annotations:${googleAutoServiceVersion}" |     compileOnly libs.auto.service | ||||||
|     kapt "com.google.auto.service:auto-service:${googleAutoServiceVersion}" |     kapt libs.auto.service.kapt | ||||||
|  |  | ||||||
|     // Manager for complex RecyclerView layouts |     // Manager for complex RecyclerView layouts | ||||||
|     implementation "com.github.lisawray.groupie:groupie:${groupieVersion}" |     implementation libs.lisawray.groupie | ||||||
|     implementation "com.github.lisawray.groupie:groupie-viewbinding:${groupieVersion}" |     implementation libs.lisawray.groupie.viewbinding | ||||||
|  |  | ||||||
|     // Image loading |     // Image loading | ||||||
|     implementation "io.coil-kt.coil3:coil-compose:${coilVersion}" |     implementation libs.coil.compose | ||||||
|     implementation "io.coil-kt.coil3:coil-network-okhttp:${coilVersion}" |  | ||||||
|  |  | ||||||
|     // Markdown library for Android |     // Markdown library for Android | ||||||
|     implementation "io.noties.markwon:core:${markwonVersion}" |     implementation libs.markwon.core | ||||||
|     implementation "io.noties.markwon:linkify:${markwonVersion}" |     implementation libs.markwon.linkify | ||||||
|  |  | ||||||
|     // Crash reporting |     // Crash reporting | ||||||
|     implementation "ch.acra:acra-core:5.11.3" |     implementation libs.acra.core | ||||||
|  |  | ||||||
|     // Properly restarting |     // Properly restarting | ||||||
|     implementation 'com.jakewharton:process-phoenix:2.1.2' |     implementation libs.process.phoenix | ||||||
|  |  | ||||||
|     // Reactive extensions for Java VM |     // Reactive extensions for Java VM | ||||||
|     implementation "io.reactivex.rxjava3:rxjava:3.1.8" |     implementation libs.rxjava3.rxjava | ||||||
|     implementation "io.reactivex.rxjava3:rxandroid:3.0.2" |     implementation libs.rxjava3.rxandroid | ||||||
|     // RxJava binding APIs for Android UI widgets |     // RxJava binding APIs for Android UI widgets | ||||||
|     implementation "com.jakewharton.rxbinding4:rxbinding:4.0.0" |     implementation libs.rxbinding4.rxbinding | ||||||
|  |  | ||||||
|     // Date and time formatting |     // Date and time formatting | ||||||
|     implementation "org.ocpsoft.prettytime:prettytime:5.0.8.Final" |     implementation libs.prettytime | ||||||
|  |  | ||||||
|     // Jetpack Compose |     // Jetpack Compose | ||||||
|     implementation(platform('androidx.compose:compose-bom:2024.10.01')) |     implementation(platform(libs.androidx.compose.bom)) | ||||||
|     implementation 'androidx.compose.material3:material3' |     implementation libs.androidx.compose.material3 | ||||||
|     implementation 'androidx.compose.material3.adaptive:adaptive' |     implementation libs.androidx.compose.adaptive | ||||||
|     implementation 'androidx.activity:activity-compose' |     implementation libs.androidx.activity.compose | ||||||
|     implementation 'androidx.compose.ui:ui-tooling-preview' |     implementation libs.androidx.compose.ui.tooling.preview | ||||||
|     implementation 'androidx.lifecycle:lifecycle-viewmodel-compose' |     implementation libs.androidx.lifecycle.viewmodel.compose | ||||||
|     implementation 'androidx.compose.ui:ui-text' // Needed for parsing HTML to AnnotatedString |     implementation libs.androidx.compose.ui.text // Needed for parsing HTML to AnnotatedString | ||||||
|     implementation 'androidx.compose.material:material-icons-extended' |     implementation libs.androidx.compose.material.icons.extended | ||||||
|  |  | ||||||
|     // Jetpack Compose related dependencies |     // Jetpack Compose related dependencies | ||||||
|     implementation 'androidx.paging:paging-compose:3.3.2' |     implementation libs.androidx.paging.compose | ||||||
|     implementation "androidx.navigation:navigation-compose:2.8.3" |     implementation libs.androidx.navigation.compose | ||||||
|  |  | ||||||
|     // Coroutines interop |     // Coroutines interop | ||||||
|     implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-rx3:1.8.1' |     implementation libs.kotlinx.coroutines.rx3 | ||||||
|  |  | ||||||
|     // Hilt |     // Hilt | ||||||
|     implementation("com.google.dagger:hilt-android:2.51.1") |     implementation libs.hilt.android | ||||||
|     kapt("com.google.dagger:hilt-compiler:2.51.1") |     kapt(libs.hilt.compiler) | ||||||
|  |  | ||||||
|     // Scroll |     // Scroll | ||||||
|     implementation 'com.github.nanihadesuka:LazyColumnScrollbar:2.2.0' |     implementation libs.lazycolumnscrollbar | ||||||
|  |  | ||||||
| /** Debugging **/ | /** Debugging **/ | ||||||
|     // Memory leak detection |     // Memory leak detection | ||||||
|     debugImplementation "com.squareup.leakcanary:leakcanary-object-watcher-android:${leakCanaryVersion}" |     debugImplementation libs.leakcanary.object.watcher | ||||||
|     debugImplementation "com.squareup.leakcanary:plumber-android:${leakCanaryVersion}" |     debugImplementation libs.leakcanary.plumber.android | ||||||
|     debugImplementation "com.squareup.leakcanary:leakcanary-android-core:${leakCanaryVersion}" |     debugImplementation libs.leakcanary.android.core | ||||||
|     // Debug bridge for Android |     // Debug bridge for Android | ||||||
|     debugImplementation "com.facebook.stetho:stetho:${stethoVersion}" |     debugImplementation libs.stetho | ||||||
|     debugImplementation "com.facebook.stetho:stetho-okhttp3:${stethoVersion}" |     debugImplementation libs.stetho.okhttp3 | ||||||
|  |  | ||||||
|     // Jetpack Compose |     // Jetpack Compose | ||||||
|     debugImplementation 'androidx.compose.ui:ui-tooling' |     debugImplementation libs.androidx.compose.ui.tooling | ||||||
|  |  | ||||||
| /** Testing **/ | /** Testing **/ | ||||||
|     testImplementation 'junit:junit:4.13.2' |     testImplementation libs.junit | ||||||
|     testImplementation 'org.mockito:mockito-core:5.6.0' |     testImplementation libs.mockito.core | ||||||
|  |  | ||||||
|     androidTestImplementation "androidx.test.ext:junit:1.1.5" |     androidTestImplementation libs.androidx.junit | ||||||
|     androidTestImplementation "androidx.test:runner:1.5.2" |     androidTestImplementation libs.androidx.runner | ||||||
|     androidTestImplementation "androidx.room:room-testing:${androidxRoomVersion}" |     androidTestImplementation libs.androidx.room.testing | ||||||
|     androidTestImplementation "org.assertj:assertj-core:3.24.2" |     androidTestImplementation libs.assertj.core | ||||||
| } | } | ||||||
|  |  | ||||||
| static String getGitWorkingBranch() { | static String getGitWorkingBranch() { | ||||||
|   | |||||||
| @@ -1,15 +1,14 @@ | |||||||
| // Top-level build file where you can add configuration options common to all sub-projects/modules. | // Top-level build file where you can add configuration options common to all sub-projects/modules. | ||||||
|  |  | ||||||
| buildscript { | buildscript { | ||||||
|     ext.kotlin_version = '2.0.21' |  | ||||||
|     repositories { |     repositories { | ||||||
|         google() |         google() | ||||||
|         mavenCentral() |         mavenCentral() | ||||||
|     } |     } | ||||||
|     dependencies { |     dependencies { | ||||||
|         classpath 'com.android.tools.build:gradle:8.7.1' |         classpath libs.android.tools.build.gradle | ||||||
|         classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" |         classpath libs.kotlin.gradle.plugin | ||||||
|         classpath 'com.google.dagger:hilt-android-gradle-plugin:2.51.1' |         classpath libs.hilt.android.gradle.plugin | ||||||
|  |  | ||||||
|         // NOTE: Do not place your application dependencies here; they belong |         // NOTE: Do not place your application dependencies here; they belong | ||||||
|         // in the individual module build.gradle files |         // in the individual module build.gradle files | ||||||
|   | |||||||
							
								
								
									
										152
									
								
								gradle/libs.versions.toml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										152
									
								
								gradle/libs.versions.toml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,152 @@ | |||||||
|  | [versions] | ||||||
|  | acraCore = "5.11.3" | ||||||
|  | androidState = "1.4.1" | ||||||
|  | androidx-junit = "1.1.5" | ||||||
|  | appcompat = "1.6.1" | ||||||
|  | assertjCore = "3.24.2" | ||||||
|  | auto-service = "1.1.1" | ||||||
|  | bridge = "2.0.2" | ||||||
|  | cardview = "1.0.0" | ||||||
|  | checkstyle = "10.12.1" | ||||||
|  | coil = "3.0.3" | ||||||
|  | constraintlayout = "2.1.4" | ||||||
|  | core-ktx = "1.12.0" | ||||||
|  | desugar-jdk-libs-nio = "2.0.4" | ||||||
|  | documentFile = "1.0.1" | ||||||
|  | exoplayer = "2.18.7" | ||||||
|  | fragment-compose = "1.8.2" | ||||||
|  | gradle = "8.7.1" | ||||||
|  | groupie = "2.10.1" | ||||||
|  | hilt = "2.51.1" | ||||||
|  | jetpack-compose = "2024.10.01" | ||||||
|  | jsoup = "1.17.2" | ||||||
|  | junit = "4.13.2" | ||||||
|  | kotlin = "2.0.21" | ||||||
|  | kotlinxCoroutinesRx3 = "1.8.1" | ||||||
|  | ktlint = "0.45.2" | ||||||
|  | lazycolumnscrollbar = "2.2.0" | ||||||
|  | leakcanary = "2.12" | ||||||
|  | lifecycle = "2.6.2" | ||||||
|  | localbroadcastmanager = "1.1.0" | ||||||
|  | markwon = "4.6.2" | ||||||
|  | material = "1.11.0" | ||||||
|  | media = "1.7.0" | ||||||
|  | mockitoCore = "5.6.0" | ||||||
|  | navigationCompose = "2.8.3" | ||||||
|  | okhttp = "4.12.0" | ||||||
|  | pagingCompose = "3.3.2" | ||||||
|  | preference = "1.2.1" | ||||||
|  | prettytime = "5.0.8.Final" | ||||||
|  | processPhoenix = "2.1.2" | ||||||
|  | recyclerview = "1.3.2" | ||||||
|  | room = "2.6.1" | ||||||
|  | runner = "1.5.2" | ||||||
|  | rxandroid = "3.0.2" | ||||||
|  | rxbinding = "4.0.0" | ||||||
|  | rxjava = "3.1.8" | ||||||
|  | sonarqube = "4.0.0.2929" | ||||||
|  | stetho = "1.6.0" | ||||||
|  | swiperefreshlayout = "1.1.0" | ||||||
|  | # You can use a local version by uncommenting a few lines in settings.gradle | ||||||
|  | # Or you can use a commit you pushed to GitHub by just replacing TeamNewPipe with your GitHub | ||||||
|  | # name and the commit hash with the commit hash of the (pushed) commit you want to test | ||||||
|  | # This works thanks to JitPack: https://jitpack.io/ | ||||||
|  | teamnewpipe-filepicker = "5.0.0" | ||||||
|  | teamnewpipe-newpipe-extractor = "d3d5f2b3f03a5f2b479b9f6fdf1c2555cbb9de0e" | ||||||
|  | teamnewpipe-nanojson = "1d9e1aea9049fc9f85e68b43ba39fe7be1c1f751" | ||||||
|  | viewpager2 = "1.1.0-beta02" | ||||||
|  | work = "2.8.1" | ||||||
|  |  | ||||||
|  | [plugins] | ||||||
|  | android-application = { id = "com.android.application" } | ||||||
|  | checkstyle = { id = "checkstyle" } | ||||||
|  | hilt = { id = "com.google.dagger.hilt.android" } | ||||||
|  | kotlin-android = { id = "kotlin-android" } | ||||||
|  | kotlin-compose = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" } | ||||||
|  | kotlin-kapt = { id = "kotlin-kapt" } | ||||||
|  | kotlin-parcelize = { id = "kotlin-parcelize" } | ||||||
|  | sonarqube = { id = "org.sonarqube", version.ref = "sonarqube" } | ||||||
|  |  | ||||||
|  | [libraries] | ||||||
|  | acra-core = { group = "ch.acra", name = "acra-core", version.ref = "acraCore" } | ||||||
|  | android-state = { group = "com.evernote", name = "android-state", version.ref = "androidState" } | ||||||
|  | android-state-processor = { group = "com.evernote", name = "android-state-processor", version.ref = "androidState" } | ||||||
|  | android-tools-build-gradle = { group = "com.android.tools.build", name = "gradle", version.ref = "gradle" } | ||||||
|  | androidx-activity-compose = { group = "androidx.activity", name = "activity-compose" } | ||||||
|  | androidx-appcompat = { group = "androidx.appcompat", name = "appcompat", version.ref = "appcompat" } | ||||||
|  | androidx-cardview = { group = "androidx.cardview", name = "cardview", version.ref = "cardview" } | ||||||
|  | androidx-compose-adaptive = { group = "androidx.compose.material3.adaptive", name = "adaptive" } | ||||||
|  | androidx-compose-bom = { group = "androidx.compose", name = "compose-bom", version.ref = "jetpack-compose" } | ||||||
|  | androidx-compose-material-icons-extended = { group = "androidx.compose.material", name = "material-icons-extended" } | ||||||
|  | androidx-compose-material3 = { group = "androidx.compose.material3", name = "material3" } | ||||||
|  | androidx-compose-ui-text = { group = "androidx.compose.ui", name = "ui-text" } | ||||||
|  | androidx-compose-ui-tooling = { group = "androidx.compose.ui", name = "ui-tooling" } | ||||||
|  | androidx-compose-ui-tooling-preview = { group = "androidx.compose.ui", name = "ui-tooling-preview" } | ||||||
|  | androidx-constraintlayout = { group = "androidx.constraintlayout", name = "constraintlayout", version.ref = "constraintlayout" } | ||||||
|  | androidx-core-ktx = { group = "androidx.core", name = "core-ktx", version.ref = "core-ktx" } | ||||||
|  | androidx-documentfile = { group = "androidx.documentfile", name = "documentfile", version.ref = "documentFile" } | ||||||
|  | androidx-fragment-compose = { group = "androidx.fragment", name = "fragment-compose", version.ref = "fragment-compose" } | ||||||
|  | androidx-lifecycle-livedata = { group = "androidx.lifecycle", name = "lifecycle-livedata-ktx", version.ref = "lifecycle" } | ||||||
|  | androidx-lifecycle-viewmodel = { group = "androidx.lifecycle", name = "lifecycle-viewmodel-ktx", version.ref = "lifecycle" } | ||||||
|  | androidx-lifecycle-viewmodel-compose = { group = "androidx.lifecycle", name = "lifecycle-viewmodel-compose" } | ||||||
|  | androidx-localbroadcastmanager = { group = "androidx.localbroadcastmanager", name = "localbroadcastmanager", version.ref = "localbroadcastmanager" } | ||||||
|  | androidx-material = { group = "com.google.android.material", name = "material", version.ref = "material" } | ||||||
|  | androidx-media = { group = "androidx.media", name = "media", version.ref = "media" } | ||||||
|  | androidx-navigation-compose = { group = "androidx.navigation", name = "navigation-compose", version.ref = "navigationCompose" } | ||||||
|  | androidx-junit = { group = "androidx.test.ext", name = "junit", version.ref = "androidx-junit" } | ||||||
|  | androidx-paging-compose = { group = "androidx.paging", name = "paging-compose", version.ref = "pagingCompose" } | ||||||
|  | androidx-preference = { group = "androidx.preference", name = "preference", version.ref = "preference" } | ||||||
|  | androidx-recyclerview = { group = "androidx.recyclerview", name = "recyclerview", version.ref = "recyclerview" } | ||||||
|  | androidx-room-runtime = { group = "androidx.room", name = "room-runtime", version.ref = "room" } | ||||||
|  | androidx-room-rxjava3 = { group = "androidx.room", name = "room-rxjava3", version.ref = "room" } | ||||||
|  | androidx-room-compiler = { group = "androidx.room", name = "room-compiler", version.ref = "room" } | ||||||
|  | androidx-room-testing = { group = "androidx.room", name = "room-testing", version.ref = "room" } | ||||||
|  | androidx-runner = { group = "androidx.test", name = "runner", version.ref = "runner" } | ||||||
|  | androidx-swiperefreshlayout = { group = "androidx.swiperefreshlayout", name = "swiperefreshlayout", version.ref = "swiperefreshlayout" } | ||||||
|  | androidx-viewpager2 = { group = "androidx.viewpager2", name = "viewpager2", version.ref = "viewpager2" } | ||||||
|  | androidx-work-runtime = { group = "androidx.work", name = "work-runtime-ktx", version.ref = "work" } | ||||||
|  | androidx-work-rxjava3 = { group = "androidx.work", name = "work-rxjava3", version.ref = "work" } | ||||||
|  | assertj-core = { group = "org.assertj", name = "assertj-core", version.ref = "assertjCore" } | ||||||
|  | auto-service = { group = "com.google.auto.service", name = "auto-service-annotations", version.ref = "auto-service" } | ||||||
|  | auto-service-kapt = { group = "com.google.auto.service", name = "auto-service", version.ref = "auto-service" } | ||||||
|  | coil-compose = { group = "io.coil-kt.coil3", name = 'coil-compose', version.ref = "coil" } | ||||||
|  | desugar-jdk-libs-nio = { group = "com.android.tools", name = "desugar_jdk_libs_nio", version.ref = "desugar-jdk-libs-nio" } | ||||||
|  | exoplayer-core = { group = "com.google.android.exoplayer", name = "exoplayer-core", version.ref = "exoplayer" } | ||||||
|  | exoplayer-database = { group = "com.google.android.exoplayer", name = "exoplayer-database", version.ref = "exoplayer" } | ||||||
|  | exoplayer-datasource = { group = "com.google.android.exoplayer", name = "exoplayer-datasource", version.ref = "exoplayer" } | ||||||
|  | exoplayer-dash = { module = "com.google.android.exoplayer:exoplayer-dash", version.ref = "exoplayer" } | ||||||
|  | exoplayer-hls = { group = "com.google.android.exoplayer", name = "exoplayer-hls", version.ref = "exoplayer" } | ||||||
|  | exoplayer-smoothstreaming = { group = "com.google.android.exoplayer", name = "exoplayer-smoothstreaming", version.ref = "exoplayer" } | ||||||
|  | exoplayer-ui = { group = "com.google.android.exoplayer", name = "exoplayer-ui", version.ref = "exoplayer" } | ||||||
|  | extension-mediasession = { group = "com.google.android.exoplayer", name = "extension-mediasession", version.ref = "exoplayer" } | ||||||
|  | hilt-android = { group = "com.google.dagger", name = "hilt-android", version.ref = "hilt" } | ||||||
|  | hilt-android-gradle-plugin = { group = "com.google.dagger", name = "hilt-android-gradle-plugin", version.ref = "hilt" } | ||||||
|  | hilt-compiler = { group = "com.google.dagger", name = "hilt-compiler", version.ref = "hilt" } | ||||||
|  | jsoup = { group = "org.jsoup", name = "jsoup", version.ref = "jsoup" } | ||||||
|  | junit = { group = "junit", name = "junit", version.ref = "junit" } | ||||||
|  | kotlin-gradle-plugin = { group = "org.jetbrains.kotlin", name = "kotlin-gradle-plugin", version.ref = "kotlin" } | ||||||
|  | kotlin-stdlib = { group = "org.jetbrains.kotlin", name = "kotlin-stdlib", version.ref = "kotlin" } | ||||||
|  | kotlinx-coroutines-rx3 = { group = "org.jetbrains.kotlinx", name = "kotlinx-coroutines-rx3", version.ref = "kotlinxCoroutinesRx3" } | ||||||
|  | lazycolumnscrollbar = { group = "com.github.nanihadesuka", name = "LazyColumnScrollbar", version.ref = "lazycolumnscrollbar" } | ||||||
|  | leakcanary-android-core = { module = "com.squareup.leakcanary:leakcanary-android-core", version.ref = "leakcanary" } | ||||||
|  | leakcanary-object-watcher = { group = "com.squareup.leakcanary", name = "leakcanary-object-watcher-android", version.ref = "leakcanary" } | ||||||
|  | leakcanary-plumber-android = { group = "com.squareup.leakcanary", name = "plumber-android", version.ref = "leakcanary" } | ||||||
|  | lisawray-groupie = { group = "com.github.lisawray.groupie", name = "groupie", version.ref = "groupie" } | ||||||
|  | lisawray-groupie-viewbinding = { group = "com.github.lisawray.groupie", name = "groupie-viewbinding", version.ref = "groupie" } | ||||||
|  | livefront-bridge = { group = "com.github.livefront", name = "bridge", version.ref = "bridge" } | ||||||
|  | markwon-core = { group = "io.noties.markwon", name = "core", version.ref = "markwon" } | ||||||
|  | markwon-linkify = { group = "io.noties.markwon", name = "linkify", version.ref = "markwon" } | ||||||
|  | mockito-core = { group = "org.mockito", name = "mockito-core", version.ref = "mockitoCore" } | ||||||
|  | okhttp = { group = "com.squareup.okhttp3", name = "okhttp", version.ref = "okhttp" } | ||||||
|  | prettytime = { group = "org.ocpsoft.prettytime", name = "prettytime", version.ref = "prettytime" } | ||||||
|  | process-phoenix = { group = "com.jakewharton", name = "process-phoenix", version.ref = "processPhoenix" } | ||||||
|  | rxjava3-rxandroid = { group = "io.reactivex.rxjava3", name = "rxandroid", version.ref = "rxandroid" } | ||||||
|  | rxbinding4-rxbinding = { group = "com.jakewharton.rxbinding4", name = "rxbinding", version.ref = "rxbinding" } | ||||||
|  | rxjava3-rxjava = { group = "io.reactivex.rxjava3", name = "rxjava", version.ref = "rxjava" } | ||||||
|  | stetho = { group = "com.facebook.stetho", name = "stetho", version.ref = "stetho" } | ||||||
|  | stetho-okhttp3 = { group = "com.facebook.stetho", name = "stetho-okhttp3", version.ref = "stetho" } | ||||||
|  | teamnewpipe-newpipe-extractor = { group = "com.github.TeamNewPipe", name = "NewPipeExtractor", version.ref = "teamnewpipe-newpipe-extractor" } | ||||||
|  | teamnewpipe-nononsense-filepicker = { group = "com.github.TeamNewPipe", name = "NoNonsense-FilePicker", version.ref = "teamnewpipe-filepicker" } | ||||||
|  | teamnewpipe-nanojson = { group = "com.github.TeamNewPipe", name = "nanojson", version.ref = "teamnewpipe-nanojson" } | ||||||
|  | tools-checkstyle = { group = "com.puppycrawl.tools", name = "checkstyle", version.ref = "checkstyle" } | ||||||
|  | tools-ktlint = { group = "com.pinterest", name = "ktlint", version.ref = "ktlint" } | ||||||
		Reference in New Issue
	
	Block a user
	 Stypox
					Stypox