Skip to content

Commit 083c315

Browse files
authored
Merge pull request #5867 from TacoTheDank/rearrange-libraries
Rearrange libraries
2 parents 29b44a1 + e17bfa0 commit 083c315

2 files changed

Lines changed: 64 additions & 44 deletions

File tree

app/build.gradle

Lines changed: 63 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -96,16 +96,19 @@ android {
9696
}
9797

9898
ext {
99-
icepickVersion = '3.2.0'
10099
checkstyleVersion = '8.38'
101-
stethoVersion = '1.5.1'
102-
leakCanaryVersion = '2.5'
103-
exoPlayerVersion = '2.13.2'
100+
104101
androidxLifecycleVersion = '2.2.0'
105102
androidxRoomVersion = '2.3.0-alpha03'
103+
104+
icepickVersion = '3.2.0'
105+
exoPlayerVersion = '2.13.2'
106+
googleAutoServiceVersion = '1.0-rc7'
106107
groupieVersion = '2.8.1'
107108
markwonVersion = '4.6.0'
108-
googleAutoServiceVersion = '1.0-rc7'
109+
110+
leakCanaryVersion = '2.5'
111+
stethoVersion = '1.5.1'
109112
mockitoVersion = '3.6.0'
110113
}
111114

@@ -171,82 +174,99 @@ sonarqube {
171174
}
172175

