Migrate to Gradle's version catalog

This commit is contained in:
Bastian Wilhelm 2023-01-08 03:14:00 +01:00 committed by cketti
parent a4914ff527
commit a3f6995a2e
33 changed files with 535 additions and 399 deletions

View file

@ -1,6 +1,8 @@
apply plugin: 'java-library'
apply plugin: 'kotlin'
apply plugin: 'com.android.lint'
plugins {
id 'java-library'
id 'kotlin'
alias(libs.plugins.android.lint)
}
dependencies {
api project(":mail:common")

View file

@ -1,23 +1,25 @@
apply plugin: 'com.android.library'
apply plugin: 'org.jetbrains.kotlin.android'
plugins {
alias(libs.plugins.android.library)
alias(libs.plugins.kotlin.android)
}
dependencies {
implementation project(":app:core")
implementation project(":mail:common")
implementation project(":app:autodiscovery:api")
implementation "com.jakewharton.timber:timber:${versions.timber}"
implementation libs.timber
testImplementation project(':app:testing')
testImplementation project(":backend:imap")
testImplementation "org.robolectric:robolectric:${versions.robolectric}"
testImplementation "androidx.test:core:${versions.androidxTestCore}"
testImplementation "junit:junit:${versions.junit}"
testImplementation "com.google.truth:truth:${versions.truth}"
testImplementation "org.mockito:mockito-inline:${versions.mockito}"
testImplementation "org.mockito.kotlin:mockito-kotlin:${versions.mockitoKotlin}"
testImplementation "io.insert-koin:koin-test:${versions.koin}"
testImplementation "io.insert-koin:koin-test-junit4:${versions.koin}"
testImplementation libs.robolectric
testImplementation libs.androidx.test.core
testImplementation libs.junit
testImplementation libs.truth
testImplementation libs.mockito.inline
testImplementation libs.mockito.kotlin
testImplementation libs.koin.test
testImplementation libs.koin.test.junit4
}
android {

View file

@ -1,14 +1,16 @@
apply plugin: 'java-library'
apply plugin: 'kotlin'
apply plugin: 'com.android.lint'
plugins {
id 'java-library'
id 'kotlin'
alias(libs.plugins.android.lint)
}
dependencies {
api project(":app:autodiscovery:api")
implementation "org.minidns:minidns-hla:${versions.minidns}"
implementation libs.minidns.hla
testImplementation "junit:junit:${versions.junit}"
testImplementation "com.google.truth:truth:${versions.truth}"
testImplementation "org.mockito:mockito-inline:${versions.mockito}"
testImplementation "org.mockito.kotlin:mockito-kotlin:${versions.mockitoKotlin}"
testImplementation libs.junit
testImplementation libs.truth
testImplementation libs.mockito.inline
testImplementation libs.mockito.kotlin
}

View file

@ -1,16 +1,18 @@
apply plugin: 'java-library'
apply plugin: 'kotlin'
apply plugin: 'com.android.lint'
plugins {
id 'java-library'
id 'kotlin'
alias(libs.plugins.android.lint)
}
dependencies {
api project(":app:autodiscovery:api")
compileOnly 'com.github.cketti:xmlpull-extracted-from-android:1.0'
implementation "com.squareup.okhttp3:okhttp:${versions.okhttp}"
compileOnly libs.xmlpull.extracted.from.android
implementation libs.okhttp
testImplementation "junit:junit:${versions.junit}"
testImplementation "com.google.truth:truth:${versions.truth}"
testImplementation "org.mockito:mockito-inline:${versions.mockito}"
testImplementation "org.mockito.kotlin:mockito-kotlin:${versions.mockitoKotlin}"
testImplementation 'com.github.cketti:kxml2-extracted-from-android:1.0'
testImplementation libs.junit
testImplementation libs.truth
testImplementation libs.mockito.inline
testImplementation libs.mockito.kotlin
testImplementation libs.kxml2.extracted.from.android
}

View file

@ -1,6 +1,8 @@
apply plugin: 'com.android.library'
apply plugin: 'org.jetbrains.kotlin.android'
apply plugin: 'org.jetbrains.kotlin.plugin.parcelize'
plugins {
alias(libs.plugins.android.library)
alias(libs.plugins.kotlin.android)
alias(libs.plugins.kotlin.parcelize)
}
dependencies {
api project(":mail:common")
@ -9,37 +11,37 @@ dependencies {
implementation project(':plugins:openpgp-api-lib:openpgp-api')
api "io.insert-koin:koin-android:${versions.koin}"
api libs.koin.android
api "androidx.annotation:annotation:${versions.androidxAnnotation}"
api libs.androidx.annotation
implementation "com.squareup.okio:okio:${versions.okio}"
implementation "commons-io:commons-io:${versions.commonsIo}"
implementation "androidx.core:core-ktx:${versions.androidxCore}"
implementation "androidx.work:work-runtime-ktx:${versions.androidxWorkManager}"
implementation "androidx.fragment:fragment:${versions.androidxFragment}"
implementation "androidx.localbroadcastmanager:localbroadcastmanager:${versions.androidxLocalBroadcastManager}"
implementation "org.jsoup:jsoup:${versions.jsoup}"
implementation "com.squareup.moshi:moshi:${versions.moshi}"
implementation "com.jakewharton.timber:timber:${versions.timber}"
implementation "org.apache.james:apache-mime4j-core:${versions.mime4j}"
implementation libs.okio
implementation libs.commons.io
implementation libs.androidx.core.ktx
implementation libs.androidx.work.ktx
implementation libs.androidx.fragment
implementation libs.androidx.localbroadcastmanager
implementation libs.jsoup
implementation libs.moshi
implementation libs.timber
implementation libs.apache.mime4j.core
testImplementation project(':mail:testing')
testImplementation project(":backend:imap")
testImplementation project(":mail:protocols:smtp")
testImplementation project(":app:storage")
testImplementation project(":app:testing")
testImplementation "org.jetbrains.kotlin:kotlin-test:${versions.kotlin}"
testImplementation "org.jetbrains.kotlin:kotlin-reflect:${versions.kotlin}"
testImplementation "org.robolectric:robolectric:${versions.robolectric}"
testImplementation "androidx.test:core:${versions.androidxTestCore}"
testImplementation "junit:junit:${versions.junit}"
testImplementation "com.google.truth:truth:${versions.truth}"
testImplementation "org.mockito:mockito-inline:${versions.mockito}"
testImplementation "org.mockito.kotlin:mockito-kotlin:${versions.mockitoKotlin}"
testImplementation "org.jdom:jdom2:2.0.6"
testImplementation "io.insert-koin:koin-test:${versions.koin}"
testImplementation "io.insert-koin:koin-test-junit4:${versions.koin}"
testImplementation libs.kotlin.test
testImplementation libs.kotlin.reflect
testImplementation libs.robolectric
testImplementation libs.androidx.test.core
testImplementation libs.junit
testImplementation libs.truth
testImplementation libs.mockito.inline
testImplementation libs.mockito.kotlin
testImplementation libs.jdom2
testImplementation libs.koin.test
testImplementation libs.koin.test.junit4
}
android {

View file

@ -1,11 +1,13 @@
apply plugin: 'com.android.library'
apply plugin: 'org.jetbrains.kotlin.android'
plugins {
alias(libs.plugins.android.library)
alias(libs.plugins.kotlin.android)
}
dependencies {
implementation project(":app:core")
testImplementation "junit:junit:${versions.junit}"
testImplementation "org.mockito:mockito-core:${versions.mockito}"
testImplementation libs.junit
testImplementation libs.mockito.core
}
android {

View file

@ -1,10 +1,12 @@
apply plugin: 'java-library'
apply plugin: 'kotlin'
apply plugin: 'com.android.lint'
plugins {
id 'java-library'
id 'kotlin'
alias(libs.plugins.android.lint)
}
dependencies {
implementation "org.jsoup:jsoup:${versions.jsoup}"
implementation libs.jsoup
testImplementation "junit:junit:${versions.junit}"
testImplementation "com.google.truth:truth:${versions.truth}"
testImplementation libs.junit
testImplementation libs.truth
}

View file

@ -1,5 +1,7 @@
apply plugin: 'com.android.application'
apply plugin: 'org.jetbrains.kotlin.android'
plugins {
alias(libs.plugins.android.application)
alias(libs.plugins.kotlin.android)
}
if (rootProject.testCoverage) {
apply plugin: 'jacoco'
@ -16,30 +18,30 @@ dependencies {
implementation project(":backend:webdav")
debugImplementation project(":backend:demo")
implementation "androidx.appcompat:appcompat:${versions.androidxAppCompat}"
implementation "androidx.core:core-ktx:${versions.androidxCore}"
implementation "androidx.work:work-runtime-ktx:${versions.androidxWorkManager}"
implementation "com.takisoft.preferencex:preferencex:${versions.preferencesFix}"
implementation "com.jakewharton.timber:timber:${versions.timber}"
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:${versions.kotlinCoroutines}"
implementation libs.androidx.appcompat
implementation libs.androidx.core.ktx
implementation libs.androidx.work.ktx
implementation libs.preferencex
implementation libs.timber
implementation libs.kotlinx.coroutines.core
implementation "com.github.bumptech.glide:glide:${versions.glide}"
annotationProcessor "com.github.bumptech.glide:compiler:${versions.glide}"
implementation libs.glide
annotationProcessor libs.glide.compiler
if (project.hasProperty('k9mail.enableLeakCanary') && project.property('k9mail.enableLeakCanary') == "true") {
debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.9.1'
debugImplementation libs.leakcanary.android
}
// Required for DependencyInjectionTest to be able to resolve OpenPgpApiManager
testImplementation project(':plugins:openpgp-api-lib:openpgp-api')
testImplementation "org.robolectric:robolectric:${versions.robolectric}"
testImplementation "junit:junit:${versions.junit}"
testImplementation "com.google.truth:truth:${versions.truth}"
testImplementation "org.mockito:mockito-inline:${versions.mockito}"
testImplementation "org.mockito.kotlin:mockito-kotlin:${versions.mockitoKotlin}"
testImplementation "io.insert-koin:koin-test:${versions.koin}"
testImplementation "io.insert-koin:koin-test-junit4:${versions.koin}"
testImplementation libs.robolectric
testImplementation libs.junit
testImplementation libs.truth
testImplementation libs.mockito.inline
testImplementation libs.mockito.kotlin
testImplementation libs.koin.test
testImplementation libs.koin.test.junit4
}
android {

View file

@ -1,26 +1,28 @@
apply plugin: 'com.android.library'
apply plugin: 'org.jetbrains.kotlin.android'
plugins {
alias(libs.plugins.android.library)
alias(libs.plugins.kotlin.android)
}
dependencies {
api "io.insert-koin:koin-core:${versions.koin}"
api libs.koin.core
implementation project(":app:core")
implementation "androidx.core:core-ktx:${versions.androidxCore}"
implementation "com.jakewharton.timber:timber:${versions.timber}"
implementation "org.apache.james:apache-mime4j-core:${versions.mime4j}"
implementation "commons-io:commons-io:${versions.commonsIo}"
implementation "com.squareup.moshi:moshi:${versions.moshi}"
implementation libs.androidx.core.ktx
implementation libs.timber
implementation libs.apache.mime4j.core
implementation libs.commons.io
implementation libs.moshi
testImplementation project(':mail:testing')
testImplementation project(':app:testing')
testImplementation "org.robolectric:robolectric:${versions.robolectric}"
testImplementation "junit:junit:${versions.junit}"
testImplementation "com.google.truth:truth:${versions.truth}"
testImplementation "org.mockito:mockito-inline:${versions.mockito}"
testImplementation "org.mockito.kotlin:mockito-kotlin:${versions.mockitoKotlin}"
testImplementation "io.insert-koin:koin-test:${versions.koin}"
testImplementation "io.insert-koin:koin-test-junit4:${versions.koin}"
testImplementation "commons-io:commons-io:${versions.commonsIo}"
testImplementation libs.robolectric
testImplementation libs.junit
testImplementation libs.truth
testImplementation libs.mockito.inline
testImplementation libs.mockito.kotlin
testImplementation libs.koin.test
testImplementation libs.koin.test.junit4
testImplementation libs.commons.io
}
android {

View file

@ -1,14 +1,16 @@
apply plugin: 'com.android.library'
apply plugin: 'org.jetbrains.kotlin.android'
plugins {
alias(libs.plugins.android.library)
alias(libs.plugins.kotlin.android)
}
dependencies {
implementation project(':app:core')
api "junit:junit:${versions.junit}"
api "org.robolectric:robolectric:${versions.robolectric}"
api "io.insert-koin:koin-core:${versions.koin}"
api "org.mockito:mockito-core:${versions.mockito}"
api "org.mockito.kotlin:mockito-kotlin:${versions.mockitoKotlin}"
api libs.junit
api libs.robolectric
api libs.koin.core
api libs.mockito.core
api libs.mockito.kotlin
}
android {

View file

@ -1,20 +1,22 @@
apply plugin: 'com.android.library'
apply plugin: 'org.jetbrains.kotlin.android'
plugins {
alias(libs.plugins.android.library)
alias(libs.plugins.kotlin.android)
}
dependencies {
implementation project(":app:core")
api "androidx.appcompat:appcompat:${versions.androidxAppCompat}"
api "androidx.activity:activity:${versions.androidxActivity}"
api "com.google.android.material:material:${versions.materialComponents}"
api "androidx.navigation:navigation-fragment:${versions.androidxNavigation}"
api "androidx.navigation:navigation-ui:${versions.androidxNavigation}"
api "androidx.lifecycle:lifecycle-livedata-ktx:${versions.androidxLifecycle}"
api libs.androidx.appcompat
api libs.androidx.activity
api libs.android.material
api libs.androidx.navigation.fragment
api libs.androidx.navigation.ui
api libs.androidx.lifecycle.livedata.ktx
implementation "androidx.core:core-ktx:${versions.androidxCore}"
implementation "androidx.biometric:biometric:${versions.androidxBiometric}"
implementation "com.jakewharton.timber:timber:${versions.timber}"
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:${versions.kotlinCoroutines}"
implementation libs.androidx.core.ktx
implementation libs.androidx.biometric
implementation libs.timber
implementation libs.kotlinx.coroutines.core
}
android {

View file

@ -1,6 +1,8 @@
apply plugin: 'com.android.library'
apply plugin: 'org.jetbrains.kotlin.android'
apply plugin: 'org.jetbrains.kotlin.plugin.parcelize'
plugins {
alias(libs.plugins.android.library)
alias(libs.plugins.kotlin.android)
alias(libs.plugins.kotlin.parcelize)
}
dependencies {
api project(":app:ui:base")
@ -16,57 +18,57 @@ dependencies {
implementation project(':plugins:openpgp-api-lib:openpgp-api')
implementation "androidx.appcompat:appcompat:${versions.androidxAppCompat}"
implementation "androidx.preference:preference:${versions.androidxPreference}"
implementation "com.takisoft.preferencex:preferencex:${versions.preferencesFix}"
implementation "com.takisoft.preferencex:preferencex-datetimepicker:${versions.preferencesFix}"
implementation "com.takisoft.preferencex:preferencex-colorpicker:${versions.preferencesFix}"
implementation "androidx.recyclerview:recyclerview:${versions.androidxRecyclerView}"
implementation libs.androidx.appcompat
implementation libs.androidx.preference
implementation libs.preferencex
implementation libs.preferencex.datetimepicker
implementation libs.preferencex.colorpicker
implementation libs.androidx.recyclerview
implementation project(':ui-utils:LinearLayoutManager')
implementation project(':ui-utils:ItemTouchHelper')
implementation "androidx.lifecycle:lifecycle-runtime-ktx:${versions.androidxLifecycle}"
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:${versions.androidxLifecycle}"
implementation "androidx.lifecycle:lifecycle-livedata-ktx:${versions.androidxLifecycle}"
implementation "androidx.constraintlayout:constraintlayout:${versions.androidxConstraintLayout}"
implementation "androidx.cardview:cardview:${versions.androidxCardView}"
implementation "androidx.localbroadcastmanager:localbroadcastmanager:${versions.androidxLocalBroadcastManager}"
implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.1.0"
implementation "de.cketti.library.changelog:ckchangelog-core:2.0.0-beta02"
implementation "com.splitwise:tokenautocomplete:4.0.0-beta01"
implementation "de.cketti.safecontentresolver:safe-content-resolver-v21:1.0.0"
implementation 'com.mikepenz:materialdrawer:8.4.5'
implementation 'com.github.ByteHamster:SearchPreference:v2.3.0'
implementation "com.mikepenz:fastadapter:${versions.fastAdapter}"
implementation "com.mikepenz:fastadapter-extensions-drag:${versions.fastAdapter}"
implementation "com.mikepenz:fastadapter-extensions-utils:${versions.fastAdapter}"
implementation 'de.hdodenhof:circleimageview:3.1.0'
api 'net.openid:appauth:0.11.1'
implementation libs.androidx.lifecycle.runtime.ktx
implementation libs.androidx.lifecycle.viewmodel.ktx
implementation libs.androidx.lifecycle.livedata.ktx
implementation libs.androidx.constraintlayout
implementation libs.androidx.cardview
implementation libs.androidx.localbroadcastmanager
implementation libs.androidx.swiperefreshlayout
implementation libs.ckchangelog.core
implementation libs.tokenautocomplete
implementation libs.safe.content.resolver.v21
implementation libs.materialdrawer
implementation libs.search.preference
implementation libs.fastadapter
implementation libs.fastadapter.extensions.drag
implementation libs.fastadapter.extensions.utils
implementation libs.circleimageview
api libs.appauth
implementation "commons-io:commons-io:${versions.commonsIo}"
implementation "androidx.core:core-ktx:${versions.androidxCore}"
implementation "net.jcip:jcip-annotations:1.0"
implementation "com.jakewharton.timber:timber:${versions.timber}"
implementation "org.apache.james:apache-mime4j-core:${versions.mime4j}"
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:${versions.kotlinCoroutines}"
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:${versions.kotlinCoroutines}"
implementation libs.commons.io
implementation libs.androidx.core.ktx
implementation libs.jcip.annotations
implementation libs.timber
implementation libs.apache.mime4j.core
implementation libs.kotlinx.coroutines.core
implementation libs.kotlinx.coroutines.android
implementation "com.github.bumptech.glide:glide:${versions.glide}"
annotationProcessor "com.github.bumptech.glide:compiler:${versions.glide}"
implementation libs.glide
annotationProcessor libs.glide.compiler
testImplementation project(':mail:testing')
testImplementation project(':app:storage')
testImplementation project(':app:testing')
testImplementation "org.robolectric:robolectric:${versions.robolectric}"
testImplementation "androidx.test:core:${versions.androidxTestCore}"
testImplementation "junit:junit:${versions.junit}"
testImplementation "org.jetbrains.kotlin:kotlin-test:${versions.kotlin}"
testImplementation "com.google.truth:truth:${versions.truth}"
testImplementation "org.mockito:mockito-inline:${versions.mockito}"
testImplementation "org.mockito.kotlin:mockito-kotlin:${versions.mockitoKotlin}"
testImplementation "io.insert-koin:koin-test:${versions.koin}"
testImplementation "io.insert-koin:koin-test-junit4:${versions.koin}"
testImplementation "org.jetbrains.kotlinx:kotlinx-coroutines-test:${versions.kotlinCoroutines}"
testImplementation "app.cash.turbine:turbine:${versions.turbine}"
testImplementation libs.robolectric
testImplementation libs.androidx.test.core
testImplementation libs.junit
testImplementation libs.kotlin.test
testImplementation libs.truth
testImplementation libs.mockito.inline
testImplementation libs.mockito.kotlin
testImplementation libs.koin.test
testImplementation libs.koin.test.junit4
testImplementation libs.kotlinx.coroutines.test
testImplementation libs.turbine
}
android {

View file

@ -1,11 +1,13 @@
apply plugin: 'com.android.library'
apply plugin: 'org.jetbrains.kotlin.android'
plugins {
alias(libs.plugins.android.library)
alias(libs.plugins.kotlin.android)
}
dependencies {
implementation project(":app:ui:legacy")
implementation project(":app:core")
implementation "com.jakewharton.timber:timber:${versions.timber}"
implementation libs.timber
}
android {

View file

@ -1,5 +1,7 @@
apply plugin: 'com.android.library'
apply plugin: 'org.jetbrains.kotlin.android'
plugins {
alias(libs.plugins.android.library)
alias(libs.plugins.kotlin.android)
}
dependencies {
api project(":app:ui:base")
@ -7,23 +9,23 @@ dependencies {
implementation project(":app:autodiscovery:api")
implementation project(":mail:common")
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:${versions.androidxLifecycle}"
implementation "androidx.lifecycle:lifecycle-livedata-ktx:${versions.androidxLifecycle}"
implementation "androidx.constraintlayout:constraintlayout:${versions.androidxConstraintLayout}"
implementation "androidx.core:core-ktx:${versions.androidxCore}"
implementation "com.jakewharton.timber:timber:${versions.timber}"
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:${versions.kotlinCoroutines}"
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:${versions.kotlinCoroutines}"
implementation libs.androidx.lifecycle.viewmodel.ktx
implementation libs.androidx.lifecycle.livedata.ktx
implementation libs.androidx.constraintlayout
implementation libs.androidx.core.ktx
implementation libs.timber
implementation libs.kotlinx.coroutines.core
implementation libs.kotlinx.coroutines.android
testImplementation project(':mail:testing')
testImplementation project(':app:testing')
testImplementation "org.robolectric:robolectric:${versions.robolectric}"
testImplementation "junit:junit:${versions.junit}"
testImplementation "com.google.truth:truth:${versions.truth}"
testImplementation "org.mockito:mockito-core:${versions.mockito}"
testImplementation "org.mockito.kotlin:mockito-kotlin:${versions.mockitoKotlin}"
testImplementation "io.insert-koin:koin-test:${versions.koin}"
testImplementation "io.insert-koin:koin-test-junit4:${versions.koin}"
testImplementation libs.robolectric
testImplementation libs.junit
testImplementation libs.truth
testImplementation libs.mockito.core
testImplementation libs.mockito.kotlin
testImplementation libs.koin.test
testImplementation libs.koin.test.junit4
}
android {

View file

@ -1,6 +1,8 @@
apply plugin: 'java-library'
apply plugin: 'kotlin'
apply plugin: 'com.android.lint'
plugins {
id 'java-library'
id 'kotlin'
alias(libs.plugins.android.lint)
}
dependencies {
api project(":mail:common")

View file

@ -1,17 +1,19 @@
apply plugin: 'java-library'
apply plugin: 'kotlin'
apply plugin: 'com.google.devtools.ksp'
apply plugin: 'com.android.lint'
plugins {
id 'java-library'
id 'kotlin'
alias(libs.plugins.ksp)
alias(libs.plugins.android.lint)
}
dependencies {
api project(":backend:api")
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:${versions.kotlinCoroutines}"
implementation "com.squareup.moshi:moshi:${versions.moshi}"
ksp "com.squareup.moshi:moshi-kotlin-codegen:${versions.moshi}"
implementation libs.kotlinx.coroutines.core
implementation libs.moshi
ksp libs.moshi.kotlin.kotgen
testImplementation project(":mail:testing")
testImplementation "junit:junit:${versions.junit}"
testImplementation "org.mockito:mockito-core:${versions.mockito}"
testImplementation "com.google.truth:truth:${versions.truth}"
testImplementation libs.junit
testImplementation libs.mockito.core
testImplementation libs.truth
}

View file

@ -1,19 +1,21 @@
apply plugin: 'java-library'
apply plugin: 'kotlin'
apply plugin: 'com.android.lint'
plugins {
id 'java-library'
id 'kotlin'
alias(libs.plugins.android.lint)
}
dependencies {
api project(":backend:api")
api project(":mail:protocols:imap")
api project(":mail:protocols:smtp")
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:${versions.kotlinCoroutines}"
implementation libs.kotlinx.coroutines.core
testImplementation project(":mail:testing")
testImplementation project(":backend:testing")
testImplementation "junit:junit:${versions.junit}"
testImplementation "org.mockito:mockito-inline:${versions.mockito}"
testImplementation "org.mockito.kotlin:mockito-kotlin:${versions.mockitoKotlin}"
testImplementation "com.google.truth:truth:${versions.truth}"
testImplementation "org.apache.james:apache-mime4j-dom:${versions.mime4j}"
testImplementation libs.junit
testImplementation libs.mockito.inline
testImplementation libs.mockito.kotlin
testImplementation libs.truth
testImplementation libs.apache.mime4j.dom
}

View file

@ -1,18 +1,20 @@
apply plugin: 'java-library'
apply plugin: 'kotlin'
apply plugin: 'com.google.devtools.ksp'
apply plugin: 'com.android.lint'
plugins {
id 'java-library'
id 'kotlin'
alias(libs.plugins.ksp)
alias(libs.plugins.android.lint)
}
dependencies {
api project(":backend:api")
api "com.squareup.okhttp3:okhttp:${versions.okhttp}"
implementation "rs.ltt.jmap:jmap-client:0.3.1"
implementation "com.squareup.moshi:moshi:${versions.moshi}"
ksp "com.squareup.moshi:moshi-kotlin-codegen:${versions.moshi}"
api libs.okhttp
implementation libs.jmap.client
implementation libs.moshi
ksp libs.moshi.kotlin.kotgen
testImplementation project(":mail:testing")
testImplementation project(':backend:testing')
testImplementation "org.mockito:mockito-core:${versions.mockito}"
testImplementation("com.squareup.okhttp3:mockwebserver:${versions.okhttp}")
testImplementation libs.mockito.core
testImplementation libs.okhttp.mockwebserver
}

View file

@ -1,6 +1,8 @@
apply plugin: 'java-library'
apply plugin: 'kotlin'
apply plugin: 'com.android.lint'
plugins {
id 'java-library'
id 'kotlin'
alias(libs.plugins.android.lint)
}
dependencies {
api project(":backend:api")
@ -8,6 +10,6 @@ dependencies {
api project(":mail:protocols:smtp")
testImplementation project(":mail:testing")
testImplementation "junit:junit:${versions.junit}"
testImplementation "org.mockito:mockito-core:${versions.mockito}"
testImplementation libs.junit
testImplementation libs.mockito.core
}

View file

@ -1,10 +1,12 @@
apply plugin: 'java-library'
apply plugin: 'kotlin'
apply plugin: 'com.android.lint'
plugins {
id 'java-library'
id 'kotlin'
alias(libs.plugins.android.lint)
}
dependencies {
implementation project(":backend:api")
implementation "com.squareup.okio:okio:${versions.okio}"
implementation "junit:junit:${versions.junit}"
implementation libs.okio
implementation libs.junit
}

View file

@ -1,12 +1,14 @@
apply plugin: 'java-library'
apply plugin: 'kotlin'
apply plugin: 'com.android.lint'
plugins {
id 'java-library'
id 'kotlin'
alias(libs.plugins.android.lint)
}
dependencies {
api project(":backend:api")
api project(":mail:protocols:webdav")
testImplementation project(":mail:testing")
testImplementation "junit:junit:${versions.junit}"
testImplementation "org.mockito:mockito-core:${versions.mockito}"
testImplementation libs.junit
testImplementation libs.mockito.core
}

View file

@ -1,76 +1,15 @@
import com.android.build.gradle.BasePlugin
import org.gradle.api.plugins.JavaPlugin
import org.jetbrains.kotlin.gradle.dsl.KotlinCompile
buildscript {
ext {
// Judging the impact of newer library versions on the app requires being intimately familiar with the code
// base. Please don't open pull requests upgrading dependencies if you're a new contributor.
versions = [
'kotlin': '1.7.22',
'kotlinCoroutines': '1.6.4',
'jetbrainsAnnotations': '23.0.0',
'androidxAppCompat': '1.5.1',
'androidxActivity': '1.6.0',
'androidxRecyclerView': '1.2.1',
'androidxLifecycle': '2.5.1',
'androidxAnnotation': '1.5.0',
'androidxBiometric': '1.1.0',
'androidxNavigation': '2.5.2',
'androidxConstraintLayout': '2.1.4',
'androidxWorkManager': '2.7.1',
'androidxFragment': '1.5.3',
'androidxLocalBroadcastManager': '1.1.0',
'androidxCore': '1.9.0',
'androidxCardView': '1.0.0',
'androidxPreference': '1.2.0',
'androidxDrawerLayout': '1.1.1',
'androidxTransition': '1.4.1',
'androidxTestCore': '1.4.0',
'materialComponents': '1.6.1',
'fastAdapter': '5.7.0',
'preferencesFix': '1.1.0',
'okio': '3.2.0',
'moshi': '1.14.0',
'timber': '5.0.1',
'koin': '3.2.2',
// We can't upgrade Commons IO beyond this version because starting with 2.7 it is using Java 8 API
// that is not available until Android API 26 (even with desugaring enabled).
// See https://issuetracker.google.com/issues/160484830
'commonsIo': '2.6',
'mime4j': '0.8.6',
'okhttp': '4.10.0',
'minidns': '1.0.4',
'glide': '4.14.2',
'jsoup': '1.15.3',
'httpClient': '4.5.13',
'androidxTestRunner': '1.4.0',
'junit': '4.13.2',
'robolectric': '4.9',
'mockito': '4.8.0',
'mockitoKotlin': '4.0.0',
'truth': '1.1.3',
'turbine': '0.11.0',
'ktlint': '0.44.0'
]
javaVersion = JavaVersion.VERSION_1_8
}
repositories {
mavenCentral()
google()
gradlePluginPortal()
}
dependencies {
classpath 'com.android.tools.build:gradle:7.3.1'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:${versions.kotlin}"
classpath "com.google.devtools.ksp:com.google.devtools.ksp.gradle.plugin:1.7.22-1.0.8"
classpath "org.jlleitschuh.gradle:ktlint-gradle:11.0.0"
}
plugins {
alias(libs.plugins.android.application) apply false
alias(libs.plugins.android.library) apply false
alias(libs.plugins.android.lint) apply false
alias(libs.plugins.ksp) apply false
alias(libs.plugins.kotlin.android) apply false
alias(libs.plugins.kotlin.parcelize) apply false
alias(libs.plugins.kotlin.jvm) apply false
alias(libs.plugins.ktlint) apply false
}
project.ext {
@ -80,23 +19,23 @@ project.ext {
allprojects {
configurations.all {
resolutionStrategy.dependencySubstitution {
substitute module("androidx.core:core") using module("androidx.core:core:${versions.androidxCore}")
substitute module("androidx.activity:activity") using module("androidx.activity:activity:${versions.androidxActivity}")
substitute module("androidx.activity:activity-ktx") using module("androidx.activity:activity-ktx:${versions.androidxActivity}")
substitute module("androidx.fragment:fragment") using module("androidx.fragment:fragment:${versions.androidxFragment}")
substitute module("androidx.fragment:fragment-ktx") using module("androidx.fragment:fragment-ktx:${versions.androidxFragment}")
substitute module("androidx.appcompat:appcompat") using module("androidx.appcompat:appcompat:${versions.androidxAppCompat}")
substitute module("androidx.preference:preference") using module("androidx.preference:preference:${versions.androidxPreference}")
substitute module("androidx.recyclerview:recyclerview") using module("androidx.recyclerview:recyclerview:${versions.androidxRecyclerView}")
substitute module("androidx.constraintlayout:constraintlayout") using module("androidx.constraintlayout:constraintlayout:${versions.androidxConstraintLayout}")
substitute module("androidx.drawerlayout:drawerlayout") using module("androidx.drawerlayout:drawerlayout:${versions.androidxDrawerLayout}")
substitute module("androidx.lifecycle:lifecycle-livedata") using module("androidx.lifecycle:lifecycle-livedata:${versions.androidxLifecycle}")
substitute module("androidx.transition:transition") using module("androidx.transition:transition:${versions.androidxTransition}")
substitute module("org.jetbrains:annotations") using module("org.jetbrains:annotations:${versions.jetbrainsAnnotations}")
substitute module("org.jetbrains.kotlin:kotlin-stdlib") using module("org.jetbrains.kotlin:kotlin-stdlib:${versions.kotlin}")
substitute module("org.jetbrains.kotlin:kotlin-stdlib-jdk7") using module("org.jetbrains.kotlin:kotlin-stdlib-jdk7:${versions.kotlin}")
substitute module("org.jetbrains.kotlin:kotlin-stdlib-jdk8") using module("org.jetbrains.kotlin:kotlin-stdlib-jdk8:${versions.kotlin}")
substitute module("org.jetbrains.kotlinx:kotlinx-coroutines-android") using module("org.jetbrains.kotlinx:kotlinx-coroutines-android:${versions.kotlinCoroutines}")
substitute module("androidx.core:core") using module("androidx.core:core:${libs.versions.androidxCore.get()}")
substitute module("androidx.activity:activity") using module("androidx.activity:activity:${libs.versions.androidxActivity.get()}")
substitute module("androidx.activity:activity-ktx") using module("androidx.activity:activity-ktx:${libs.versions.androidxActivity.get()}")
substitute module("androidx.fragment:fragment") using module("androidx.fragment:fragment:${libs.versions.androidxFragment.get()}")
substitute module("androidx.fragment:fragment-ktx") using module("androidx.fragment:fragment-ktx:${libs.versions.androidxFragment.get()}")
substitute module("androidx.appcompat:appcompat") using module("androidx.appcompat:appcompat:${libs.versions.androidxAppCompat.get()}")
substitute module("androidx.preference:preference") using module("androidx.preference:preference:${libs.versions.androidxPreference.get()}")
substitute module("androidx.recyclerview:recyclerview") using module("androidx.recyclerview:recyclerview:${libs.versions.androidxRecyclerView.get()}")
substitute module("androidx.constraintlayout:constraintlayout") using module("androidx.constraintlayout:constraintlayout:${libs.versions.androidxConstraintLayout.get()}")
substitute module("androidx.drawerlayout:drawerlayout") using module("androidx.drawerlayout:drawerlayout:${libs.versions.androidxDrawerLayout.get()}")
substitute module("androidx.lifecycle:lifecycle-livedata") using module("androidx.lifecycle:lifecycle-livedata:${libs.versions.androidxLifecycle.get()}")
substitute module("androidx.transition:transition") using module("androidx.transition:transition:${libs.versions.androidxTransition.get()}")
substitute module("org.jetbrains:annotations") using module("org.jetbrains:annotations:${libs.versions.jetbrainsAnnotations.get()}")
substitute module("org.jetbrains.kotlin:kotlin-stdlib") using module("org.jetbrains.kotlin:kotlin-stdlib:${libs.versions.kotlin.get()}")
substitute module("org.jetbrains.kotlin:kotlin-stdlib-jdk7") using module("org.jetbrains.kotlin:kotlin-stdlib-jdk7:${libs.versions.kotlin.get()}")
substitute module("org.jetbrains.kotlin:kotlin-stdlib-jdk8") using module("org.jetbrains.kotlin:kotlin-stdlib-jdk8:${libs.versions.kotlin.get()}")
substitute module("org.jetbrains.kotlinx:kotlinx-coroutines-android") using module("org.jetbrains.kotlinx:kotlinx-coroutines-android:${libs.versions.kotlinCoroutines.get()}")
}
}
@ -113,8 +52,8 @@ allprojects {
}
compileOptions {
sourceCompatibility javaVersion
targetCompatibility javaVersion
sourceCompatibility libs.versions.java.get()
targetCompatibility libs.versions.java.get()
}
lintOptions {
@ -132,8 +71,8 @@ allprojects {
plugins.withType(JavaPlugin).configureEach {
project.java {
sourceCompatibility = javaVersion
targetCompatibility = javaVersion
sourceCompatibility = libs.versions.java.get()
targetCompatibility = libs.versions.java.get()
}
}
@ -148,13 +87,13 @@ allprojects {
tasks.withType(KotlinCompile) {
kotlinOptions {
jvmTarget = javaVersion
jvmTarget = libs.versions.java.get()
}
}
apply plugin: 'org.jlleitschuh.gradle.ktlint'
ktlint {
version = versions.ktlint
version = libs.versions.ktlint.get()
}
}

View file

@ -1,5 +1,7 @@
apply plugin: 'org.jetbrains.kotlin.jvm'
apply plugin: 'application'
plugins {
alias(libs.plugins.kotlin.jvm)
id 'application'
}
version 'unspecified'
@ -10,6 +12,6 @@ application {
dependencies {
implementation project(':app:html-cleaner')
implementation "com.github.ajalt.clikt:clikt:3.4.0"
implementation "com.squareup.okio:okio:${versions.okio}"
implementation libs.clikt
implementation libs.okio
}

View file

@ -1,27 +1,29 @@
apply plugin: 'java-library'
apply plugin: 'kotlin'
apply plugin: 'com.android.lint'
plugins {
id 'java-library'
id 'kotlin'
alias(libs.plugins.android.lint)
}
if (rootProject.testCoverage) {
apply plugin: 'jacoco'
}
dependencies {
api "org.jetbrains:annotations:${versions.jetbrainsAnnotations}"
api libs.jetbrains.annotations
implementation "org.apache.james:apache-mime4j-core:${versions.mime4j}"
implementation "org.apache.james:apache-mime4j-dom:${versions.mime4j}"
implementation "com.squareup.okio:okio:${versions.okio}"
implementation "commons-io:commons-io:${versions.commonsIo}"
implementation "com.squareup.moshi:moshi:${versions.moshi}"
implementation libs.apache.mime4j.core
implementation libs.apache.mime4j.dom
implementation libs.okio
implementation libs.commons.io
implementation libs.moshi
// We're only using this for its DefaultHostnameVerifier
implementation "org.apache.httpcomponents.client5:httpclient5:5.1.3"
implementation libs.apache.httpclient5
testImplementation project(":mail:testing")
testImplementation "junit:junit:${versions.junit}"
testImplementation "com.google.truth:truth:${versions.truth}"
testImplementation "org.mockito:mockito-inline:${versions.mockito}"
testImplementation "org.mockito.kotlin:mockito-kotlin:${versions.mockitoKotlin}"
testImplementation "com.ibm.icu:icu4j-charset:70.1"
testImplementation libs.junit
testImplementation libs.truth
testImplementation libs.mockito.inline
testImplementation libs.mockito.kotlin
testImplementation libs.icu4j.charset
}

View file

@ -1,6 +1,8 @@
apply plugin: 'java-library'
apply plugin: 'kotlin'
apply plugin: 'com.android.lint'
plugins {
id 'java-library'
id 'kotlin'
alias(libs.plugins.android.lint)
}
if (rootProject.testCoverage) {
apply plugin: 'jacoco'
@ -9,16 +11,16 @@ if (rootProject.testCoverage) {
dependencies {
api project(":mail:common")
implementation "com.jcraft:jzlib:1.0.7"
implementation "com.beetstra.jutf7:jutf7:1.0.0"
implementation "commons-io:commons-io:${versions.commonsIo}"
implementation "com.squareup.okio:okio:${versions.okio}"
implementation libs.jzlib
implementation libs.jutf7
implementation libs.commons.io
implementation libs.okio
testImplementation project(":mail:testing")
testImplementation "junit:junit:${versions.junit}"
testImplementation "com.google.truth:truth:${versions.truth}"
testImplementation "org.mockito:mockito-core:${versions.mockito}"
testImplementation "org.mockito.kotlin:mockito-kotlin:${versions.mockitoKotlin}"
testImplementation "com.squareup.okio:okio:${versions.okio}"
testImplementation "org.apache.james:apache-mime4j-core:${versions.mime4j}"
testImplementation libs.junit
testImplementation libs.truth
testImplementation libs.mockito.core
testImplementation libs.mockito.kotlin
testImplementation libs.okio
testImplementation libs.apache.mime4j.core
}

View file

@ -1,6 +1,8 @@
apply plugin: 'java-library'
apply plugin: 'kotlin'
apply plugin: 'com.android.lint'
plugins {
id 'java-library'
id 'kotlin'
alias(libs.plugins.android.lint)
}
if (rootProject.testCoverage) {
apply plugin: 'jacoco'
@ -10,11 +12,11 @@ dependencies {
api project(":mail:common")
testImplementation project(":mail:testing")
testImplementation "junit:junit:${versions.junit}"
testImplementation "com.google.truth:truth:${versions.truth}"
testImplementation "org.mockito:mockito-core:${versions.mockito}"
testImplementation "org.mockito.kotlin:mockito-kotlin:${versions.mockitoKotlin}"
testImplementation "com.squareup.okio:okio:${versions.okio}"
testImplementation "com.jcraft:jzlib:1.0.7"
testImplementation "commons-io:commons-io:${versions.commonsIo}"
testImplementation libs.junit
testImplementation libs.truth
testImplementation libs.mockito.core
testImplementation libs.mockito.kotlin
testImplementation libs.okio
testImplementation libs.jzlib
testImplementation libs.commons.io
}

View file

@ -1,6 +1,8 @@
apply plugin: 'java-library'
apply plugin: 'kotlin'
apply plugin: 'com.android.lint'
plugins {
id 'java-library'
id 'kotlin'
alias(libs.plugins.android.lint)
}
if (rootProject.testCoverage) {
apply plugin: 'jacoco'
@ -9,13 +11,13 @@ if (rootProject.testCoverage) {
dependencies {
api project(":mail:common")
implementation "commons-io:commons-io:${versions.commonsIo}"
implementation "com.squareup.okio:okio:${versions.okio}"
implementation libs.commons.io
implementation libs.okio
testImplementation project(":mail:testing")
testImplementation "junit:junit:${versions.junit}"
testImplementation "com.google.truth:truth:${versions.truth}"
testImplementation "org.mockito.kotlin:mockito-kotlin:${versions.mockitoKotlin}"
testImplementation "com.squareup.okio:okio:${versions.okio}"
testImplementation "com.jcraft:jzlib:1.0.7"
testImplementation libs.junit
testImplementation libs.truth
testImplementation libs.mockito.kotlin
testImplementation libs.okio
testImplementation libs.jzlib
}

View file

@ -1,5 +1,7 @@
apply plugin: 'java-library'
apply plugin: 'com.android.lint'
plugins {
id 'java-library'
alias(libs.plugins.android.lint)
}
if (rootProject.testCoverage) {
apply plugin: 'jacoco'
@ -8,12 +10,12 @@ if (rootProject.testCoverage) {
dependencies {
api project(":mail:common")
implementation "commons-io:commons-io:${versions.commonsIo}"
compileOnly "org.apache.httpcomponents:httpclient:${versions.httpClient}"
implementation libs.commons.io
compileOnly libs.apache.httpclient
testImplementation project(":mail:testing")
testImplementation "junit:junit:${versions.junit}"
testImplementation "com.google.truth:truth:${versions.truth}"
testImplementation "org.mockito:mockito-inline:${versions.mockito}"
testImplementation "org.apache.httpcomponents:httpclient:${versions.httpClient}"
testImplementation libs.junit
testImplementation libs.truth
testImplementation libs.mockito.inline
testImplementation libs.apache.httpclient
}

View file

@ -1,6 +1,8 @@
apply plugin: 'java-library'
apply plugin: 'kotlin'
apply plugin: 'com.android.lint'
plugins {
id 'java-library'
id 'kotlin'
alias(libs.plugins.android.lint)
}
if (rootProject.testCoverage) {
apply plugin: 'jacoco'
@ -9,6 +11,6 @@ if (rootProject.testCoverage) {
dependencies {
api project(":mail:common")
api "com.squareup.okio:okio:${versions.okio}"
api "junit:junit:${versions.junit}"
api libs.okio
api libs.junit
}

View file

@ -1,4 +1,6 @@
apply plugin: 'com.android.library'
plugins {
alias(libs.plugins.android.library)
}
android {
namespace 'org.openintents.openpgp'
@ -9,7 +11,7 @@ android {
}
dependencies {
implementation "androidx.lifecycle:lifecycle-common:${versions.androidxLifecycle}"
implementation "com.jakewharton.timber:timber:${versions.timber}"
implementation "com.takisoft.preferencex:preferencex:${versions.preferencesFix}"
implementation libs.androidx.lifecycle.common
implementation libs.timber
implementation libs.preferencex
}

View file

@ -1,3 +1,11 @@
pluginManagement {
repositories {
gradlePluginPortal()
google()
mavenCentral()
}
}
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
@ -5,6 +13,133 @@ dependencyResolutionManagement {
mavenCentral()
maven { url 'https://jitpack.io' }
}
versionCatalogs {
libs {
// Judging the impact of newer library versions on the app requires being intimately familiar with the code
// base. Please don't open pull requests upgrading dependencies if you're a new contributor.
version('java', '1.8')
version('androidGradlePlugin', '7.3.1')
version('ktlint', '0.44.0')
version('kotlin', '1.7.22')
version('kotlinCoroutines', '1.6.4')
version('jetbrainsAnnotations', '23.0.0')
version('androidxAppCompat', '1.5.1')
version('androidxActivity', '1.6.0')
version('androidxRecyclerView', '1.2.1')
version('androidxLifecycle', '2.5.1')
version('androidxNavigation', '2.5.2')
version('androidxConstraintLayout', '2.1.4')
version('androidxFragment', '1.5.3')
version('androidxCore', '1.9.0')
version('androidxPreference', '1.2.0')
version('androidxDrawerLayout', '1.1.1')
version('androidxTransition', '1.4.1')
version('fastAdapter', '5.7.0')
version('preferencesFix', '1.1.0')
version('timber', '5.0.1')
version('koin', '3.2.2')
version('mime4j', '0.8.6')
version('okhttp', '4.10.0')
version('glide', '4.14.2')
version('moshi', '1.14.0')
version('mockito', '4.8.0')
library('kotlin-test', 'org.jetbrains.kotlin', 'kotlin-test').versionRef('kotlin')
library('kotlin-reflect', 'org.jetbrains.kotlin', 'kotlin-reflect').versionRef('kotlin')
library('kotlinx-coroutines-core', 'org.jetbrains.kotlinx', 'kotlinx-coroutines-core').versionRef('kotlinCoroutines')
library('kotlinx-coroutines-android', 'org.jetbrains.kotlinx', 'kotlinx-coroutines-android').versionRef('kotlinCoroutines')
library('kotlinx-coroutines-test', 'org.jetbrains.kotlinx', 'kotlinx-coroutines-test').versionRef('kotlinCoroutines')
library('jetbrains-annotations', 'org.jetbrains', 'annotations').versionRef('jetbrainsAnnotations')
library('androidx-appcompat', 'androidx.appcompat', 'appcompat').versionRef('androidxAppCompat')
library('androidx-activity', 'androidx.activity', 'activity').versionRef('androidxActivity')
library('androidx-recyclerview', 'androidx.recyclerview', 'recyclerview').versionRef('androidxRecyclerView')
library('androidx-lifecycle-common', 'androidx.lifecycle', 'lifecycle-common').versionRef('androidxLifecycle')
library('androidx-lifecycle-livedata-ktx', 'androidx.lifecycle', 'lifecycle-livedata-ktx').versionRef('androidxLifecycle')
library('androidx-lifecycle-runtime-ktx', 'androidx.lifecycle', 'lifecycle-runtime-ktx').versionRef('androidxLifecycle')
library('androidx-lifecycle-viewmodel-ktx', 'androidx.lifecycle', 'lifecycle-viewmodel-ktx').versionRef('androidxLifecycle')
library('androidx-annotation', 'androidx.annotation', 'annotation').version('1.5.0')
library('androidx-biometric', 'androidx.biometric', 'biometric').version('1.1.0')
library('androidx-navigation-fragment', 'androidx.navigation', 'navigation-fragment').versionRef('androidxNavigation')
library('androidx-navigation-ui', 'androidx.navigation', 'navigation-ui').versionRef('androidxNavigation')
library('androidx-constraintlayout', 'androidx.constraintlayout', 'constraintlayout').versionRef('androidxConstraintLayout')
library('androidx-work-ktx', 'androidx.work', 'work-runtime-ktx').version('2.7.1')
library('androidx-fragment', 'androidx.fragment', 'fragment').versionRef('androidxFragment')
library('androidx-localbroadcastmanager', 'androidx.localbroadcastmanager', 'localbroadcastmanager').version('1.1.0')
library('androidx-core', 'androidx.core', 'core').versionRef('androidxCore')
library('androidx-core-ktx', 'androidx.core', 'core-ktx').versionRef('androidxCore')
library('androidx-cardview', 'androidx.cardview', 'cardview').version('1.0.0')
library('androidx-preference', 'androidx.preference', 'preference').versionRef('androidxPreference')
library('androidx-swiperefreshlayout', 'androidx.swiperefreshlayout', 'swiperefreshlayout').version('1.1.0')
library('androidx-test-core', 'androidx.test', 'core').version('1.4.0')
library('android-material', 'com.google.android.material', 'material').version('1.6.1')
library('fastadapter', 'com.mikepenz', 'fastadapter').versionRef('fastAdapter')
library('fastadapter-extensions-drag', 'com.mikepenz', 'fastadapter-extensions-drag').versionRef('fastAdapter')
library('fastadapter-extensions-utils', 'com.mikepenz', 'fastadapter-extensions-utils').versionRef('fastAdapter')
library('materialdrawer', 'com.mikepenz', 'materialdrawer').version('8.4.5')
library('preferencex', 'com.takisoft.preferencex', 'preferencex').versionRef('preferencesFix')
library('preferencex-datetimepicker', 'com.takisoft.preferencex', 'preferencex-datetimepicker').versionRef('preferencesFix')
library('preferencex-colorpicker', 'com.takisoft.preferencex', 'preferencex-colorpicker').versionRef('preferencesFix')
library('okio', 'com.squareup.okio', 'okio').version('3.2.0')
library('moshi', 'com.squareup.moshi', 'moshi').versionRef('moshi')
library('moshi-kotlin-kotgen', 'com.squareup.moshi', 'moshi-kotlin-codegen').versionRef('moshi')
library('timber', 'com.jakewharton.timber', 'timber').version('5.0.1')
library('koin-core', 'io.insert-koin', 'koin-core').versionRef('koin')
library('koin-android', 'io.insert-koin', 'koin-android').versionRef('koin')
library('koin-test', 'io.insert-koin', 'koin-test').versionRef('koin')
library('koin-test-junit4', 'io.insert-koin', 'koin-test-junit4').versionRef('koin')
// We can't upgrade Commons IO beyond this version because starting with 2.7 it is using Java 8 API
// that is not available until Android API 26 (even with desugaring enabled).
// See https://issuetracker.google.com/issues/160484830
library('commons-io', 'commons-io', 'commons-io').version('2.6')
library('apache-mime4j-core', 'org.apache.james', 'apache-mime4j-core').versionRef('mime4j')
library('apache-mime4j-dom', 'org.apache.james', 'apache-mime4j-dom').versionRef('mime4j')
library('okhttp', 'com.squareup.okhttp3', 'okhttp').versionRef('okhttp')
library('okhttp-mockwebserver', 'com.squareup.okhttp3', 'mockwebserver').versionRef('okhttp')
library('minidns-hla', 'org.minidns', 'minidns-hla').version('1.0.4')
library('glide', 'com.github.bumptech.glide', 'glide').versionRef('glide')
library('glide-compiler', 'com.github.bumptech.glide', 'compiler').versionRef('glide')
library('jsoup', 'org.jsoup', 'jsoup').version('1.15.3')
library('apache-httpclient', 'org.apache.httpcomponents', 'httpclient').version('4.5.13')
library('apache-httpclient5', 'org.apache.httpcomponents.client5', 'httpclient5').version('5.1.3')
library('clikt', 'com.github.ajalt.clikt', 'clikt').version('3.4.0')
library('jzlib', 'com.jcraft', 'jzlib').version('1.0.7')
library('jutf7', 'com.beetstra.jutf7', 'jutf7').version('1.0.0')
library('jcip-annotations', 'net.jcip', 'jcip-annotations').version('1.0')
library('jmap-client', 'rs.ltt.jmap', 'jmap-client').version('0.3.1')
library('circleimageview', 'de.hdodenhof', 'circleimageview').version('3.1.0')
library('appauth', 'net.openid', 'appauth').version('0.11.1')
library('search-preference', 'com.github.ByteHamster', 'SearchPreference').version('v2.3.0')
library('safe-content-resolver-v21', 'de.cketti.safecontentresolver', 'safe-content-resolver-v21').version('1.0.0')
library('tokenautocomplete', 'com.splitwise', 'tokenautocomplete').version('4.0.0-beta01')
library('ckchangelog-core', 'de.cketti.library.changelog', 'ckchangelog-core').version('2.0.0-beta02')
library('xmlpull-extracted-from-android', 'com.github.cketti', 'xmlpull-extracted-from-android').version('1.0')
library('kxml2-extracted-from-android', 'com.github.cketti', 'kxml2-extracted-from-android').version('1.0')
library('junit', 'junit', 'junit').version('4.13.2')
library('robolectric', 'org.robolectric', 'robolectric').version('4.9')
library('mockito-core', 'org.mockito', 'mockito-core').versionRef('mockito')
library('mockito-inline', 'org.mockito', 'mockito-inline').versionRef('mockito')
library('mockito-kotlin', 'org.mockito.kotlin', 'mockito-kotlin').version('4.0.0')
library('truth', 'com.google.truth', 'truth').version('1.1.3')
library('turbine', 'app.cash.turbine', 'turbine').version('0.11.0')
library('jdom2', 'org.jdom', 'jdom2').version('2.0.6')
library('icu4j-charset', 'com.ibm.icu', 'icu4j-charset').version('70.1')
library('leakcanary-android', 'com.squareup.leakcanary', 'leakcanary-android').version('2.9.1')
plugin('android-application', 'com.android.application').versionRef('androidGradlePlugin')
plugin('android-library', 'com.android.library').versionRef('androidGradlePlugin')
plugin('android-lint', 'com.android.lint').versionRef('androidGradlePlugin')
plugin('ksp', 'com.google.devtools.ksp').version('1.7.22-1.0.8')
plugin('kotlin-android', 'org.jetbrains.kotlin.android').versionRef('kotlin')
plugin('kotlin-parcelize', 'org.jetbrains.kotlin.plugin.parcelize').versionRef('kotlin')
plugin('kotlin-jvm', 'org.jetbrains.kotlin.jvm').versionRef('kotlin')
plugin('ktlint', 'org.jlleitschuh.gradle.ktlint').version('11.0.0')
}
}
}
include ':app:k9mail'

View file

@ -1,7 +1,9 @@
apply plugin: 'com.android.library'
plugins {
alias(libs.plugins.android.library)
}
dependencies {
api "androidx.recyclerview:recyclerview:${versions.androidxRecyclerView}"
api libs.androidx.recyclerview
}
android {

View file

@ -1,7 +1,9 @@
apply plugin: 'com.android.library'
plugins {
alias(libs.plugins.android.library)
}
dependencies {
api "androidx.recyclerview:recyclerview:${versions.androidxRecyclerView}"
api libs.androidx.recyclerview
}
android {