1
0
Fork 0
mirror of https://github.com/anyproto/anytype-kotlin.git synced 2025-06-08 05:47:05 +09:00

DROID-649 Tech | Enhancement | Get rid of dependencies.gradle (#2778)

This commit is contained in:
Mikhail 2022-12-25 20:53:47 +03:00 committed by GitHub
parent 184305bc2c
commit 802e686b0a
Signed by: github
GPG key ID: 4AEE18F83AFDEB23
22 changed files with 291 additions and 379 deletions

View file

@ -54,7 +54,7 @@ Or [download](https://download.anytype.io/) an apk for your device architecture
[Our tech change log](https://github.com/anytypeio/android-anytype/blob/develop/CHANGELOG.md).
[Anytype Android app dependencies](https://github.com/anytypeio/android-anytype/blob/develop/dependencies.gradle).
[Anytype Android app dependencies](https://github.com/anytypeio/android-anytype/blob/develop/gradle/libs.versions.toml).
### Conventions

View file

@ -16,12 +16,10 @@ android {
}
dependencies {
def app = rootProject.ext.mainApplication
def analytics = rootProject.ext.analytics
implementation libs.kotlin
implementation app.coroutinesAndroid
implementation app.timber
implementation analytics.amplitude
implementation libs.coroutinesAndroid
implementation libs.timber
implementation libs.amplitude
}
tasks.register("enableAnalyticsForDebugBuilds") {

View file

@ -147,68 +147,60 @@ dependencies {
implementation project(':analytics')
implementation project(':ui-settings')
def applicationDependencies = rootProject.ext.mainApplication
def unitTestDependencies = rootProject.ext.unitTesting
def acceptanceTesting = rootProject.ext.acceptanceTesting
def databaseDependencies = rootProject.ext.db
def analyticsDependencies = rootProject.ext.analytics
def protobufDependencies = rootProject.ext.protobuf
//Compile time dependencies
kapt applicationDependencies.daggerCompiler
kapt libs.daggerCompiler
kapt libs.glideCompiler
compileOnly applicationDependencies.javaxAnnotation
compileOnly applicationDependencies.javaxInject
compileOnly libs.javaxAnnotation
compileOnly libs.javaxInject
//Application dependencies
implementation libs.kotlin
implementation applicationDependencies.coroutinesAndroid
implementation libs.coroutinesAndroid
implementation libs.fragment
implementation applicationDependencies.navigation
implementation applicationDependencies.navigationUi
implementation libs.navigation
implementation libs.navigationUi
implementation libs.appcompat
implementation libs.design
implementation applicationDependencies.recyclerView
implementation applicationDependencies.constraintLayout
implementation libs.recyclerView
implementation libs.constraintLayout
implementation libs.glide
implementation applicationDependencies.dagger
implementation applicationDependencies.timber
implementation applicationDependencies.gson
implementation applicationDependencies.pickT
implementation applicationDependencies.emojiCompat
implementation libs.dagger
implementation libs.timber
implementation libs.gson
implementation libs.pickT
implementation libs.emojiCompat
implementation applicationDependencies.lifecycleViewModel
implementation applicationDependencies.lifecycleRuntime
implementation applicationDependencies.lifecycleLiveData
implementation libs.lifecycleViewModel
implementation libs.lifecycleRuntime
implementation libs.lifecycleLiveData
implementation libs.compose
implementation libs.composeFoundation
implementation libs.composeMaterial
implementation libs.composeToolingPreview
implementation applicationDependencies.preference
implementation libs.preference
debugImplementation libs.composeTooling
implementation databaseDependencies.room
implementation libs.room
implementation applicationDependencies.crashlytics
implementation libs.crashlytics
implementation libs.exoPlayerCore
implementation libs.exoPlayerUi
implementation analyticsDependencies.amplitude
implementation analyticsDependencies.okhttp
implementation libs.amplitude
implementation libs.okhttp
implementation applicationDependencies.shimmerLayout
implementation applicationDependencies.photoView
implementation applicationDependencies.zxing
implementation libs.shimmerLayout
implementation libs.photoView
implementation libs.zxing
implementation applicationDependencies.androidxSecurityCrypto
implementation libs.androidxSecurityCrypto
//Unit/Integration tests dependencies
testImplementation unitTestDependencies.androidXTestCore
testImplementation libs.androidXTestCore
testImplementation libs.junit
testImplementation unitTestDependencies.robolectricLatest
testImplementation libs.robolectric
testImplementation libs.kotlinTest
testImplementation libs.mockitoKotlin
testImplementation project(':test:utils')
@ -217,16 +209,16 @@ dependencies {
androidTestImplementation project(':test:android-utils')
androidTestImplementation libs.mockitoAndroid
androidTestImplementation libs.mockitoKotlin
androidTestImplementation acceptanceTesting.espressoContrib
androidTestImplementation libs.espressoContrib
androidTestImplementation libs.androidJUnit
androidTestImplementation libs.kotlinTest
androidTestImplementation libs.testRules
androidTestImplementation acceptanceTesting.disableAnimation
androidTestImplementation acceptanceTesting.navigationTesting
androidTestImplementation libs.disableAnimation
androidTestImplementation libs.navigationTesting
androidTestImplementation project(":test:utils")
androidTestImplementation project(":test:core-models-stub")
androidTestImplementation(unitTestDependencies.coroutineTesting) {
androidTestImplementation(libs.coroutineTesting) {
exclude group: "org.jetbrains.kotlinx", module: "kotlinx-coroutines-debug"
}

View file

@ -1,11 +1,6 @@
import com.android.build.gradle.LibraryPlugin
apply from: './dependencies.gradle'
buildscript {
ext.nav_version = '2.5.3'
ext.dokka_version = '1.4.32'
ext.compile_sdk = 33
ext.target_sdk = 31
ext.min_sdk = 26
@ -34,18 +29,19 @@ buildscript {
}
}
dependencies {
def libs = project.extensions.getByName("libs") as org.gradle.accessors.dm.LibrariesForLibs
classpath(libs.agp)
classpath(libs.kgp)
classpath "androidx.navigation:navigation-safe-args-gradle-plugin:$nav_version"
classpath 'com.google.gms:google-services:4.3.14'
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.2'
classpath 'com.google.firebase:firebase-appdistribution-gradle:3.0.3'
classpath "org.jetbrains.dokka:dokka-gradle-plugin:${dokka_version}"
classpath(libs.kserialization)
classpath(libs.wire)
}
}
plugins {
alias(libs.plugins.application) apply false
alias(libs.plugins.library) apply false
alias(libs.plugins.kotlinAndroid) apply false
alias(libs.plugins.kserialization) apply false
alias(libs.plugins.wire) apply false
alias(libs.plugins.dokka) apply false
alias(libs.plugins.firebaseDistribution) apply false
alias(libs.plugins.crashlytics) apply false
alias(libs.plugins.navigation) apply false
alias(libs.plugins.gms) apply false
}
def testDebugAll = tasks.create("testDebugAll")

View file

@ -18,19 +18,17 @@ android {
}
dependencies {
def applicationDependencies = rootProject.ext.mainApplication
def unitTestDependencies = rootProject.ext.unitTesting
implementation project(':data')
implementation project(':core-models')
implementation libs.kotlin
implementation applicationDependencies.coroutinesAndroid
implementation applicationDependencies.timber
implementation libs.coroutinesAndroid
implementation libs.timber
testImplementation project(":test:utils")
testImplementation libs.junit
testImplementation libs.kotlinTest
testImplementation unitTestDependencies.androidXTestCore
testImplementation unitTestDependencies.robolectricLatest
testImplementation libs.androidXTestCore
testImplementation libs.robolectric
}

View file

@ -22,8 +22,6 @@ android {
}
dependencies {
def applicationDependencies = rootProject.ext.mainApplication
def unitTestDependencies = rootProject.ext.unitTesting
implementation project(':core-utils')
implementation project(':core-models')
@ -33,21 +31,21 @@ dependencies {
implementation libs.appcompat
implementation libs.kotlin
implementation applicationDependencies.coroutinesAndroid
implementation libs.coroutinesAndroid
implementation libs.androidxCore
implementation applicationDependencies.lifecycleRuntime
implementation libs.lifecycleRuntime
implementation libs.design
implementation applicationDependencies.recyclerView
implementation applicationDependencies.constraintLayout
implementation libs.recyclerView
implementation libs.constraintLayout
implementation libs.glide
implementation applicationDependencies.shimmerLayout
implementation applicationDependencies.timber
implementation applicationDependencies.betterLinkMovement
implementation libs.shimmerLayout
implementation libs.timber
implementation libs.betterLinkMovement
implementation libs.exoPlayerCore
implementation libs.exoPlayerUi
implementation applicationDependencies.urlcleaner
implementation applicationDependencies.katex
implementation libs.urlcleaner
implementation libs.katex
implementation libs.compose
implementation libs.composeFoundation
@ -61,7 +59,7 @@ dependencies {
testImplementation project(":test:core-models-stub")
testImplementation libs.junit
testImplementation libs.kotlinTest
testImplementation unitTestDependencies.robolectricLatest
testImplementation unitTestDependencies.androidXTestCore
testImplementation libs.robolectric
testImplementation libs.androidXTestCore
testImplementation libs.mockitoKotlin
}

View file

@ -16,36 +16,32 @@ android {
dependencies {
def applicationDependencies = rootProject.ext.mainApplication
def unitTestDependencies = rootProject.ext.unitTesting
def acceptanceTesting = rootProject.ext.acceptanceTesting
kapt applicationDependencies.daggerCompiler
kapt libs.daggerCompiler
implementation libs.appcompat
implementation libs.kotlin
implementation applicationDependencies.coroutinesAndroid
implementation applicationDependencies.dagger
implementation applicationDependencies.gson
implementation libs.coroutinesAndroid
implementation libs.dagger
implementation libs.gson
implementation applicationDependencies.timber
implementation applicationDependencies.crashlytics
implementation libs.timber
implementation libs.crashlytics
implementation applicationDependencies.constraintLayout
implementation applicationDependencies.recyclerView
implementation libs.constraintLayout
implementation libs.recyclerView
testImplementation libs.junit
testImplementation libs.kotlinTest
testImplementation libs.mockitoKotlin
implementation applicationDependencies.navigation
implementation applicationDependencies.navigationUi
implementation libs.navigation
implementation libs.navigationUi
testImplementation unitTestDependencies.robolectricLatest
testImplementation libs.robolectric
androidTestImplementation libs.androidJUnit
androidTestImplementation libs.testRules
testImplementation unitTestDependencies.archCoreTesting
testImplementation unitTestDependencies.coroutineTesting
testImplementation libs.archCoreTesting
testImplementation libs.coroutineTesting
}

View file

@ -6,16 +6,13 @@ dependencies {
implementation project(':domain')
implementation project(':core-models')
def applicationDependencies = rootProject.ext.mainApplication
def unitTestDependencies = rootProject.ext.unitTesting
implementation libs.kotlin
implementation applicationDependencies.coroutines
implementation libs.coroutines
testImplementation project(":test:utils")
testImplementation project(":test:core-models-stub")
testImplementation libs.junit
testImplementation libs.kotlinTest
testImplementation libs.mockitoKotlin
testImplementation unitTestDependencies.coroutineTesting
testImplementation libs.coroutineTesting
}

View file

@ -1,154 +0,0 @@
ext {
// Kotlin
kotlin_coroutines_version = '1.6.4'
// AndroidX
androidx_test_core_version = '1.4.0'
androidx_core_testing_version = '2.1.0'
androidx_security_crypto_version = '1.0.0'
androidx_preference_version = '1.2.0'
// Other Android framework dependencies
constraintLayout_version = '2.1.4'
recyclerview_version = '1.2.1'
cardview_version = '1.0.0'
emoji_compat_version = '1.1.0'
view_pager_2_version = '1.0.0'
// Architecture Components
lifecycle_version = '2.5.1'
navigation_version = '2.5.3'
// Third party libraries
shimmer_layout_version = "0.5.0"
photo_view_version = '2.3.0'
dagger_version = '2.44'
javaxAnnotations_version = '1.0'
javaxInject_version = '1'
retrofit_version = '2.3.0'
okhttp_logging_interceptor_version = '3.8.1'
gson_version = '2.10'
better_link_method_version = '2.2.0'
table_view_version = '0.8.9.4'
pickt_version = "2.0.2"
zxing_version = "4.1.0"
urlcleaner_version = "0.4.0"
katex_version = "1.0.2"
// Unit Testing
robolectric_latest_version = '4.7.3'
kluent_version = '1.14'
timber_junit = '1.0.1'
turbine_version = '0.7.0'
coroutine_testing_version = '1.6.4'
live_data_testing_version = '1.2.0'
// Acceptance Testing
espresso_version = '3.4.0'
disable_animation_version = '2.0.0'
// Development
leakCanaryVersion = '1.5'
stethoVersion = '1.5.1'
// Logging, Analytics & Crash reporting
timber_version = '5.0.1'
crashlytics_version = '18.3.1'
// Protobuf
protobuf_java_version = '3.9.2'
protoc_version = '3.9.0'
// DBB
room_version = '2.4.3'
// Analytics
amplitude_version = '2.36.1'
okhttp_version = '4.2.2'
// Anytype
mainApplication = [
coroutines: "org.jetbrains.kotlinx:kotlinx-coroutines-core:$kotlin_coroutines_version",
coroutinesAndroid: "org.jetbrains.kotlinx:kotlinx-coroutines-android:$kotlin_coroutines_version",
navigation: "androidx.navigation:navigation-fragment-ktx:$navigation_version",
navigationUi: "androidx.navigation:navigation-ui-ktx:$navigation_version",
lifecycleViewModel: "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version",
lifecycleRuntime: "androidx.lifecycle:lifecycle-runtime-ktx:$lifecycle_version",
lifecycleCompiler: "androidx.lifecycle:lifecycle-compiler:$lifecycle_version",
lifecycleLiveData: "androidx.lifecycle:lifecycle-livedata-ktx:$lifecycle_version",
constraintLayout: "androidx.constraintlayout:constraintlayout:$constraintLayout_version",
cardView: "androidx.cardview:cardview:$cardview_version",
recyclerView: "androidx.recyclerview:recyclerview:$recyclerview_version",
viewPager: "androidx.viewpager2:viewpager2:$view_pager_2_version",
betterLinkMovement: "me.saket:better-link-movement-method:$better_link_method_version",
emojiCompat: "androidx.emoji:emoji-appcompat:$emoji_compat_version",
photoView: "com.github.chrisbanes:PhotoView:$photo_view_version",
katex: "com.github.judemanutd:katexview:$katex_version",
daggerCompiler: "com.google.dagger:dagger-compiler:$dagger_version",
dagger: "com.google.dagger:dagger:$dagger_version",
javaxAnnotation: "javax.annotation:jsr250-api:$javaxAnnotations_version",
javaxInject: "javax.inject:javax.inject:$javaxInject_version",
gson: "com.google.code.gson:gson:$gson_version",
retrofit: "com.squareup.retrofit2:converter-gson:$retrofit_version",
okhttpLoggingInterceptor: "com.squareup.okhttp3:logging-interceptor:$okhttp_logging_interceptor_version",
timber: "com.jakewharton.timber:timber:$timber_version",
tableView: "com.github.evrencoskun:TableView:$table_view_version",
pickT: "com.github.HBiSoft:PickiT:$pickt_version",
zxing: "com.journeyapps:zxing-android-embedded:$zxing_version",
urlcleaner: "com.shekhargulati.urlcleaner:urlcleaner:$urlcleaner_version",
crashlytics: "com.google.firebase:firebase-crashlytics:$crashlytics_version",
shimmerLayout: "com.facebook.shimmer:shimmer:$shimmer_layout_version",
androidxSecurityCrypto: "androidx.security:security-crypto:$androidx_security_crypto_version",
preference : "androidx.preference:preference:$androidx_preference_version"
]
unitTesting = [
robolectricLatest: "org.robolectric:robolectric:$robolectric_latest_version",
kluent : "org.amshove.kluent:kluent:$kluent_version",
archCoreTesting : "androidx.arch.core:core-testing:$androidx_core_testing_version",
liveDataTesting : "com.jraska.livedata:testing-ktx:$live_data_testing_version",
coroutineTesting : "org.jetbrains.kotlinx:kotlinx-coroutines-test:$coroutine_testing_version",
assertj : "com.squareup.assertj:assertj-android:1.0.0",
androidXTestCore : "androidx.test:core:$androidx_test_core_version",
timberJUnit : "net.lachlanmckee:timber-junit-rule:$timber_junit",
turbine : "app.cash.turbine:turbine:$turbine_version"
]
acceptanceTesting = [
espressoCore : "androidx.test.espresso:espresso-core:$espresso_version",
espressoContrib : "androidx.test.espresso:espresso-contrib:$espresso_version",
espressoIntents : "androidx.test.espresso:espresso-intents:$espresso_version",
disableAnimation : "com.bartoszlipinski:disable-animations-rule:$disable_animation_version",
navigationTesting : "androidx.navigation:navigation-testing:$navigation_version"
]
development = [
leakCanary : "com.squareup.leakcanary:leakcanary-android:${leakCanaryVersion}",
leakCanaryNoop: "com.squareup.leakcanary:leakcanary-android-no-op:${leakCanaryVersion}",
stetho : "com.facebook.stetho:stetho:${stethoVersion}"
]
protobuf = [
protobufJava: "com.google.protobuf:protobuf-java:$protobuf_java_version",
protobufJavaUtil: "com.google.protobuf:protobuf-java-util:$protobuf_java_version",
protoc: "com.google.protobuf:protoc:$protoc_version",
]
db = [
room : "androidx.room:room-runtime:$room_version",
roomKtx : "androidx.room:room-ktx:$room_version",
annotations: "androidx.room:room-compiler:$room_version",
roomTesting: "androidx.room:room-testing:$room_version"
]
analytics = [
amplitude: "com.amplitude:android-sdk:$amplitude_version",
okhttp : "com.squareup.okhttp3:okhttp:$okhttp_version"
]
}

View file

@ -4,19 +4,17 @@ plugins {
}
dependencies {
def applicationDependencies = rootProject.ext.mainApplication
def unitTestDependencies = rootProject.ext.unitTesting
implementation project(':data')
implementation libs.kotlin
implementation applicationDependencies.coroutinesAndroid
implementation libs.coroutinesAndroid
implementation libs.androidxCore
implementation applicationDependencies.timber
implementation libs.timber
testImplementation libs.junit
testImplementation libs.kotlinTest
testImplementation unitTestDependencies.androidXTestCore
testImplementation unitTestDependencies.robolectricLatest
testImplementation libs.androidXTestCore
testImplementation libs.robolectric
}

View file

@ -7,19 +7,15 @@ dependencies {
implementation project(':core-models')
def applicationDependencies = rootProject.ext.mainApplication
implementation libs.kotlin
implementation applicationDependencies.coroutines
def unitTestDependencies = rootProject.ext.unitTesting
implementation libs.coroutines
testImplementation project(":test:utils")
testImplementation libs.kotlinTest
testImplementation unitTestDependencies.turbine
testImplementation libs.turbine
testImplementation libs.mockitoKotlin
testImplementation unitTestDependencies.coroutineTesting
testImplementation libs.coroutineTesting
testImplementation project(":test:core-models-stub")
}

View file

@ -14,14 +14,53 @@ junitVersion = '4.13.2'
androidJunitVersion = "1.1.4"
runnerVersion = "1.5.0"
mockitoAndroidVersion = '4.10.0'
kotlinCoroutinesVersion = '1.6.4'
androidxTestCoreVersion = '1.4.0'
androidxCoreTestingVersion = '2.1.0'
androidxSecurityCryptoVersion = '1.0.0'
androidxPreferenceVersion = '1.2.0'
constraintLayoutVersion = '2.1.4'
recyclerviewVersion = '1.2.1'
cardviewVersion = '1.0.0'
emojiCompatVersion = '1.1.0'
viewPager2Version = '1.0.0'
lifecycleVersion = '2.5.1'
navigationVersion = '2.5.3'
shimmerLayoutVersion = '0.5.0'
photoViewVersion = '2.3.0'
daggerVersion = '2.44'
javaxAnnotationsVersion = '1.0'
javaxInjectVersion = '1'
retrofitVersion = '2.3.0'
okhttpLoggingInterceptorVersion = '3.8.1'
gsonVersion = '2.10'
betterLinkMethodVersion = '2.2.0'
tableViewVersion = '0.8.9.4'
picktVersion = '2.0.2'
zxingVersion = '4.1.0'
urlcleanerVersion = '0.4.0'
katexVersion = '1.0.2'
robolectricLatestVersion = '4.7.3'
kluentVersion = '1.14'
timberJunitVersion = '1.0.1'
turbineVersion = '0.7.0'
coroutineTestingVersion = '1.6.4'
liveDataTestingVersion = '1.2.0'
espressoVersion = '3.4.0'
disableAnimationVersion = '2.0.0'
leakCanaryVersion = '1.5'
stethoVersion = '1.5.1'
timberVersion = '5.0.1'
crashlyticsVersion = '18.3.1'
protobufJavaVersion = '3.9.2'
protocVersion = '3.9.0'
roomVersion = '2.4.3'
amplitudeVersion = '2.36.1'
okhttpVersion = '4.2.2'
[libraries]
middleware = { module = "io.anytype:android-mw", version.ref = "middlewareVersion" }
androidxCore = { module = "androidx.core:core-ktx", version.ref = "androidxCoreVersion" }
agp = { module = "com.android.tools.build:gradle", version = "7.3.1" }
kgp = { module = "org.jetbrains.kotlin:kotlin-gradle-plugin", version.ref = "kotlinVersion" }
kserialization = { module = "org.jetbrains.kotlin:kotlin-serialization", version.ref = "kotlinVersion" }
wire = { module = "com.squareup.wire:wire-gradle-plugin", version = "4.4.3" }
kotlin = { module = "org.jetbrains.kotlin:kotlin-stdlib", version.ref = "kotlinVersion" }
kotlinTest = { module = "org.jetbrains.kotlin:kotlin-test-junit", version.ref = "kotlinVersion" }
compose = { module = "androidx.compose.ui:ui", version.ref = "androidxComposeVersion2" }
@ -47,7 +86,77 @@ androidJUnit = { module = "androidx.test.ext:junit", version.ref = "androidJunit
testRunner = { module = "androidx.test:runner", version.ref = "runnerVersion" }
testRules = { module = "androidx.test:rules", version.ref = "runnerVersion" }
mockitoAndroid = { module = "org.mockito:mockito-android", version.ref = "mockitoAndroidVersion" }
coroutines = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "kotlinCoroutinesVersion" }
coroutineTesting = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-test", version.ref = "coroutineTestingVersion" }
coroutinesAndroid = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-android", version.ref = "kotlinCoroutinesVersion" }
navigation = { module = "androidx.navigation:navigation-fragment-ktx", version.ref = "navigationVersion" }
navigationUi = { module = "androidx.navigation:navigation-ui-ktx", version.ref = "navigationVersion" }
lifecycleViewModel = { module = "androidx.lifecycle:lifecycle-viewmodel-ktx", version.ref = "lifecycleVersion" }
lifecycleRuntime = { module = "androidx.lifecycle:lifecycle-runtime-ktx", version.ref = "lifecycleVersion" }
lifecycleCompiler = { module = "androidx.lifecycle:lifecycle-compiler", version.ref = "lifecycleVersion" }
lifecycleLiveData = { module = "androidx.lifecycle:lifecycle-livedata-ktx", version.ref = "lifecycleVersion" }
constraintLayout = { module = "androidx.constraintlayout:constraintlayout", version.ref = "constraintLayoutVersion" }
cardView = { module = "androidx.cardview:cardview", version.ref = "cardviewVersion" }
recyclerView = { module = "androidx.recyclerview:recyclerview", version.ref = "recyclerviewVersion" }
viewPager = { module = "androidx.viewpager2:viewpager2", version.ref = "viewPager2Version" }
betterLinkMovement = { module = "me.saket:better-link-movement-method", version.ref = "betterLinkMethodVersion" }
emojiCompat = { module = "androidx.emoji:emoji-appcompat", version.ref = "emojiCompatVersion" }
photoView = { module = "com.github.chrisbanes:PhotoView", version.ref = "photoViewVersion" }
katex = { module = "com.github.judemanutd:katexview", version.ref = "katexVersion" }
daggerCompiler = { module = "com.google.dagger:dagger-compiler", version.ref = "daggerVersion" }
dagger = { module = "com.google.dagger:dagger", version.ref = "daggerVersion" }
javaxAnnotation = { module = "javax.annotation:jsr250-api", version.ref = "javaxAnnotationsVersion" }
javaxInject = { module = "javax.inject:javax.inject", version.ref = "javaxInjectVersion" }
gson = { module = "com.google.code.gson:gson", version.ref = "gsonVersion" }
retrofit = { module = "com.squareup.retrofit2:converter-gson", version.ref = "retrofitVersion" }
okhttpLoggingInterceptor = { module = "com.squareup.okhttp3:logging-interceptor", version.ref = "okhttpLoggingInterceptorVersion" }
timber = { module = "com.jakewharton.timber:timber", version.ref = "timberVersion" }
tableView = { module = "com.github.evrencoskun:TableView", version.ref = "tableViewVersion" }
pickT = { module = "com.github.HBiSoft:PickiT", version.ref = "picktVersion" }
zxing = { module = "com.journeyapps:zxing-android-embedded", version.ref = "zxingVersion" }
urlcleaner = { module = "com.shekhargulati.urlcleaner:urlcleaner", version.ref = "urlcleanerVersion" }
crashlytics = { module = "com.google.firebase:firebase-crashlytics", version.ref = "crashlyticsVersion" }
shimmerLayout = { module = "com.facebook.shimmer:shimmer", version.ref = "shimmerLayoutVersion" }
archCoreTesting = { module = "androidx.arch.core:core-testing", version.ref = "androidxCoreTestingVersion" }
liveDataTesting = { module = "com.jraska.livedata:testing-ktx", version.ref = "liveDataTestingVersion" }
androidXTestCore = { module = "androidx.test:core", version.ref = "androidxTestCoreVersion" }
androidxSecurityCrypto = { module = "androidx.security:security-crypto", version.ref = "androidxSecurityCryptoVersion" }
preference = { module = "androidx.preference:preference", version.ref = "androidxPreferenceVersion" }
leakCanaryAndroid = { module = "com.squareup.leakcanary:leakcanary-android", version.ref = "leakCanaryVersion" }
stetho = { module = "com.facebook.stetho:stetho", version.ref = "stethoVersion" }
robolectric = { module = "org.robolectric:robolectric", version.ref = "robolectricLatestVersion" }
kluent = { module = "org.amshove.kluent:kluent-android", version.ref = "kluentVersion" }
timberJUnit = { module = "net.lachlanmckee:timber-junit-rule", version.ref = "timberJunitVersion" }
turbine = { module = "app.cash.turbine:turbine", version.ref = "turbineVersion" }
espressoCore = { module = "androidx.test.espresso:espresso-core", version.ref = "espressoVersion" }
espressoContrib = { module = "androidx.test.espresso:espresso-contrib", version.ref = "espressoVersion" }
espressoIntents = { module = "androidx.test.espresso:espresso-intents", version.ref = "espressoVersion" }
disableAnimation = { module = "com.bartoszlipinski:disable-animations-rule", version.ref = "disableAnimationVersion" }
navigationTesting = { module = "androidx.navigation:navigation-testing", version.ref = "navigationVersion" }
leakCanary = { module = "com.squareup.leakcanary:leakcanary-android", version.ref = "leakCanaryVersion" }
leakCanaryNoop = { module = "com.squareup.leakcanary:leakcanary-android-no-op", version.ref = "leakCanaryVersion" }
protobufJava = { module = "com.google.protobuf:protobuf-java", version.ref = "protobufJavaVersion" }
protobufJavaUtil = { module = "com.google.protobuf:protobuf-java-util", version.ref = "protobufJavaVersion" }
protoc = { module = "com.google.protobuf:protoc", version.ref = "protocVersion" }
room = { module = "androidx.room:room-runtime", version.ref = "roomVersion" }
roomKtx = { module = "androidx.room:room-ktx", version.ref = "roomVersion" }
annotations = { module = "androidx.room:room-compiler", version.ref = "roomVersion" }
roomTesting = { module = "androidx.room:room-testing", version.ref = "roomVersion" }
amplitude = { module = "com.amplitude:android-sdk", version.ref = "amplitudeVersion" }
okhttp = { module = "com.squareup.okhttp3:okhttp", version.ref = "okhttpVersion" }
[bundles]
[plugins]
application = { id = "com.android.application", version = "7.3.1" }
library = { id = "com.android.library", version = "7.3.1" }
kotlinAndroid = { id = "org.jetbrains.kotlin.android", version.ref = "kotlinVersion" }
dokka = { id = "org.jetbrains.dokka", version.ref = "kotlinVersion" }
kserialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlinVersion" }
wire = { id = "com.squareup.wire", version = "4.4.3" }
firebaseDistribution = { id = "com.google.firebase.appdistribution", version = "3.1.1" }
crashlytics = { id = "com.google.firebase.crashlytics", version = "2.9.2" }
navigation = { id = "androidx.navigation.safeargs", version.ref = "navigationVersion" }
navigationKotlin = { id = "androidx.navigation.safeargs.kotlin", version.ref = "navigationVersion" }
kapt = { id = "org.jetbrains.kotlin.kapt", version.ref = "kotlinVersion" }
gms = { id = "com.google.gms.google-services", version = "4.3.14" }

View file

@ -5,13 +5,10 @@ plugins {
dependencies {
def appDependencies = rootProject.ext.mainApplication
def unitTestDependencies = rootProject.ext.unitTesting
implementation project(':domain')
implementation project(':core-utils')
implementation appDependencies.gson
implementation appDependencies.coroutinesAndroid
implementation libs.gson
implementation libs.coroutinesAndroid
testImplementation libs.junit
testImplementation libs.kotlinTest

View file

@ -10,8 +10,6 @@ android {
}
dependencies {
def applicationDependencies = rootProject.ext.mainApplication
def unitTestDependencies = rootProject.ext.unitTesting
implementation project(':core-utils')
implementation project(':core-ui')
@ -20,18 +18,18 @@ dependencies {
implementation libs.appcompat
implementation libs.kotlin
implementation applicationDependencies.coroutinesAndroid
implementation libs.coroutinesAndroid
implementation libs.androidxCore
implementation applicationDependencies.emojiCompat
implementation libs.emojiCompat
implementation libs.design
implementation applicationDependencies.recyclerView
implementation applicationDependencies.constraintLayout
implementation applicationDependencies.timber
implementation libs.recyclerView
implementation libs.constraintLayout
implementation libs.timber
implementation libs.glide
testImplementation libs.junit
testImplementation libs.kotlinTest
testImplementation unitTestDependencies.robolectricLatest
testImplementation unitTestDependencies.androidXTestCore
testImplementation libs.robolectric
testImplementation libs.androidXTestCore
}

View file

@ -5,18 +5,16 @@ plugins {
}
dependencies {
def applicationDependencies = rootProject.ext.mainApplication
def unitTestDependencies = rootProject.ext.unitTesting
implementation libs.appcompat
implementation libs.kotlin
implementation applicationDependencies.coroutinesAndroid
implementation libs.coroutinesAndroid
implementation libs.androidxCore
implementation applicationDependencies.timber
implementation libs.timber
implementation libs.kotlinxSerializationJson
testImplementation libs.junit
testImplementation libs.kotlinTest
testImplementation unitTestDependencies.robolectricLatest
testImplementation unitTestDependencies.androidXTestCore
testImplementation libs.robolectric
testImplementation libs.androidXTestCore
}

View file

@ -11,15 +11,12 @@ dependencies {
implementation project(':data')
implementation project(':core-utils')
def applicationDependencies = rootProject.ext.mainApplication
def unitTestDependencies = rootProject.ext.unitTesting
implementation libs.kotlin
implementation applicationDependencies.timber
implementation applicationDependencies.coroutinesAndroid
implementation libs.timber
implementation libs.coroutinesAndroid
implementation libs.gsonWire
implementation applicationDependencies.gson
implementation applicationDependencies.javaxInject
implementation libs.gson
implementation libs.javaxInject
implementation libs.middleware
testImplementation project(":test:utils")

View file

@ -9,27 +9,23 @@ dependencies {
implementation project(':data')
implementation project(':core-models')
def applicationDependencies = rootProject.ext.mainApplication
def unitTestDependencies = rootProject.ext.unitTesting
def databaseDependencies = rootProject.ext.db
implementation libs.kotlin
implementation applicationDependencies.coroutinesAndroid
implementation applicationDependencies.gson
implementation applicationDependencies.lifecycleLiveData
implementation libs.coroutinesAndroid
implementation libs.gson
implementation libs.lifecycleLiveData
implementation databaseDependencies.room
implementation databaseDependencies.roomKtx
implementation libs.room
implementation libs.roomKtx
kapt databaseDependencies.annotations
kapt libs.annotations
implementation applicationDependencies.timber
implementation libs.timber
testImplementation project(":test:utils")
testImplementation databaseDependencies.roomTesting
testImplementation libs.roomTesting
testImplementation libs.junit
testImplementation libs.kotlinTest
testImplementation libs.mockitoKotlin
testImplementation unitTestDependencies.robolectricLatest
testImplementation unitTestDependencies.archCoreTesting
testImplementation libs.robolectric
testImplementation libs.archCoreTesting
}

View file

@ -21,35 +21,31 @@ dependencies {
implementation project(':analytics')
implementation project(':core-models')
def applicationDependencies = rootProject.ext.mainApplication
def unitTestDependencies = rootProject.ext.unitTesting
def analyticsDependencies = rootProject.ext.analytics
implementation libs.kotlin
implementation applicationDependencies.coroutinesAndroid
implementation libs.coroutinesAndroid
implementation applicationDependencies.lifecycleViewModel
implementation applicationDependencies.lifecycleLiveData
implementation libs.lifecycleViewModel
implementation libs.lifecycleLiveData
implementation applicationDependencies.timber
implementation libs.timber
implementation applicationDependencies.urlcleaner
implementation libs.urlcleaner
implementation analyticsDependencies.amplitude
implementation libs.amplitude
compileOnly applicationDependencies.javaxInject
compileOnly libs.javaxInject
testImplementation libs.junit
testImplementation libs.kotlinTest
testImplementation libs.mockitoKotlin
testImplementation "net.bytebuddy:byte-buddy:1.12.20"
testImplementation unitTestDependencies.coroutineTesting
testImplementation unitTestDependencies.liveDataTesting
testImplementation unitTestDependencies.archCoreTesting
testImplementation unitTestDependencies.androidXTestCore
testImplementation unitTestDependencies.robolectricLatest
testImplementation unitTestDependencies.timberJUnit
testImplementation unitTestDependencies.turbine
testImplementation libs.coroutineTesting
testImplementation libs.liveDataTesting
testImplementation libs.archCoreTesting
testImplementation libs.androidXTestCore
testImplementation libs.robolectric
testImplementation libs.timberJUnit
testImplementation libs.turbine
testImplementation project(":test:utils")
testImplementation project(":test:core-models-stub")
}

View file

@ -1,7 +1,9 @@
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt'
plugins {
id "com.android.application"
id "kotlin-android"
id "kotlin-android-extensions"
id "kotlin-kapt"
}
android {
compileSdkVersion 33
@ -39,9 +41,6 @@ android {
dependencies {
def applicationDependencies = rootProject.ext.mainApplication
def unitTestDependencies = rootProject.ext.unitTesting
implementation project(':core-utils')
implementation project(':core-ui')
implementation project(':presentation')
@ -49,19 +48,19 @@ dependencies {
implementation libs.kotlin
implementation libs.appcompat
implementation libs.glide
implementation applicationDependencies.coroutinesAndroid
implementation applicationDependencies.constraintLayout
implementation libs.coroutinesAndroid
implementation libs.constraintLayout
implementation libs.androidxCore
implementation applicationDependencies.timber
implementation libs.timber
implementation libs.fragment
implementation libs.design
implementation applicationDependencies.pickT
implementation libs.pickT
//implementation 'com.github.gregcockroft:AndroidMath:ALPHA'
testImplementation libs.junit
testImplementation libs.kotlinTest
testImplementation unitTestDependencies.robolectricLatest
testImplementation unitTestDependencies.androidXTestCore
testImplementation libs.robolectric
testImplementation libs.androidXTestCore
testImplementation libs.mockitoKotlin
}

View file

@ -1,26 +1,12 @@
include ':app',
':core-utils',
':middleware',
':persistence',
':domain',
':data',
':device',
':presentation',
':core-ui',
':library-page-icon-picker-widget',
':library-emojifier',
':library-syntax-highlighter',
':sample',
':clipboard',
':analytics',
':protocol',
':core-models',
':test:android-utils',
':test:utils',
':test:core-models-stub',
':libs'
pluginManagement {
include ':ui-settings'
repositories {
mavenLocal()
gradlePluginPortal()
google()
mavenCentral()
}
}
dependencyResolutionManagement {
/**
@ -45,4 +31,28 @@ dependencyResolutionManagement {
}
}
}
}
}
include ':app',
':core-utils',
':middleware',
':persistence',
':domain',
':data',
':device',
':presentation',
':core-ui',
':library-page-icon-picker-widget',
':library-emojifier',
':library-syntax-highlighter',
':sample',
':clipboard',
':analytics',
':protocol',
':core-models',
':test:android-utils',
':test:utils',
':test:core-models-stub',
':libs'
include ':ui-settings'

View file

@ -4,12 +4,12 @@ plugins {
}
dependencies {
api acceptanceTesting.espressoCore
api libs.espressoCore
implementation libs.appcompat
implementation libs.kotlin
implementation mainApplication.coroutinesAndroid
implementation libs.coroutinesAndroid
implementation libs.androidxCore
implementation libs.design
implementation mainApplication.recyclerView
implementation libs.recyclerView
}

View file

@ -23,13 +23,10 @@ dependencies {
implementation project(':core-models')
implementation project(':core-utils')
def applicationDependencies = rootProject.ext.mainApplication
def unitTestDependencies = rootProject.ext.unitTesting
compileOnly libs.javaxInject
compileOnly applicationDependencies.javaxInject
implementation applicationDependencies.lifecycleViewModel
implementation applicationDependencies.lifecycleRuntime
implementation libs.lifecycleViewModel
implementation libs.lifecycleRuntime
implementation libs.appcompat
implementation libs.compose
@ -39,7 +36,7 @@ dependencies {
debugImplementation libs.composeTooling
implementation applicationDependencies.timber
implementation libs.timber
testImplementation libs.junit
testImplementation libs.kotlinTest