Modernize build (Java 8 compatiblity, fix build warnings, remove dead code) (#2297)
diff --git a/.github/workflows/validate.yml b/.github/workflows/validate.yml
index 0862a24..c10be21 100644
--- a/.github/workflows/validate.yml
+++ b/.github/workflows/validate.yml
@@ -77,7 +77,7 @@
- name: Build app
run: ./gradlew snapshot-tests:assembleDebug snapshot-tests:assembleDebugAndroidTest --no-daemon
- name: Run tests
- uses: emulator-wtf/run-tests@master
+ uses: emulator-wtf/run-tests@v0.9.6
with:
api-token: ${{ env.EW_API_TOKEN }}
app: snapshot-tests/build/outputs/apk/debug/snapshot-tests-debug.apk
diff --git a/build.gradle b/build.gradle
index 992b3a1..a26b100 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,29 +1,44 @@
import org.ajoberstar.grgit.Grgit
-
-buildscript {
- repositories {
- google()
- mavenCentral()
- }
- dependencies {
- classpath libs.grgit.plugin
- classpath libs.android.gradle.plugin
- classpath libs.kotlin.gradle.plugin
- classpath libs.gradle.maven.publish.plugin
- classpath libs.dokka.gradle.plugin
- }
-}
+import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
plugins {
id 'net.ltgt.errorprone' apply false
id "com.google.devtools.ksp" apply false
+ id "org.ajoberstar.grgit" apply false
+ id "com.android.library" apply false
+ id "org.jetbrains.kotlin.jvm" apply false
+ id "com.vanniktech.maven.publish" apply false
+ id "org.jetbrains.dokka" apply false
}
allprojects {
- repositories {
- google()
- mavenCentral()
- maven { url "https://jitpack.io" }
+ def compileJavaVersion = JavaVersion.VERSION_17
+ def targetJavaVersion = JavaVersion.VERSION_1_8
+ pluginManager.withPlugin("java") {
+ java {
+ toolchain {
+ languageVersion.set(JavaLanguageVersion.of(compileJavaVersion.majorVersion))
+ }
+ }
+ tasks.withType(JavaCompile).configureEach {
+ options.release.set(targetJavaVersion.majorVersion)
+ }
+ }
+ pluginManager.withPlugin("org.jetbrains.kotlin.android") {
+ kotlin {
+ jvmToolchain(compileJavaVersion.majorVersion.toInteger())
+ }
+ tasks.withType(KotlinCompile).configureEach {
+ kotlinOptions.jvmTarget = targetJavaVersion.toString()
+ }
+ }
+ ["com.android.library", "com.android.application"].forEach { androidPlugin ->
+ pluginManager.withPlugin(androidPlugin) {
+ android {
+ sourceCompatibility targetJavaVersion
+ targetCompatibility targetJavaVersion
+ }
+ }
}
}
diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
index d52d958..d18b2f3 100644
--- a/gradle/libs.versions.toml
+++ b/gradle/libs.versions.toml
@@ -1,5 +1,7 @@
+## Generated by $ ./gradlew refreshVersionsCatalog
+
[libraries]
-android-gradle-plugin = "com.android.tools.build:gradle:_"
+
androidx-activity-compose = "androidx.activity:activity-compose:_"
androidx-appcompat = "androidx.appcompat:appcompat:_"
androidx-browser = "androidx.browser:browser:_"
@@ -34,21 +36,18 @@
compose-ui-tooling = { group = "androidx.compose.ui", name = "ui-tooling" }
dagger = "com.google.dagger:dagger:_"
dagger-compiler = "com.google.dagger:dagger-compiler:_"
-dokka-gradle-plugin = "org.jetbrains.dokka:dokka-gradle-plugin:_"
epoxy = "com.airbnb.android:epoxy:_"
epoxy-processor = "com.airbnb.android:epoxy-processor:_"
errorprone-core = "com.google.errorprone:error_prone_core:_"
errorprone-javac = "com.google.errorprone:javac:_"
glide = "com.github.bumptech.glide:glide:_"
google-material = "com.google.android.material:material:_"
-gradle-maven-publish-plugin = "com.vanniktech:gradle-maven-publish-plugin:_"
grgit-plugin = "org.ajoberstar.grgit:grgit-gradle:_"
gson = "com.google.code.gson:gson:_"
javac = "com.google.errorprone:javac:_"
jjwt = "io.jsonwebtoken:jjwt:_"
junit4 = "junit:junit:_"
kotlin-annotation-processing-gradle = "org.jetbrains.kotlin:kotlin-annotation-processing-gradle:_"
-kotlin-gradle-plugin = "org.jetbrains.kotlin:kotlin-gradle-plugin:_"
kotlin-parcelize-compiler = "org.jetbrains.kotlin:kotlin-parcelize-compiler:_"
kotlin-parcelize-runtime = "org.jetbrains.kotlin:kotlin-parcelize-runtime:_"
kotlinx-coroutines-android = "org.jetbrains.kotlinx:kotlinx-coroutines-android:_"
diff --git a/issue-repro-compose/build.gradle b/issue-repro-compose/build.gradle
index 129022b..4f5a631 100755
--- a/issue-repro-compose/build.gradle
+++ b/issue-repro-compose/build.gradle
@@ -2,7 +2,7 @@
plugins {
id 'com.android.application'
- id "kotlin-android"
+ id "org.jetbrains.kotlin.android"
}
android {
@@ -15,13 +15,6 @@
versionCode 1
versionName "1.0"
}
- compileOptions {
- sourceCompatibility JavaVersion.VERSION_17
- targetCompatibility JavaVersion.VERSION_17
- }
- kotlinOptions {
- jvmTarget = JavaVersion.VERSION_17.toString()
- }
buildFeatures {
compose true
}
diff --git a/issue-repro-compose/src/main/AndroidManifest.xml b/issue-repro-compose/src/main/AndroidManifest.xml
index 9ca497e..02d78ec 100755
--- a/issue-repro-compose/src/main/AndroidManifest.xml
+++ b/issue-repro-compose/src/main/AndroidManifest.xml
@@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
-<manifest xmlns:android="http://schemas.android.com/apk/res/android"
- package="com.airbnb.lottie.issues.compose">
+<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<application
android:icon="@mipmap/ic_launcher"
diff --git a/issue-repro-compose/src/main/java/com/airbnb/lottie/issues/compose/ComposeIssueReproActivity.kt b/issue-repro-compose/src/main/kotlin/com/airbnb/lottie/issues/compose/ComposeIssueReproActivity.kt
similarity index 100%
rename from issue-repro-compose/src/main/java/com/airbnb/lottie/issues/compose/ComposeIssueReproActivity.kt
rename to issue-repro-compose/src/main/kotlin/com/airbnb/lottie/issues/compose/ComposeIssueReproActivity.kt
diff --git a/issue-repro/build.gradle b/issue-repro/build.gradle
index c5eaa35..2ce7bf5 100755
--- a/issue-repro/build.gradle
+++ b/issue-repro/build.gradle
@@ -1,6 +1,6 @@
plugins {
id 'com.android.application'
- id 'kotlin-android'
+ id 'org.jetbrains.kotlin.android'
}
android {
@@ -13,10 +13,6 @@
versionCode 1
versionName "1.0"
}
- compileOptions {
- sourceCompatibility JavaVersion.VERSION_17
- targetCompatibility JavaVersion.VERSION_17
- }
buildFeatures {
viewBinding true
}
diff --git a/issue-repro/src/main/java/com/airbnb/lottie/issues/IssueReproActivity.kt b/issue-repro/src/main/kotlin/com/airbnb/lottie/issues/IssueReproActivity.kt
similarity index 100%
rename from issue-repro/src/main/java/com/airbnb/lottie/issues/IssueReproActivity.kt
rename to issue-repro/src/main/kotlin/com/airbnb/lottie/issues/IssueReproActivity.kt
diff --git a/lottie-compose/build.gradle b/lottie-compose/build.gradle
index 14d6450..0e8e427 100644
--- a/lottie-compose/build.gradle
+++ b/lottie-compose/build.gradle
@@ -3,7 +3,7 @@
plugins {
id 'com.android.library'
- id 'kotlin-android'
+ id 'org.jetbrains.kotlin.android'
id 'com.vanniktech.maven.publish'
}
@@ -20,12 +20,7 @@
minifyEnabled false
}
}
- compileOptions {
- sourceCompatibility JavaVersion.VERSION_17
- targetCompatibility JavaVersion.VERSION_17
- }
kotlinOptions {
- jvmTarget = JavaVersion.VERSION_17.toString()
freeCompilerArgs += [
"-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi",
]
diff --git a/lottie/build.gradle b/lottie/build.gradle
index c02c429..f3441b7 100644
--- a/lottie/build.gradle
+++ b/lottie/build.gradle
@@ -21,10 +21,6 @@
textReport true
textOutput 'stdout'
}
- compileOptions {
- sourceCompatibility JavaVersion.VERSION_17
- targetCompatibility JavaVersion.VERSION_17
- }
testOptions {
unitTests {
includeAndroidResources = true
@@ -54,25 +50,7 @@
androidTestImplementation libs.androidx.test.espresso
}
-task sourcesJar(type: Jar) {
- from android.sourceSets.main.java.srcDirs
- archiveClassifier.set('sources')
-}
-
-task javadoc(type: Javadoc) {
- source = android.sourceSets.main.java.srcDirs
- configurations.implementation.setCanBeResolved(true)
- classpath += project.files(android.getBootClasspath().join(File.pathSeparator)) + configurations.implementation
-}
-
-tasks.withType(Javadoc) {
- // This started failing with the following when upgrading to AGP 7 and JDK 11.
- // TODO: investigate why once AGP 7 is stable.
- // javadoc: error - The code being documented uses modules but the packages defined in https://developer.android.com/reference/ are in the unnamed module.
- failOnError false
-}
-
-tasks.withType(JavaCompile) {
+tasks.withType(JavaCompile).configureEach {
// remove the if condition if you want to run NullAway on test code
if (!name.toLowerCase().contains("test")) {
options.errorprone {
diff --git a/lottie/src/main/java/com/airbnb/lottie/LottieDrawable.java b/lottie/src/main/java/com/airbnb/lottie/LottieDrawable.java
index e493288..68c4543 100644
--- a/lottie/src/main/java/com/airbnb/lottie/LottieDrawable.java
+++ b/lottie/src/main/java/com/airbnb/lottie/LottieDrawable.java
@@ -1323,7 +1323,7 @@
*/
public <T> void addValueCallback(KeyPath keyPath, T property,
final SimpleLottieValueCallback<T> callback) {
- addValueCallback(keyPath, property, new LottieValueCallback<>() {
+ addValueCallback(keyPath, property, new LottieValueCallback<T>() {
@Override
public T getValue(LottieFrameInfo<T> frameInfo) {
return callback.getValue(frameInfo);
diff --git a/sample-compose-benchmark/build.gradle b/sample-compose-benchmark/build.gradle
index 99a24ca..8111d09 100644
--- a/sample-compose-benchmark/build.gradle
+++ b/sample-compose-benchmark/build.gradle
@@ -7,13 +7,7 @@
namespace 'com.airbnb.lottie.sample.compose.benchmark'
compileSdk 33
- compileOptions {
- sourceCompatibility = JavaVersion.VERSION_17
- targetCompatibility = JavaVersion.VERSION_17
- }
-
kotlinOptions {
- jvmTarget = JavaVersion.VERSION_17.toString()
freeCompilerArgs += "-Xopt-in=kotlin.RequiresOptIn"
}
diff --git a/sample-compose-benchmark/src/main/java/com/airbnb/lottie/sample/compose/benchmark/LottieBaselineBenchmark.kt b/sample-compose-benchmark/src/main/java/com/airbnb/lottie/sample/compose/benchmark/LottieBaselineBenchmark.kt
index fef0b96..bb8da9f 100644
--- a/sample-compose-benchmark/src/main/java/com/airbnb/lottie/sample/compose/benchmark/LottieBaselineBenchmark.kt
+++ b/sample-compose-benchmark/src/main/java/com/airbnb/lottie/sample/compose/benchmark/LottieBaselineBenchmark.kt
@@ -19,6 +19,7 @@
import org.junit.Test
import org.junit.runner.RunWith
import kotlin.time.Duration
+import kotlin.time.Duration.Companion.seconds
import kotlin.time.DurationUnit
import kotlin.time.ExperimentalTime
@@ -48,7 +49,6 @@
benchmark(CompilationMode.Partial(baselineProfileMode = BaselineProfileMode.Require))
}
- @OptIn(ExperimentalTime::class)
fun benchmark(compilationMode: CompilationMode) {
benchmarkRule.measureRepeated(
packageName = PACKAGE_NAME,
@@ -78,7 +78,6 @@
}
}
- @OptIn(ExperimentalTime::class)
private fun UiScrollable.waitUntilReady() {
this.waitUntil {
// We know that there are at least 9 children
@@ -86,8 +85,7 @@
}
}
- @OptIn(ExperimentalTime::class)
- private fun UiObject.clickAndWait(maxWaitTime: Duration = Duration.seconds(5)) {
+ private fun UiObject.clickAndWait(maxWaitTime: Duration = 5.seconds) {
val maxWaitTimeMs = maxWaitTime.toLong(DurationUnit.MILLISECONDS)
click()
device.waitForIdle(maxWaitTimeMs)
@@ -95,8 +93,7 @@
device.pressBack()
}
- @OptIn(ExperimentalTime::class)
- private fun <T> T.waitUntil(maxWaitTime: Duration = Duration.seconds(5), condition: (T) -> Boolean) {
+ private fun <T> T.waitUntil(maxWaitTime: Duration = 5.seconds, condition: (T) -> Boolean) {
var waitTime = 0L
val maxWaitTimeMs = maxWaitTime.toLong(DurationUnit.MILLISECONDS)
val incrementalDelay = 150L
diff --git a/sample-compose-benchmark/src/main/java/com/airbnb/lottie/sample/compose/benchmark/LottieBaselineProfiles.kt b/sample-compose-benchmark/src/main/java/com/airbnb/lottie/sample/compose/benchmark/LottieBaselineProfiles.kt
index 9413efc..04aed45 100644
--- a/sample-compose-benchmark/src/main/java/com/airbnb/lottie/sample/compose/benchmark/LottieBaselineProfiles.kt
+++ b/sample-compose-benchmark/src/main/java/com/airbnb/lottie/sample/compose/benchmark/LottieBaselineProfiles.kt
@@ -15,6 +15,7 @@
import org.junit.Test
import org.junit.runner.RunWith
import kotlin.time.Duration
+import kotlin.time.Duration.Companion.seconds
import kotlin.time.DurationUnit
import kotlin.time.ExperimentalTime
@@ -36,7 +37,6 @@
}
@Test
- @OptIn(ExperimentalTime::class)
fun baselineProfiles() {
baselineProfileRule.collectBaselineProfile(
packageName = PACKAGE_NAME,
@@ -59,7 +59,6 @@
}
}
- @OptIn(ExperimentalTime::class)
private fun UiScrollable.waitUntilReady() {
this.waitUntil {
// We know that there are at least 9 children
@@ -67,8 +66,7 @@
}
}
- @OptIn(ExperimentalTime::class)
- private fun UiObject.clickAndWait(maxWaitTime: Duration = Duration.seconds(5)) {
+ private fun UiObject.clickAndWait(maxWaitTime: Duration = 5.seconds) {
val maxWaitTimeMs = maxWaitTime.toLong(DurationUnit.MILLISECONDS)
click()
device.waitForIdle(maxWaitTimeMs)
@@ -76,8 +74,7 @@
device.pressBack()
}
- @OptIn(ExperimentalTime::class)
- private fun <T> T.waitUntil(maxWaitTime: Duration = Duration.seconds(5), condition: (T) -> Boolean) {
+ private fun <T> T.waitUntil(maxWaitTime: Duration = 5.seconds, condition: (T) -> Boolean) {
var waitTime = 0L
val maxWaitTimeMs = maxWaitTime.toLong(DurationUnit.MILLISECONDS)
val incrementalDelay = 150L
diff --git a/sample-compose/build.gradle b/sample-compose/build.gradle
index f3c3698..bd7073e 100644
--- a/sample-compose/build.gradle
+++ b/sample-compose/build.gradle
@@ -2,7 +2,7 @@
plugins {
id 'com.android.application'
- id "kotlin-android"
+ id "org.jetbrains.kotlin.android"
id 'kotlin-kapt'
}
@@ -24,12 +24,7 @@
debuggable false
}
}
- compileOptions {
- sourceCompatibility JavaVersion.VERSION_17
- targetCompatibility JavaVersion.VERSION_17
- }
kotlinOptions {
- jvmTarget = '17'
freeCompilerArgs += [
"-Xallow-jvm-ir-dependencies",
"-Xskip-prerelease-check",
diff --git a/sample/build.gradle b/sample/build.gradle
index 869b0ab..aee9b6d 100644
--- a/sample/build.gradle
+++ b/sample/build.gradle
@@ -1,7 +1,9 @@
+import static de.fayard.refreshVersions.core.Versions.versionFor
+
plugins {
id 'com.android.application'
- id "kotlin-android"
- id 'kotlin-parcelize'
+ id "org.jetbrains.kotlin.android"
+ id 'org.jetbrains.kotlin.plugin.parcelize'
id 'com.google.devtools.ksp'
}
@@ -40,17 +42,9 @@
textOutput 'stdout'
baseline file("lint-baseline.xml")
}
- compileOptions {
- sourceCompatibility JavaVersion.VERSION_17
- targetCompatibility JavaVersion.VERSION_17
- }
kotlinOptions {
- jvmTarget = JavaVersion.VERSION_17.toString()
freeCompilerArgs += ["-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi"]
}
- sourceSets {
- main.java.srcDirs += 'src/main/kotlin'
- }
packagingOptions {
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/NOTICE.txt'
@@ -66,6 +60,7 @@
implementation libs.androidx.appcompat
implementation libs.androidx.recyclerview
implementation libs.androidx.paging.runtime.ktx
+ implementation libs.androidx.viewmodel.ktx
implementation libs.androidx.cardview
implementation libs.androidx.core.ktx
implementation libs.androidx.constraintlayout
diff --git a/sample/src/androidTest/java/com/airbnb/lottie/samples/FragmentVisibilityTests.kt b/sample/src/androidTest/java/com/airbnb/lottie/samples/FragmentVisibilityTests.kt
index ca15b50..59cc86e 100644
--- a/sample/src/androidTest/java/com/airbnb/lottie/samples/FragmentVisibilityTests.kt
+++ b/sample/src/androidTest/java/com/airbnb/lottie/samples/FragmentVisibilityTests.kt
@@ -9,7 +9,6 @@
import android.view.View
import android.view.ViewGroup
import android.widget.TextView
-import androidx.annotation.IdRes
import androidx.appcompat.app.AlertDialog
import androidx.core.view.isVisible
import androidx.fragment.app.Fragment
@@ -37,6 +36,7 @@
import org.junit.Test
import org.junit.runner.RunWith
import kotlin.random.Random
+import androidx.appcompat.R as AppcompatR
@RunWith(AndroidJUnit4::class)
@LargeTest
@@ -59,7 +59,7 @@
@Test
fun testRecyclerViewCanAutoPlayInOnBindRebind() {
class TestFragment : Fragment() {
- override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
+ override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View {
return RecyclerView(requireContext()).apply {
layoutManager = LinearLayoutManager(requireContext(), LinearLayoutManager.VERTICAL, false)
// Setting itemAnimator to null is important for this test in order to
@@ -158,7 +158,7 @@
}
}
- val scenario = launchFragmentInContainer<TestFragment>(themeResId = R.style.Theme_AppCompat)
+ val scenario = launchFragmentInContainer<TestFragment>(themeResId = AppcompatR.style.Theme_AppCompat)
onIdle()
scenario.onFragment { fragment ->
val animationView = fragment.requireView().findViewById<LottieAnimationView>(R.id.animation_view)
diff --git a/sample/src/main/kotlin/com/airbnb/lottie/samples/utils/FragmentViewBindingDelegate.kt b/sample/src/main/kotlin/com/airbnb/lottie/samples/utils/FragmentViewBindingDelegate.kt
index 46635ac..cded27e 100644
--- a/sample/src/main/kotlin/com/airbnb/lottie/samples/utils/FragmentViewBindingDelegate.kt
+++ b/sample/src/main/kotlin/com/airbnb/lottie/samples/utils/FragmentViewBindingDelegate.kt
@@ -4,9 +4,9 @@
import android.os.Looper
import android.view.View
import androidx.fragment.app.Fragment
+import androidx.lifecycle.DefaultLifecycleObserver
import androidx.lifecycle.Lifecycle
-import androidx.lifecycle.LifecycleObserver
-import androidx.lifecycle.OnLifecycleEvent
+import androidx.lifecycle.LifecycleOwner
import androidx.viewbinding.ViewBinding
import kotlin.properties.ReadOnlyProperty
import kotlin.reflect.KProperty
@@ -31,9 +31,9 @@
init {
fragment.viewLifecycleOwnerLiveData.observe(fragment) { viewLifecycleOwner ->
- viewLifecycleOwner.lifecycle.addObserver(object : LifecycleObserver {
- @OnLifecycleEvent(Lifecycle.Event.ON_DESTROY)
- fun onDestroy() {
+ viewLifecycleOwner.lifecycle.addObserver(object : DefaultLifecycleObserver {
+
+ override fun onDestroy(owner: LifecycleOwner) {
// Lifecycle listeners are called before onDestroyView in a Fragment.
// However, we want views to be able to use bindings in onDestroyView
// to do cleanup so we clear the reference one frame later.
diff --git a/settings.gradle b/settings.gradle
index 5ab302e..4fd80ba 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -1,7 +1,23 @@
+pluginManagement {
+ repositories {
+ gradlePluginPortal()
+ google()
+ }
+}
+
plugins {
id 'de.fayard.refreshVersions' version '0.51.0'
}
+dependencyResolutionManagement {
+ repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
+ repositories {
+ google()
+ mavenCentral()
+ maven { url 'https://jitpack.io' }
+ }
+}
+
include ':lottie'
include ':lottie-compose'
include ':sample'
diff --git a/snapshot-tests/build.gradle b/snapshot-tests/build.gradle
index c50f799..854ddc2 100644
--- a/snapshot-tests/build.gradle
+++ b/snapshot-tests/build.gradle
@@ -2,8 +2,7 @@
plugins {
id 'com.android.application'
- id "kotlin-android"
- id 'kotlin-kapt'
+ id "org.jetbrains.kotlin.android"
}
android {
@@ -32,13 +31,7 @@
}
}
- compileOptions {
- sourceCompatibility JavaVersion.VERSION_17
- targetCompatibility JavaVersion.VERSION_17
- }
-
kotlinOptions {
- jvmTarget = JavaVersion.VERSION_17.toString()
freeCompilerArgs += [
"-Xallow-jvm-ir-dependencies",
"-Xskip-prerelease-check",
@@ -57,10 +50,6 @@
}
}
-kapt {
- correctErrorTypes = true
-}
-
dependencies {
implementation project(':lottie-compose')
implementation libs.androidx.appcompat
diff --git a/versions.properties b/versions.properties
index a00a2ae..cadc98e 100644
--- a/versions.properties
+++ b/versions.properties
@@ -7,6 +7,7 @@
#### suppress inspection "SpellCheckingInspection" for whole file
#### suppress inspection "UnusedProperty" for whole file
+## unused
plugin.android=8.0.1
## # available=8.1.0-alpha01
## # available=8.1.0-alpha02
@@ -27,41 +28,22 @@
plugin.ksp=1.8.21-1.0.11
version.androidx.compose=2023.05.00
+## # available=2023.05.01
## unused
version.androidx.compose..compose-bom=2023.05.00
version.coil-kt=2.3.0
+## # available=2.4.0
version.robolectric=4.10.2
+## # available=4.10.3
version.retrofit2=2.9.0
-version.org.jetbrains.dokka..dokka-gradle-plugin=1.5.30
-## # available=1.5.31
-## # available=1.6.0
-## # available=1.6.10
-## # available=1.6.20
-## # available=1.6.21
-## # available=1.7.0
-## # available=1.7.10
-## # available=1.7.20
-## # available=1.8.10
-
## unused
version.org.jacoco..org.jacoco.ant=0.8.3
-version.org.ajoberstar.grgit..grgit-gradle=4.1.1
-## # available=5.0.0-beta.1
-## # available=5.0.0-rc.1
-## # available=5.0.0-rc.2
-## # available=5.0.0-rc.3
-## # available=5.0.0-rc.7
-## # available=5.0.0
-## # available=5.1.0-rc.1
-## # available=5.1.0
-## # available=5.2.0
-
# Do not update to 2.0. It will pull in Kotlin as a transitive dependency into the lottie library.
version.okio=1.17.5
### available=2.0.0-RC1
@@ -137,14 +119,16 @@
## # available=5.3.1
version.kotlinx.coroutines=1.7.0
+## # available=1.7.1
version.kotlin=1.8.21
+## # available=1.9.0-Beta
version.junit.junit=4.13.2
version.io.jsonwebtoken..jjwt=0.9.1
-version.google.dagger=2.46
+version.google.dagger=2.46.1
version.google.android.material=1.4.0
## # available=1.5.0-alpha01
@@ -181,13 +165,7 @@
## # available=1.9.0
## # available=1.10.0-alpha01
## # available=1.10.0-alpha02
-
-version.com.vanniktech..gradle-maven-publish-plugin=0.24.0
-## # available=0.25.0-rc1
-## # available=0.25.0
-## # available=0.25.1
-## # available=0.25.2-rc1
-## # available=0.25.2
+## # available=1.10.0-alpha03
version.com.uber.nullaway..nullaway=0.9.2
## # available=0.9.3
@@ -240,6 +218,8 @@
## # available=2.16
## # available=2.17.0
## # available=2.18.0
+## # available=2.19.0
+## # available=2.19.1
version.com.google.code.gson..gson=2.8.8
## # available=2.8.9
@@ -381,6 +361,8 @@
## # available=2.66.0
## # available=2.67.0
## # available=2.68.0
+## # available=2.69.0
+## # available=2.70.0
version.com.amazonaws..aws-android-sdk-mobile-client=2.8.3
## # available=2.8.4
@@ -501,6 +483,8 @@
## # available=2.66.0
## # available=2.67.0
## # available=2.68.0
+## # available=2.69.0
+## # available=2.70.0
version.com.amazonaws..aws-android-sdk-auth-userpools=2.8.3
## # available=2.8.4
@@ -621,6 +605,8 @@
## # available=2.66.0
## # available=2.67.0
## # available=2.68.0
+## # available=2.69.0
+## # available=2.70.0
version.com.airbnb.android..mvrx=1.5.1
## # available=2.0.0-alpha1
@@ -643,6 +629,7 @@
## # available=3.0.0
## # available=3.0.1
## # available=3.0.2
+## # available=3.0.3
version.com.airbnb.android..mavericks=2.3.0
## # available=2.4.0
@@ -654,10 +641,13 @@
## # available=3.0.0
## # available=3.0.1
## # available=3.0.2
+## # available=3.0.3
version.com.airbnb.android..epoxy-processor=5.1.2
+## # available=5.1.3
version.com.airbnb.android..epoxy=5.1.2
+## # available=5.1.3
version.androidx.test.uiautomator=2.2.0
## # available=2.3.0-alpha01
@@ -674,6 +664,18 @@
## # available=3.6.0-alpha01
version.androidx.test.core=1.4.0
+## # available=1.4.1-alpha01
+## # available=1.4.1-alpha02
+## # available=1.4.1-alpha03
+## # available=1.4.1-alpha04
+## # available=1.4.1-alpha05
+## # available=1.4.1-alpha06
+## # available=1.4.1-alpha07
+## # available=1.5.0-alpha01
+## # available=1.5.0-alpha02
+## # available=1.5.0-beta01
+## # available=1.5.0-rc01
+## # available=1.5.0
## # available=1.6.0-alpha01
version.androidx.recyclerview=1.2.1
@@ -683,23 +685,17 @@
## # available=1.3.0-beta02
## # available=1.3.0-rc01
## # available=1.3.0
+## # available=1.3.1-rc01
version.androidx.profileinstaller=1.3.1
-version.androidx.paging=3.0.1
-## # available=3.1.0-alpha01
-## # available=3.1.0-alpha02
-## # available=3.1.0-alpha03
-## # available=3.1.0-alpha04
-## # available=3.1.0-beta01
-## # available=3.1.0-rc01
-## # available=3.1.0
-## # available=3.1.1
+version.androidx.paging=3.1.1
## # available=3.2.0-alpha01
## # available=3.2.0-alpha02
## # available=3.2.0-alpha03
## # available=3.2.0-alpha04
## # available=3.2.0-alpha05
+## # available=3.2.0-alpha06
version.androidx.navigation=2.4.0-alpha10
## # available=2.4.0-beta01
@@ -729,37 +725,13 @@
## # available=2.6.0-alpha08
## # available=2.6.0-alpha09
## # available=2.6.0-beta01
+## # available=2.6.0-rc01
+## # available=2.6.0-rc02
+## # available=2.7.0-alpha01
version.androidx.multidex=2.0.1
-version.androidx.lifecycle=2.3.1
-## # available=2.4.0-alpha01
-## # available=2.4.0-alpha02
-## # available=2.4.0-alpha03
-## # available=2.4.0-beta01
-## # available=2.4.0-rc01
-## # available=2.4.0
-## # available=2.4.1
-## # available=2.5.0-alpha01
-## # available=2.5.0-alpha02
-## # available=2.5.0-alpha03
-## # available=2.5.0-alpha04
-## # available=2.5.0-alpha05
-## # available=2.5.0-alpha06
-## # available=2.5.0-beta01
-## # available=2.5.0-rc01
-## # available=2.5.0-rc02
-## # available=2.5.0
-## # available=2.5.1
-## # available=2.6.0-alpha01
-## # available=2.6.0-alpha02
-## # available=2.6.0-alpha03
-## # available=2.6.0-alpha04
-## # available=2.6.0-alpha05
-## # available=2.6.0-beta01
-## # available=2.6.0-rc01
-## # available=2.6.0
-## # available=2.6.1
+version.androidx.lifecycle=2.6.1
version.androidx.fragment=1.5.7
## # available=1.6.0-alpha01
@@ -772,6 +744,7 @@
## # available=1.6.0-alpha08
## # available=1.6.0-alpha09
## # available=1.6.0-beta01
+## # available=1.6.0-rc01
## unused
version.androidx.databinding=7.1.3
@@ -807,11 +780,15 @@
## # available=1.10.0-beta01
## # available=1.10.0-rc01
## # available=1.10.0
+## # available=1.10.1
## # available=1.11.0-alpha01
## # available=1.11.0-alpha02
## # available=1.11.0-alpha03
+## # available=1.11.0-alpha04
+## # available=1.11.0-beta01
## # available=1.12.0-alpha01
## # available=1.12.0-alpha03
+## # available=1.12.0-alpha04
version.androidx.constraintlayout=2.1.1
## # available=2.1.2
@@ -826,6 +803,7 @@
## # available=2.2.0-alpha07
## # available=2.2.0-alpha08
## # available=2.2.0-alpha09
+## # available=2.2.0-alpha10
version.androidx.compose.ui=1.1.1
## # available=1.2.0-alpha01
@@ -870,7 +848,10 @@
## # available=1.5.0-alpha01
## # available=1.5.0-alpha02
## # available=1.5.0-alpha03
+## # available=1.5.0-alpha04
+## # available=1.5.0-beta01
+## unused
version.androidx.compose.material=1.1.1
## # available=1.2.0-alpha01
## # available=1.2.0-alpha02
@@ -1062,11 +1043,43 @@
## # available=1.7.0-rc01
## # available=1.7.0
## # available=1.7.1
+## # available=1.7.2
## # available=1.8.0-alpha01
## # available=1.8.0-alpha02
## # available=1.8.0-alpha03
+## # available=1.8.0-alpha04
plugin.net.ltgt.errorprone=3.0.1
## # available=3.1.0
plugin.com.google.devtools.ksp=1.8.21-1.0.11
+## # available=1.9.0-Beta-1.0.11
+
+plugin.org.ajoberstar.grgit=4.1.1
+## # available=5.0.0-beta.1
+## # available=5.0.0-rc.1
+## # available=5.0.0-rc.2
+## # available=5.0.0-rc.3
+## # available=5.0.0-rc.7
+## # available=5.0.0
+## # available=5.1.0-rc.1
+## # available=5.1.0
+## # available=5.2.0
+
+plugin.com.vanniktech.maven.publish=0.24.0
+## # available=0.25.0-rc1
+## # available=0.25.0
+## # available=0.25.1
+## # available=0.25.2-rc1
+## # available=0.25.2
+
+plugin.org.jetbrains.dokka=1.5.30
+## # available=1.5.31
+## # available=1.6.0
+## # available=1.6.10
+## # available=1.6.20
+## # available=1.6.21
+## # available=1.7.0
+## # available=1.7.10
+## # available=1.7.20
+## # available=1.8.10