[versions] agp = "7.2.2" androidxActivity = "1.6.0-rc02" bouncycastle = "1.71" composeFoundation = "1.3.0-beta02" composeUi = "1.3.0-beta02" coroutines = "1.6.4" flowbinding = "1.2.0" hilt = "2.43.2" kotlin = "1.7.10" leakcanary = "2.9.1" lifecycle = "2.6.0-alpha02" [libraries] android-desugarJdkLibs = "com.android.tools:desugar_jdk_libs:1.2.2" androidx-activity-compose = { module = "androidx.activity:activity-compose", version.ref = "androidxActivity" } androidx-activity-ktx = { module = "androidx.activity:activity-ktx", version.ref = "androidxActivity" } androidx-annotation = "androidx.annotation:annotation:1.5.0-rc01" # @pin beta01 moved DrawableWrapper to public API, breaking the FastScroll library androidx-appcompat = "androidx.appcompat:appcompat:1.6.0-alpha05" androidx-autofill = "androidx.autofill:autofill:1.2.0-beta01" androidx-biometricKtx = "androidx.biometric:biometric-ktx:1.2.0-alpha04" androidx-constraintlayout = "androidx.constraintlayout:constraintlayout:2.2.0-alpha03" androidx-core-ktx = "androidx.core:core-ktx:1.9.0" androidx-documentfile = "androidx.documentfile:documentfile:1.1.0-alpha01" androidx-fragment-ktx = "androidx.fragment:fragment-ktx:1.6.0-alpha02" androidx-lifecycle-common = { module = "androidx.lifecycle:lifecycle-common", version.ref = "lifecycle" } androidx-lifecycle-livedataKtx = { module = "androidx.lifecycle:lifecycle-livedata-ktx", version.ref = "lifecycle" } androidx-lifecycle-viewmodel-compose = { module = "androidx.lifecycle:lifecycle-viewmodel-compose", version.ref = "lifecycle" } androidx-lifecycle-viewmodelKtx = { module = "androidx.lifecycle:lifecycle-viewmodel-ktx", version.ref = "lifecycle" } androidx-material = "com.google.android.material:material:1.7.0-rc01" androidx-preference = "androidx.preference:preference:1.2.0" androidx-recyclerview = "androidx.recyclerview:recyclerview:1.3.0-beta02" androidx-recyclerviewSelection = "androidx.recyclerview:recyclerview-selection:1.2.0-alpha01" androidx-security = "androidx.security:security-crypto:1.1.0-alpha03" androidx-swiperefreshlayout = "androidx.swiperefreshlayout:swiperefreshlayout:1.2.0-alpha01" aps-sublimeFuzzy = "com.github.android-password-store:sublime-fuzzy:2.2.1" aps-zxingAndroidEmbedded = "com.github.android-password-store:zxing-android-embedded:4.2.1" build-agp = { module = "com.android.tools.build:gradle", version.ref = "agp" } build-binarycompat = "org.jetbrains.kotlinx:binary-compatibility-validator:0.11.1" build-detekt = "io.gitlab.arturbosch.detekt:detekt-gradle-plugin:1.21.0" build-download = "de.undercouch:gradle-download-task:5.2.0" build-kotlin = { module = "org.jetbrains.kotlin:kotlin-gradle-plugin", version.ref = "kotlin" } build-mavenpublish = "com.vanniktech:gradle-maven-publish-plugin:0.22.0" build-okhttp = "com.squareup.okhttp3:okhttp:4.10.0" build-r8 = "com.android.tools:r8:4.0.18-dev" build-semver = "com.vdurmont:semver4j:3.1.0" build-sentry = "io.sentry.android.gradle:io.sentry.android.gradle.gradle.plugin:3.1.5" build-spotless = "com.diffplug.spotless:spotless-plugin-gradle:6.10.0" build-vcu = "nl.littlerobots.version-catalog-update:nl.littlerobots.version-catalog-update.gradle.plugin:0.6.1" build-versions = "com.github.ben-manes:gradle-versions-plugin:0.42.0" compose-animation = "androidx.compose.animation:animation:1.2.1" compose-compiler = "androidx.compose.compiler:compiler:1.3.1" compose-foundation-core = { module = "androidx.compose.foundation:foundation", version.ref = "composeFoundation" } compose-foundation-layout = { module = "androidx.compose.foundation:foundation-layout", version.ref = "composeFoundation" } compose-hilt = "androidx.hilt:hilt-navigation-compose:1.0.0" compose-material = "androidx.compose.material:material:1.2.1" compose-material3 = "androidx.compose.material3:material3:1.0.0-beta02" compose-runtime = "androidx.compose.runtime:runtime:1.3.0-beta02" compose-ui-core = { module = "androidx.compose.ui:ui", version.ref = "composeUi" } compose-ui-test = { module = "androidx.compose.ui:ui-test-junit4", version.ref = "composeUi" } compose-ui-tooling = { module = "androidx.compose.ui:ui-tooling", version.ref = "composeUi" } compose-ui-util = { module = "androidx.compose.ui:ui-util", version.ref = "composeUi" } compose-ui-viewbinding = { module = "androidx.compose.ui:ui-viewbinding", version.ref = "composeUi" } dagger-hilt-android = { module = "com.google.dagger:hilt-android", version.ref = "hilt" } dagger-hilt-compiler = { module = "com.google.dagger:hilt-compiler", version.ref = "hilt" } dagger-hilt-core = { module = "com.google.dagger:hilt-core", version.ref = "hilt" } kotlin-coroutines-android = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-android", version.ref = "coroutines" } kotlin-coroutines-core = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "coroutines" } kotlin-coroutines-test = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-test", version.ref = "coroutines" } testing-junit = "junit:junit:4.13.2" testing-kotlintest-junit = { module = "org.jetbrains.kotlin:kotlin-test-junit", version.ref = "kotlin" } testing-robolectric = "org.robolectric:robolectric:4.8.2" testing-sharedPrefsMock = "com.github.android-password-store:shared-preferences-fake:2.0.0" testing-testparameterinjector = "com.google.testparameterinjector:test-parameter-injector:1.8" testing-turbine = "app.cash.turbine:turbine:0.9.0" thirdparty-bouncycastle-bcpkix = { module = "org.bouncycastle:bcpkix-jdk15to18", version.ref = "bouncycastle" } thirdparty-bouncycastle-bcprov = { module = "org.bouncycastle:bcprov-jdk15to18", version.ref = "bouncycastle" } thirdparty-commons_codec = "commons-codec:commons-codec:1.14" thirdparty-eddsa = "net.i2p.crypto:eddsa:0.3.0" thirdparty-fastscroll = "me.zhanghai.android.fastscroll:library:1.1.8" thirdparty-flowbinding-android = { module = "io.github.reactivecircus.flowbinding:flowbinding-android", version.ref = "flowbinding" } thirdparty-jgit = "org.eclipse.jgit:org.eclipse.jgit:3.7.1.201504261725-r" thirdparty-kotlinResult = "com.michael-bull.kotlin-result:kotlin-result:1.1.16" thirdparty-leakcanary = { module = "com.squareup.leakcanary:leakcanary-android-startup", version.ref = "leakcanary" } thirdparty-logcat = "com.squareup.logcat:logcat:0.1" thirdparty-modernAndroidPrefs = "de.maxr1998:modernandroidpreferences:2.3.1" thirdparty-nonfree-googlePlayAuthApiPhone = "com.google.android.gms:play-services-auth-api-phone:18.0.1" thirdparty-nonfree-sentry = "io.sentry:sentry-android:6.4.1" thirdparty-pgpainless = "org.pgpainless:pgpainless-core:1.3.6" thirdparty-plumber = { module = "com.squareup.leakcanary:plumber-android-startup", version.ref = "leakcanary" } # TODO: Remove the explicit bcpkix dependency when upgrading this to a BC 1.71 compatible version thirdparty-sshj = "com.hierynomus:sshj:0.34.0" thirdparty-whatthestack = "com.github.haroldadmin:WhatTheStack:1.0.0-alpha04" [bundles] androidxLifecycle = [ "androidx-lifecycle-common", "androidx-lifecycle-livedataKtx", "androidx-lifecycle-viewmodelKtx", ] testDependencies = [ "testing-junit", "testing-kotlintest-junit", ] [plugins] hilt = { id = "com.google.dagger.hilt.android", version.ref = "hilt" }