173176
dependencies {
177+
/** Desugaring **/
174178
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:1.1.1'
175179

176-
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:${kotlin_version}"
177-
178-
implementation "frankiesardo:icepick:${icepickVersion}"
179-
kapt "frankiesardo:icepick-processor:${icepickVersion}"
180+
/** NewPipe libraries **/
181+
// You can use a local version by uncommenting a few lines in settings.gradle
182+
implementation 'com.github.TeamNewPipe:nanojson:1d9e1aea9049fc9f85e68b43ba39fe7be1c1f751'
183+
implementation 'com.github.TeamNewPipe:NewPipeExtractor:v0.21.0'
180184

185+
/** Checkstyle **/
181186
checkstyle "com.puppycrawl.tools:checkstyle:${checkstyleVersion}"
182-
ktlint "com.pinterest:ktlint:0.40.0"
183-
184-
debugImplementation "com.facebook.stetho:stetho:${stethoVersion}"
185-
debugImplementation "com.facebook.stetho:stetho-okhttp3:${stethoVersion}"
187+
ktlint 'com.pinterest:ktlint:0.40.0'
186188

187-
debugImplementation "com.squareup.leakcanary:leakcanary-android:${leakCanaryVersion}"
188-
implementation "com.squareup.leakcanary:leakcanary-object-watcher-android:${leakCanaryVersion}"
189-
implementation "com.squareup.leakcanary:plumber-android:${leakCanaryVersion}"
189+
/** Kotlin **/
190+
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:${kotlin_version}"
190191

191-
implementation "androidx.multidex:multidex:2.0.1"
192+
/** AndroidX **/
193+
implementation 'androidx.appcompat:appcompat:1.2.0'
194+
implementation 'androidx.cardview:cardview:1.0.0'
195+
implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
196+
implementation 'androidx.core:core-ktx:1.3.2'
197+
implementation 'androidx.documentfile:documentfile:1.0.1'
198+
implementation "androidx.lifecycle:lifecycle-livedata:${androidxLifecycleVersion}"
199+
implementation "androidx.lifecycle:lifecycle-viewmodel:${androidxLifecycleVersion}"
200+
implementation 'androidx.localbroadcastmanager:localbroadcastmanager:1.0.0'
201+
implementation 'androidx.media:media:1.2.1'
202+
implementation 'androidx.multidex:multidex:2.0.1'
203+
implementation 'androidx.preference:preference:1.1.1'
204+
implementation 'androidx.recyclerview:recyclerview:1.1.0'
205+
implementation "androidx.room:room-runtime:${androidxRoomVersion}"
206+
implementation "androidx.room:room-rxjava3:${androidxRoomVersion}"
207+
kapt "androidx.room:room-compiler:${androidxRoomVersion}"
208+
implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0'
209+
implementation 'androidx.webkit:webkit:1.4.0'
210+
implementation 'com.google.android.material:material:1.2.1'
192211

193-
// NewPipe dependencies
194-
// You can use a local version by uncommenting a few lines in settings.gradle
195-
implementation 'com.github.TeamNewPipe:NewPipeExtractor:v0.21.0'
196-
implementation "com.github.TeamNewPipe:nanojson:1d9e1aea9049fc9f85e68b43ba39fe7be1c1f751"
212+
/** Third-party libraries **/
213+
// Instance state boilerplate elimination
214+
implementation "frankiesardo:icepick:${icepickVersion}"
215+
kapt "frankiesardo:icepick-processor:${icepickVersion}"
197216

217+
// HTML parser
198218
implementation "org.jsoup:jsoup:1.13.1"
199219

220+
// HTTP client
200221
//noinspection GradleDependency --> do not update okhttp to keep supporting Android 4.4 users
201222
implementation "com.squareup.okhttp3:okhttp:3.12.13"
202223

224+
// Media player
203225
implementation "com.google.android.exoplayer:exoplayer:${exoPlayerVersion}"
204226
implementation "com.google.android.exoplayer:extension-mediasession:${exoPlayerVersion}"
205227

206-
implementation "com.google.android.material:material:1.2.1"
207-
228+
// Metadata generator for service descriptors
208229
compileOnly "com.google.auto.service:auto-service-annotations:${googleAutoServiceVersion}"
209230
kapt "com.google.auto.service:auto-service:${googleAutoServiceVersion}"
210231

211-
implementation "androidx.appcompat:appcompat:1.2.0"
212-
implementation "androidx.preference:preference:1.1.1"
213-
implementation "androidx.recyclerview:recyclerview:1.1.0"
214-
implementation "androidx.cardview:cardview:1.0.0"
215-
implementation "androidx.constraintlayout:constraintlayout:2.0.4"
216-
implementation 'androidx.core:core-ktx:1.3.2'
217-
implementation 'androidx.documentfile:documentfile:1.0.1'
218-
implementation 'androidx.localbroadcastmanager:localbroadcastmanager:1.0.0'
219-
implementation 'androidx.media:media:1.2.1'
220-
implementation 'androidx.webkit:webkit:1.4.0'
221-
222-
implementation "androidx.lifecycle:lifecycle-livedata:${androidxLifecycleVersion}"
223-
implementation "androidx.lifecycle:lifecycle-viewmodel:${androidxLifecycleVersion}"
224-
225-
implementation "androidx.room:room-runtime:${androidxRoomVersion}"
226-
implementation "androidx.room:room-rxjava3:${androidxRoomVersion}"
227-
kapt "androidx.room:room-compiler:${androidxRoomVersion}"
228-
229-
implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.1.0"
230-
232+
// Manager for complex RecyclerView layouts
231233
implementation "com.xwray:groupie:${groupieVersion}"
232234
implementation "com.xwray:groupie-viewbinding:${groupieVersion}"
233235

236+
// Circular ImageView
234237
implementation "de.hdodenhof:circleimageview:3.1.0"
238+
// Image loading
235239
implementation "com.nostra13.universalimageloader:universal-image-loader:1.9.5"
236240

241+
// Markdown library for Android
237242
implementation "io.noties.markwon:core:${markwonVersion}"
238243
implementation "io.noties.markwon:linkify:${markwonVersion}"
239244

245+
// File picker
240246
implementation "com.nononsenseapps:filepicker:4.2.1"
241247

248+
// Crash reporting
242249
implementation "ch.acra:acra-core:5.7.0"
243250

251+
// Reactive extensions for Java VM
244252
implementation "io.reactivex.rxjava3:rxjava:3.0.7"
245253
implementation "io.reactivex.rxjava3:rxandroid:3.0.0"
254+
// RxJava binding APIs for Android UI widgets
246255
implementation "com.jakewharton.rxbinding4:rxbinding:4.0.0"
247256

257+
// Date and time formatting
248258
implementation "org.ocpsoft.prettytime:prettytime:5.0.0.Final"
249259

260+
/** Debugging **/
261+
// Memory leak detection
262+
implementation "com.squareup.leakcanary:leakcanary-object-watcher-android:${leakCanaryVersion}"
263+
implementation "com.squareup.leakcanary:plumber-android:${leakCanaryVersion}"
264+
debugImplementation "com.squareup.leakcanary:leakcanary-android:${leakCanaryVersion}"
265+
// Debug bridge for Android
266+
debugImplementation "com.facebook.stetho:stetho:${stethoVersion}"
267+
debugImplementation "com.facebook.stetho:stetho-okhttp3:${stethoVersion}"
268+
269+
/** Testing **/
250270
testImplementation 'junit:junit:4.13.1'
251271
testImplementation "org.mockito:mockito-core:${mockitoVersion}"
252272
testImplementation "org.mockito:mockito-inline:${mockitoVersion}"

build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ buildscript {
77
google()
88
}
99
dependencies {
10-
classpath 'com.android.tools.build:gradle:4.1.2'
10+
classpath 'com.android.tools.build:gradle:4.1.3'
1111
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
1212

1313
// NOTE: Do not place your application dependencies here; they belong

0 commit comments

Comments
 (0)