diff --git a/app/build.gradle b/app/build.gradle index 9df173236..56508f332 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -18,7 +18,7 @@ android { compileSdk rootProject.ext.compileSdk defaultConfig { - minSdk 32 // leave at 32 for robolectric tests + minSdk rootProject.ext.minSdk targetSdk rootProject.ext.targetSdk versionNameSuffix "-$gitDescribe" testInstrumentationRunner "com.stevesoltys.seedvault.KoinInstrumentationTestRunner" @@ -52,6 +52,10 @@ android { jvmTarget = JavaVersion.VERSION_17.toString() languageVersion = "1.8" } + packagingOptions { + exclude("META-INF/LICENSE.md") + exclude("META-INF/LICENSE-notice.md") + } testOptions { unitTests.all { useJUnitPlatform() @@ -134,8 +138,8 @@ dependencies { implementation fileTree(include: ['*.jar'], dir: "${rootProject.rootDir}/libs/koin-android") implementation fileTree(include: ['*.aar'], dir: "${rootProject.rootDir}/libs/koin-android") -// implementation "cash.z.ecc.android:kotlin-bip39:1.0.4" - implementation fileTree(include: ['kotlin-bip39-jvm-1.0.4.jar'], dir: "${rootProject.rootDir}/libs") +// implementation "cash.z.ecc.android:kotlin-bip39:1.0.6" + implementation fileTree(include: ['kotlin-bip39-jvm-1.0.6.jar'], dir: "${rootProject.rootDir}/libs") /** * Test Dependencies (do not concern the AOSP build) @@ -144,16 +148,13 @@ dependencies { // anything less than 'implementation' fails tests run with gradlew testImplementation rootProject.ext.aosp_libs - testImplementation 'androidx.test.ext:junit:1.1.3' - testImplementation('org.robolectric:robolectric:4.8.1') { - // https://github.com/robolectric/robolectric/issues/5245 - exclude group: "com.google.auto.service", module: "auto-service" - } + testImplementation 'androidx.test.ext:junit:1.1.5' + testImplementation('org.robolectric:robolectric:4.10.3') testImplementation 'org.hamcrest:hamcrest:2.2' testImplementation "org.junit.jupiter:junit-jupiter-api:$junit5_version" testImplementation "org.junit.jupiter:junit-jupiter-params:$junit5_version" testImplementation "io.mockk:mockk:$mockk_version" - testImplementation 'org.bitcoinj:bitcoinj-core:0.15.10' + testImplementation 'org.bitcoinj:bitcoinj-core:0.16.2' testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:$junit5_version" testRuntimeOnly "org.junit.vintage:junit-vintage-engine:$junit5_version" diff --git a/app/src/test/java/com/stevesoltys/seedvault/crypto/WordListTest.kt b/app/src/test/java/com/stevesoltys/seedvault/crypto/WordListTest.kt index 3e54e42e0..88ef7faa3 100644 --- a/app/src/test/java/com/stevesoltys/seedvault/crypto/WordListTest.kt +++ b/app/src/test/java/com/stevesoltys/seedvault/crypto/WordListTest.kt @@ -1,7 +1,6 @@ package com.stevesoltys.seedvault.crypto import cash.z.ecc.android.bip39.Mnemonics -import cash.z.ecc.android.bip39.WordList import cash.z.ecc.android.bip39.toSeed import com.stevesoltys.seedvault.toHexString import com.stevesoltys.seedvault.ui.recoverycode.toMnemonicChars @@ -2066,7 +2065,7 @@ class WordListTest { @Test fun `word list of library did not change`() { - val libWords = WordList().words + val libWords = Mnemonics.getCachedWords("en") for (i in words.indices) { assertEquals(words[i], libWords[i]) } diff --git a/app/src/test/java/com/stevesoltys/seedvault/metadata/MetadataManagerTest.kt b/app/src/test/java/com/stevesoltys/seedvault/metadata/MetadataManagerTest.kt index 9683ad06d..661677ab2 100644 --- a/app/src/test/java/com/stevesoltys/seedvault/metadata/MetadataManagerTest.kt +++ b/app/src/test/java/com/stevesoltys/seedvault/metadata/MetadataManagerTest.kt @@ -41,7 +41,7 @@ import kotlin.random.Random @Suppress("DEPRECATION") @RunWith(AndroidJUnit4::class) @Config( - sdk = [32], // robolectric does not support 33, yet + sdk = [33], // robolectric does not support 34, yet application = TestApp::class ) class MetadataManagerTest { diff --git a/app/src/test/java/com/stevesoltys/seedvault/plugins/saf/DocumentFileTest.kt b/app/src/test/java/com/stevesoltys/seedvault/plugins/saf/DocumentFileTest.kt index bc3443c6a..3fd6491b0 100644 --- a/app/src/test/java/com/stevesoltys/seedvault/plugins/saf/DocumentFileTest.kt +++ b/app/src/test/java/com/stevesoltys/seedvault/plugins/saf/DocumentFileTest.kt @@ -19,7 +19,7 @@ import org.robolectric.annotation.Config @RunWith(AndroidJUnit4::class) @Config( - sdk = [32], // robolectric does not support 33, yet + sdk = [33], // robolectric does not support 34, yet application = TestApp::class ) internal class DocumentFileTest { diff --git a/app/src/test/java/com/stevesoltys/seedvault/restore/install/DeviceInfoTest.kt b/app/src/test/java/com/stevesoltys/seedvault/restore/install/DeviceInfoTest.kt index 8d93b053f..2ee5f7c26 100644 --- a/app/src/test/java/com/stevesoltys/seedvault/restore/install/DeviceInfoTest.kt +++ b/app/src/test/java/com/stevesoltys/seedvault/restore/install/DeviceInfoTest.kt @@ -22,7 +22,7 @@ import kotlin.random.Random @RunWith(AndroidJUnit4::class) @Config( - sdk = [32], // robolectric does not support 33, yet + sdk = [33], // robolectric does not support 34, yet application = TestApp::class ) internal class DeviceInfoTest { diff --git a/build.gradle b/build.gradle index c69489897..13e210ec0 100644 --- a/build.gradle +++ b/build.gradle @@ -22,7 +22,7 @@ plugins { ext { compileSdk = 34 - minSdk = 32 + minSdk = 33 targetSdk = 34 } diff --git a/contactsbackup/build.gradle b/contactsbackup/build.gradle index c00a4b40d..e68d2df86 100644 --- a/contactsbackup/build.gradle +++ b/contactsbackup/build.gradle @@ -30,6 +30,11 @@ android { jvmTarget = JavaVersion.VERSION_17.toString() } + packagingOptions { + exclude("META-INF/LICENSE.md") + exclude("META-INF/LICENSE-notice.md") + } + testOptions { unitTests.returnDefaultValues = true } @@ -67,7 +72,7 @@ dependencies { testImplementation "io.mockk:mockk:$mockk_version" androidTestImplementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version" - androidTestImplementation 'androidx.test.ext:junit:1.1.3' + androidTestImplementation 'androidx.test.ext:junit:1.1.5' androidTestImplementation "androidx.test.espresso:espresso-core:$espresso_version" androidTestImplementation "io.mockk:mockk-android:$mockk_version" } diff --git a/gradle/dependencies.gradle b/gradle/dependencies.gradle index 34b00b9db..cbfa11a03 100644 --- a/gradle/dependencies.gradle +++ b/gradle/dependencies.gradle @@ -6,8 +6,8 @@ ext { // test dependencies below - these do not care about AOSP and can be freely updated junit4_version = "4.13.2" - junit5_version = "5.7.2" // careful, upgrading this can change a Cipher's IV size in tests!? - mockk_version = "1.12.3" + junit5_version = "5.10.0" // careful, upgrading this can change a Cipher's IV size in tests!? + mockk_version = "1.13.4" // newer versions require kotlin > 1.8.10 espresso_version = "3.4.0" } @@ -108,6 +108,6 @@ ext.storage_libs = [ // https://github.com/google/tink/releases com_google_crypto_tink_android: dependencies.create('com.google.crypto.tink:tink-android') { // careful with upgrading tink, so old backups continue to be decryptable - version { strictly '1.7.0' } + version { strictly '1.10.0' } }, ] diff --git a/libs/Android.bp b/libs/Android.bp index 15a9fcf2e..f20ae3810 100644 --- a/libs/Android.bp +++ b/libs/Android.bp @@ -1,5 +1,5 @@ java_import { name: "seedvault-lib-kotlin-bip39", - jars: ["kotlin-bip39-jvm-1.0.4.jar"], + jars: ["kotlin-bip39-jvm-1.0.6.jar"], sdk_version: "current", } diff --git a/libs/kotlin-bip39-jvm-1.0.4.jar b/libs/kotlin-bip39-jvm-1.0.4.jar deleted file mode 100644 index 55ff7745f..000000000 Binary files a/libs/kotlin-bip39-jvm-1.0.4.jar and /dev/null differ diff --git a/libs/kotlin-bip39-jvm-1.0.6.jar b/libs/kotlin-bip39-jvm-1.0.6.jar new file mode 100644 index 000000000..faeabc19a Binary files /dev/null and b/libs/kotlin-bip39-jvm-1.0.6.jar differ diff --git a/storage/lib/Android.bp b/storage/lib/Android.bp index 227fecfb4..d28d5c877 100644 --- a/storage/lib/Android.bp +++ b/storage/lib/Android.bp @@ -46,6 +46,6 @@ android_library { java_import { name: "seedvault-lib-tink-android", - jars: ["libs/tink-android-1.7.0.jar"], + jars: ["libs/tink-android-1.10.0.jar"], sdk_version: "current", } diff --git a/storage/lib/build.gradle b/storage/lib/build.gradle index 447b28495..c3bd1c98d 100644 --- a/storage/lib/build.gradle +++ b/storage/lib/build.gradle @@ -99,7 +99,7 @@ dependencies { testImplementation "io.mockk:mockk:$mockk_version" testImplementation "org.jetbrains.kotlin:kotlin-test-junit:$kotlin_version" - androidTestImplementation 'androidx.test.ext:junit:1.1.3' + androidTestImplementation 'androidx.test.ext:junit:1.1.5' androidTestImplementation "androidx.test.espresso:espresso-core:$espresso_version" } diff --git a/storage/lib/libs/tink-android-1.10.0.jar b/storage/lib/libs/tink-android-1.10.0.jar new file mode 100644 index 000000000..2a370011d Binary files /dev/null and b/storage/lib/libs/tink-android-1.10.0.jar differ diff --git a/storage/lib/libs/tink-android-1.7.0.jar b/storage/lib/libs/tink-android-1.7.0.jar deleted file mode 100644 index 5bb1c7d8e..000000000 Binary files a/storage/lib/libs/tink-android-1.7.0.jar and /dev/null differ