Enhance dependencies handling to support Dependabot

This commit is contained in:
ariskotsomitopoulos 2021-09-17 14:58:44 +03:00
parent 87fefdc7bb
commit 1dcf6b9539
7 changed files with 167 additions and 109 deletions

View File

@ -53,10 +53,10 @@ dependencies {
implementation libs.rx.rxKotlin
implementation libs.rx.rxAndroid
implementation "org.jetbrains.kotlin:kotlin-stdlib:${versions.kotlin}"
implementation libs.jetbrains.kotlinStdlib
implementation libs.androidx.core
implementation libs.androidx.appCompat
implementation libs.androidx.recyclerview
implementation 'com.google.android.material:material:1.4.0'
implementation libs.google.material
}

View File

@ -5,43 +5,41 @@ ext.versions = [
'targetSdk' : 30,
'sourceCompat' : JavaVersion.VERSION_11,
'targetCompat' : JavaVersion.VERSION_11,
// Ref: https://kotlinlang.org/releases.html
'kotlin' : '1.5.30',
'kotlinCoroutines' : '1.5.1',
'dagger' : '2.38.1',
'timber' : '5.0.1',
'lifecycle' : '2.2.0',
'moshi' : '1.12.0',
'arch' : '2.1.0',
'markwon' : '4.6.2',
'arrow' : '0.8.2',
'rxKotlin' : '2.4.0',
'rxAndroid' : '2.1.1',
'retrofit' : '2.9.0',
'epoxy' : '4.6.2',
'glide' : '4.12.0',
'rxBinding' : '3.1.0',
'bigImageViwer' : '1.8.1',
'jjwt' : '0.11.2',
'kluent' : '1.68',
'androidxTest' : '1.4.0',
'espresso' : '3.4.0'
]
// Ref: https://kotlinlang.org/releases.html
def gradle = "7.0.2"
def kotlin = "1.5.30"
def kotlinCoroutines = "1.5.1"
def dagger = "2.38.1"
def retrofit = "2.9.0"
def arrow = "0.8.2"
def markwon = "4.6.2"
def moshi = "1.12.0"
def lifecycle = "2.2.0"
def rxBinding = "3.1.0"
def epoxy = "4.6.2"
def glide = "4.12.0"
def bigImageViewer = "1.8.1"
def jjwt = "0.11.2"
// Testing
def mockk = "1.12.0"
def espresso = "3.4.0"
def androidxTest = "1.4.0"
ext.libs = [
gradle : [
'gradlePlugin' : "com.android.tools.build:gradle:7.0.2",
'kotlinPlugin' : "org.jetbrains.kotlin:kotlin-gradle-plugin:$versions.kotlin"
'gradlePlugin' : "com.android.tools.build:gradle:$gradle",
'kotlinPlugin' : "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin"
],
jetbrains : [
'kotlinStdlib' : "org.jetbrains.kotlin:kotlin-stdlib-jdk7:${versions.kotlin}",
'coroutinesCore' : "org.jetbrains.kotlinx:kotlinx-coroutines-core:${versions.kotlinCoroutines}",
'coroutinesAndroid' : "org.jetbrains.kotlinx:kotlinx-coroutines-android:${versions.kotlinCoroutines}",
'coroutinesRx2' : "org.jetbrains.kotlinx:kotlinx-coroutines-rx2:${versions.kotlinCoroutines}"
'kotlinStdlibJdk7' : "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin",
'kotlinStdlib' : "org.jetbrains.kotlin:kotlin-stdlib:$kotlin",
'coroutinesCore' : "org.jetbrains.kotlinx:kotlinx-coroutines-core:$kotlinCoroutines",
'coroutinesAndroid' : "org.jetbrains.kotlinx:kotlinx-coroutines-android:$kotlinCoroutines",
'coroutinesRx2' : "org.jetbrains.kotlinx:kotlinx-coroutines-rx2:$kotlinCoroutines"
],
androidx : [
'appCompat' : "androidx.appcompat:appcompat:1.3.1",
@ -52,20 +50,78 @@ ext.libs = [
'constraintLayout' : "androidx.constraintlayout:constraintlayout:2.1.0",
'work' : "androidx.work:work-runtime-ktx:2.5.0",
'autoFill' : "androidx.autofill:autofill:1.1.0",
'junit' : "androidx.test.ext:junit:1.1.3"
'preferenceKtx' : "androidx.preference:preference-ktx:1.1.1",
'junit' : "androidx.test.ext:junit:1.1.3",
'lifecycleExtensions' : "androidx.lifecycle:lifecycle-extensions:$lifecycle",
'lifecycleJava8' : "androidx.lifecycle:lifecycle-common-java8:$lifecycle",
'lifecycleLivedata' : "androidx.lifecycle:lifecycle-livedata-ktx:2.3.1",
'pagingRuntimeKtx' : "androidx.paging:paging-runtime-ktx:2.1.2",
'coreTesting' : "androidx.arch.core:core-testing:2.1.0",
'testCore' : "androidx.test:core:$androidxTest",
'testRunner' : "androidx.test:runner:$androidxTest",
'testRules' : "androidx.test:rules:$androidxTest",
'espressoCore' : "androidx.test.espresso:espresso-core:$espresso",
'espressoContrib' : "androidx.test.espresso:espresso-contrib:$espresso",
'espressoIntents' : "androidx.test.espresso:espresso-intents:$espresso"
],
google : [
'material' : "com.google.android.material:material:1.4.0"
],
dagger : [
'dagger' : "com.google.dagger:dagger:${versions.dagger}",
'daggerCompiler' : "com.google.dagger:dagger-compiler:${versions.dagger}"
'dagger' : "com.google.dagger:dagger:$dagger",
'daggerCompiler' : "com.google.dagger:dagger-compiler:$dagger"
],
squareup : [
'moshi' : "com.squareup.moshi:moshi-adapters:$moshi",
'moshiKotlin' : "com.squareup.moshi:moshi-kotlin-codegen:$moshi",
'retrofit' : "com.squareup.retrofit2:retrofit:$retrofit",
'retrofitMoshi' : "com.squareup.retrofit2:converter-moshi:$retrofit"
],
rx : [
'rxKotlin' : "io.reactivex.rxjava2:rxkotlin:${versions.rxKotlin}",
'rxAndroid' : "io.reactivex.rxjava2:rxandroid:${versions.rxAndroid}"
'rxKotlin' : "io.reactivex.rxjava2:rxkotlin:2.4.0",
'rxAndroid' : "io.reactivex.rxjava2:rxandroid:2.1.1"
],
arrow : [
'core' : "io.arrow-kt:arrow-core:$arrow",
'instances' : "io.arrow-kt:arrow-instances-core:$arrow"
],
markwon : [
'core' : "io.noties.markwon:core:$markwon",
'html' : "io.noties.markwon:html:$markwon"
],
airbnb : [
'epoxy' : "com.airbnb.android:epoxy:$epoxy",
'epoxyGlide' : "com.airbnb.android:epoxy-glide-preloading:$epoxy",
'epoxyProcessor' : "com.airbnb.android:epoxy-processor:$epoxy",
'epoxyPaging' : "com.airbnb.android:epoxy-paging:$epoxy",
'mvrx' : "com.airbnb.android:mvrx:1.5.1"
],
mockk : [
'mockk' : "io.mockk:mockk:$mockk",
'mockkAndroid' : "io.mockk:mockk-android:$mockk"
],
github : [
'glide' : "com.github.bumptech.glide:glide:$glide",
'glideCompiler' : "com.github.bumptech.glide:compiler:$glide",
'bigImageViewer' : "com.github.piasy:BigImageViewer:$bigImageViewer",
'glideImageLoader' : "com.github.piasy:GlideImageLoader:$bigImageViewer",
'progressPieIndicator' : "com.github.piasy:ProgressPieIndicator:$bigImageViewer",
'glideImageViewFactory' : "com.github.piasy:GlideImageViewFactory:$bigImageViewer"
],
jakewharton : [
'timber' : "com.jakewharton.timber:timber:${versions.timber}"
'timber' : "com.jakewharton.timber:timber:5.0.1",
'rxbinding' : "com.jakewharton.rxbinding3:rxbinding:$rxBinding",
'rxbindingAppcompat' : "com.jakewharton.rxbinding3:rxbinding-appcompat:$rxBinding",
'rxbindingMaterial' : "com.jakewharton.rxbinding3:rxbinding-material:$rxBinding"
],
jsonwebtoken: [
'jjwtApi' : "io.jsonwebtoken:jjwt-api:$jjwt",
'jjwtImpl' : "io.jsonwebtoken:jjwt-impl:$jjwt",
'jjwtOrgjson' : "io.jsonwebtoken:jjwt-orgjson:$jjwt"
],
tests : [
'kluent' : "org.amshove.kluent:kluent-android:1.68",
'timberJunitRule' : "net.lachlanmckee:timber-junit-rule:1.0.1",
'junit' : "junit:junit:4.13.2"
]
]

View File

@ -53,9 +53,9 @@ android {
dependencies {
implementation libs.androidx.appCompat
implementation 'com.google.android.material:material:1.4.0'
implementation libs.google.material
// Pref theme
implementation 'androidx.preference:preference-ktx:1.1.1'
implementation libs.androidx.preferenceKtx
// PFLockScreen attrs
implementation 'com.github.vector-im:PFLockScreen-Android:1.0.0-beta12'
// dialpad dimen

View File

@ -32,6 +32,7 @@ android {
}
dependencies {
implementation project(":matrix-sdk-android")
implementation libs.androidx.appCompat
implementation libs.rx.rxKotlin
@ -39,7 +40,7 @@ dependencies {
implementation libs.jetbrains.coroutinesRx2
// Paging
implementation "androidx.paging:paging-runtime-ktx:2.1.2"
implementation libs.androidx.pagingRuntimeKtx
// Logging
implementation libs.jakewharton.timber

View File

@ -101,29 +101,29 @@ static def gitRevisionDate() {
dependencies {
implementation libs.jetbrains.kotlinStdlib
implementation libs.jetbrains.kotlinStdlibJdk7
implementation libs.jetbrains.coroutinesCore
implementation libs.jetbrains.coroutinesAndroid
implementation libs.androidx.appCompat
implementation libs.androidx.core
implementation "androidx.lifecycle:lifecycle-extensions:${versions.lifecycle}"
implementation "androidx.lifecycle:lifecycle-common-java8:${versions.lifecycle}"
implementation libs.androidx.lifecycleExtensions
implementation libs.androidx.lifecycleJava8
// Network
implementation "com.squareup.retrofit2:retrofit:${versions.retrofit}"
implementation "com.squareup.retrofit2:converter-moshi:${versions.retrofit}"
implementation libs.squareup.retrofit
implementation libs.squareup.retrofitMoshi
implementation(platform("com.squareup.okhttp3:okhttp-bom:4.9.1"))
implementation 'com.squareup.okhttp3:okhttp'
implementation 'com.squareup.okhttp3:logging-interceptor'
implementation 'com.squareup.okhttp3:okhttp-urlconnection'
implementation "com.squareup.moshi:moshi-adapters:${versions.moshi}"
kapt "com.squareup.moshi:moshi-kotlin-codegen:${versions.moshi}"
implementation libs.squareup.moshi
kapt libs.squareup.moshiKotlin
implementation "io.noties.markwon:core:${versions.markwon}"
implementation libs.markwon.core
// Image
implementation libs.androidx.exifinterface
@ -136,8 +136,8 @@ dependencies {
implementation libs.androidx.work
// FP
implementation "io.arrow-kt:arrow-core:${versions.arrow}"
implementation "io.arrow-kt:arrow-instances-core:${versions.arrow}"
implementation libs.arrow.core
implementation libs.arrow.instances
// olm lib is now hosted by jitpack: https://jitpack.io/#org.matrix.gitlab.matrix-org/olm
implementation 'org.matrix.gitlab.matrix-org:olm:3.2.4'
@ -160,24 +160,24 @@ dependencies {
testImplementation 'org.robolectric:robolectric:4.6.1'
//testImplementation 'org.robolectric:shadows-support-v4:3.0'
// Note: version sticks to 1.9.2 due to https://github.com/mockk/mockk/issues/281
testImplementation 'io.mockk:mockk:1.12.0'
testImplementation 'org.amshove.kluent:kluent-android:1.68'
testImplementation libs.mockk.mockk
testImplementation libs.tests.kluent
implementation libs.jetbrains.coroutinesAndroid
// Plant Timber tree for test
testImplementation 'net.lachlanmckee:timber-junit-rule:1.0.1'
kaptAndroidTest libs.dagger.daggerCompiler
androidTestImplementation "androidx.test:core:${versions.androidxTest}"
androidTestImplementation "androidx.test:runner:${versions.androidxTest}"
androidTestImplementation "androidx.test:rules:${versions.androidxTest}"
androidTestImplementation libs.androidx.testCore
androidTestImplementation libs.androidx.testRunner
androidTestImplementation libs.androidx.testRules
androidTestImplementation libs.androidx.junit
androidTestImplementation "androidx.test.espresso:espresso-core:${versions.espresso}"
androidTestImplementation 'org.amshove.kluent:kluent-android:1.68'
androidTestImplementation 'io.mockk:mockk-android:1.12.0'
androidTestImplementation "androidx.arch.core:core-testing:${versions.arch}"
androidTestImplementation libs.androidx.espressoCore
androidTestImplementation libs.tests.kluent
androidTestImplementation libs.mockk.mockkAndroid
androidTestImplementation libs.androidx.coreTesting
androidTestImplementation libs.jetbrains.coroutinesAndroid
// Plant Timber tree for test
androidTestImplementation 'net.lachlanmckee:timber-junit-rule:1.0.1'
androidTestImplementation libs.tests.timberJunitRule
androidTestUtil 'androidx.test:orchestrator:1.4.0'
}

View File

@ -38,7 +38,7 @@ android {
}
dependencies {
implementation libs.jetbrains.kotlinStdlib
implementation libs.jetbrains.kotlinStdlibJdk7
implementation libs.androidx.appCompat
implementation libs.androidx.fragmentKtx
implementation libs.androidx.exifinterface

View File

@ -324,7 +324,7 @@ dependencies {
implementation project(":library:ui-styles")
implementation 'androidx.multidex:multidex:2.0.1'
implementation libs.jetbrains.kotlinStdlib
implementation libs.jetbrains.kotlinStdlibJdk7
implementation libs.jetbrains.coroutinesCore
implementation libs.jetbrains.coroutinesAndroid
@ -340,10 +340,11 @@ dependencies {
implementation "org.threeten:threetenbp:1.4.0:no-tzdb"
implementation "com.gabrielittner.threetenbp:lazythreetenbp:0.9.0"
implementation "com.squareup.moshi:moshi-adapters:${versions.moshi}"
implementation "androidx.lifecycle:lifecycle-extensions:${versions.lifecycle}"
implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.3.1"
kapt "com.squareup.moshi:moshi-kotlin-codegen:${versions.moshi}"
implementation libs.squareup.moshi
kapt libs.squareup.moshiKotlin
implementation libs.androidx.lifecycleExtensions
implementation libs.androidx.lifecycleLivedata
// Log
implementation libs.jakewharton.timber
@ -359,34 +360,34 @@ dependencies {
implementation libs.rx.rxAndroid
implementation 'com.jakewharton.rxrelay2:rxrelay:2.1.1'
// RXBinding
implementation "com.jakewharton.rxbinding3:rxbinding:${versions.rxBinding}"
implementation "com.jakewharton.rxbinding3:rxbinding-appcompat:${versions.rxBinding}"
implementation "com.jakewharton.rxbinding3:rxbinding-material:${versions.rxBinding}"
implementation libs.jakewharton.rxbinding
implementation libs.jakewharton.rxbindingAppcompat
implementation libs.jakewharton.rxbindingMaterial
implementation("com.airbnb.android:epoxy:${versions.epoxy}")
implementation "com.airbnb.android:epoxy-glide-preloading:${versions.epoxy}"
kapt "com.airbnb.android:epoxy-processor:${versions.epoxy}"
implementation "com.airbnb.android:epoxy-paging:${versions.epoxy}"
implementation 'com.airbnb.android:mvrx:1.5.1'
implementation libs.airbnb.epoxy
implementation libs.airbnb.epoxyGlide
kapt libs.airbnb.epoxyProcessor
implementation libs.airbnb.epoxyPaging
implementation libs.airbnb.mvrx
// Work
implementation libs.androidx.work
// Paging
implementation "androidx.paging:paging-runtime-ktx:2.1.2"
implementation libs.androidx.pagingRuntimeKtx
// Functional Programming
implementation "io.arrow-kt:arrow-core:${versions.arrow}"
implementation libs.arrow.core
// Pref
implementation 'androidx.preference:preference-ktx:1.1.1'
implementation libs.androidx.preferenceKtx
// UI
implementation 'com.amulyakhare:com.amulyakhare.textdrawable:1.0.1'
implementation 'com.google.android.material:material:1.4.0'
implementation libs.google.material
implementation 'me.gujun.android:span:1.7'
implementation "io.noties.markwon:core:${versions.markwon}"
implementation "io.noties.markwon:html:${versions.markwon}"
implementation libs.markwon.core
implementation libs.markwon.html
implementation 'com.googlecode.htmlcompressor:htmlcompressor:1.5.2'
implementation 'me.saket:better-link-movement-method:2.2.0'
implementation 'com.google.android:flexbox:2.0.1'
@ -414,16 +415,16 @@ dependencies {
implementation 'com.squareup:seismic:1.0.2'
// Image Loading
implementation "com.github.piasy:BigImageViewer:${versions.bigImageViwer}"
implementation "com.github.piasy:GlideImageLoader:${versions.bigImageViwer}"
implementation "com.github.piasy:ProgressPieIndicator:${versions.bigImageViwer}"
implementation "com.github.piasy:GlideImageViewFactory:${versions.bigImageViwer}"
implementation libs.github.bigImageViewer
implementation libs.github.glideImageLoader
implementation libs.github.progressPieIndicator
implementation libs.github.glideImageViewFactory
// implementation 'com.github.MikeOrtiz:TouchImageView:3.0.2'
implementation 'com.github.chrisbanes:PhotoView:2.3.0'
implementation "com.github.bumptech.glide:glide:${versions.glide}"
kapt "com.github.bumptech.glide:compiler:${versions.glide}"
implementation libs.github.glide
kapt libs.github.glideCompiler
implementation 'com.danikula:videocache:2.7.1'
implementation 'com.github.yalantis:ucrop:2.2.7'
@ -475,9 +476,9 @@ dependencies {
implementation 'im.dlg:android-dialer:1.2.5'
// JWT
api "io.jsonwebtoken:jjwt-api:${versions.jjwt}"
runtimeOnly "io.jsonwebtoken:jjwt-impl:${versions.jjwt}"
runtimeOnly("io.jsonwebtoken:jjwt-orgjson:${versions.jjwt}") {
api libs.jsonwebtoken.jjwtApi
runtimeOnly libs.jsonwebtoken.jjwtImpl
runtimeOnly(libs.jsonwebtoken.jjwtOrgjson) {
exclude group: 'org.json', module: 'json' //provided by Android natively
}
implementation 'commons-codec:commons-codec:1.15'
@ -485,24 +486,24 @@ dependencies {
// TESTS
testImplementation libs.tests.junit
testImplementation "org.amshove.kluent:kluent-android:${versions.kluent}"
testImplementation libs.tests.kluent
// Plant Timber tree for test
testImplementation 'net.lachlanmckee:timber-junit-rule:1.0.1'
testImplementation libs.tests.timberJunitRule
// Activate when you want to check for leaks, from time to time.
//debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.3'
androidTestImplementation "androidx.test:core:${versions.androidxTest}"
androidTestImplementation "androidx.test:runner:${versions.androidxTest}"
androidTestImplementation "androidx.test:rules:${versions.androidxTest}"
androidTestImplementation libs.androidx.testCore
androidTestImplementation libs.androidx.testRunner
androidTestImplementation libs.androidx.testRules
androidTestImplementation libs.androidx.junit
androidTestImplementation "androidx.test.espresso:espresso-core:${versions.espresso}"
androidTestImplementation "androidx.test.espresso:espresso-contrib:${versions.espresso}"
androidTestImplementation "androidx.test.espresso:espresso-intents:${versions.espresso}"
androidTestImplementation "org.amshove.kluent:kluent-android:${versions.kluent}"
androidTestImplementation "androidx.arch.core:core-testing:${versions.arch}"
androidTestImplementation libs.androidx.espressoCore
androidTestImplementation libs.androidx.espressoContrib
androidTestImplementation libs.androidx.espressoIntents
androidTestImplementation libs.tests.kluent
androidTestImplementation libs.androidx.coreTesting
// Plant Timber tree for test
androidTestImplementation 'net.lachlanmckee:timber-junit-rule:1.0.1'
androidTestImplementation libs.tests.timberJunitRule
// "The one who serves a great Espresso"
androidTestImplementation('com.adevinta.android:barista:4.1.0') {
exclude group: 'org.jetbrains.kotlin'