Misc cleanups to build-logic and expand BCV exclusion list (#1622)
* build-logic: remove `kotlin-dsl-precompiled-script-plugins` plugin * build-logic: use generated accessors for extensions * build: exclude non-published library projects from API dump There's no point in tracking binary compatibility for libraries that are only used internally
This commit is contained in:
parent
43f6a0090f
commit
674a7d299b
13 changed files with 18 additions and 200 deletions
|
@ -8,10 +8,7 @@ import org.gradle.api.tasks.compile.JavaCompile
|
||||||
import org.gradle.kotlin.dsl.withType
|
import org.gradle.kotlin.dsl.withType
|
||||||
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
|
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
|
||||||
|
|
||||||
plugins {
|
plugins { `kotlin-dsl` }
|
||||||
`kotlin-dsl`
|
|
||||||
`kotlin-dsl-precompiled-script-plugins`
|
|
||||||
}
|
|
||||||
|
|
||||||
afterEvaluate {
|
afterEvaluate {
|
||||||
tasks.withType<JavaCompile>().configureEach {
|
tasks.withType<JavaCompile>().configureEach {
|
||||||
|
|
|
@ -3,10 +3,8 @@
|
||||||
* SPDX-License-Identifier: GPL-3.0-only
|
* SPDX-License-Identifier: GPL-3.0-only
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import com.android.build.gradle.internal.dsl.BaseAppModuleExtension
|
|
||||||
import flavors.FlavorDimensions
|
import flavors.FlavorDimensions
|
||||||
import flavors.ProductFlavors
|
import flavors.ProductFlavors
|
||||||
import org.gradle.kotlin.dsl.configure
|
|
||||||
import signing.configureBuildSigning
|
import signing.configureBuildSigning
|
||||||
|
|
||||||
plugins {
|
plugins {
|
||||||
|
@ -22,7 +20,7 @@ fun Project.isSnapshot(): Boolean {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
extensions.configure<BaseAppModuleExtension> {
|
android {
|
||||||
val minifySwitch =
|
val minifySwitch =
|
||||||
project.providers.environmentVariable("DISABLE_MINIFY").forUseAtConfigurationTime()
|
project.providers.environmentVariable("DISABLE_MINIFY").forUseAtConfigurationTime()
|
||||||
|
|
||||||
|
|
|
@ -3,9 +3,7 @@
|
||||||
* SPDX-License-Identifier: GPL-3.0-only
|
* SPDX-License-Identifier: GPL-3.0-only
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import org.gradle.kotlin.dsl.configure
|
|
||||||
import org.gradle.kotlin.dsl.provideDelegate
|
import org.gradle.kotlin.dsl.provideDelegate
|
||||||
import org.gradle.plugins.signing.SigningExtension
|
|
||||||
|
|
||||||
plugins {
|
plugins {
|
||||||
id("com.github.android-password-store.android-library")
|
id("com.github.android-password-store.android-library")
|
||||||
|
@ -14,7 +12,7 @@ plugins {
|
||||||
}
|
}
|
||||||
|
|
||||||
afterEvaluate {
|
afterEvaluate {
|
||||||
extensions.configure<SigningExtension> {
|
signing {
|
||||||
val signingKey: String? by project
|
val signingKey: String? by project
|
||||||
val signingPassword: String? by project
|
val signingPassword: String? by project
|
||||||
useInMemoryPgpKeys(signingKey, signingPassword)
|
useInMemoryPgpKeys(signingKey, signingPassword)
|
||||||
|
|
|
@ -8,10 +8,7 @@ import org.gradle.api.tasks.compile.JavaCompile
|
||||||
import org.gradle.kotlin.dsl.withType
|
import org.gradle.kotlin.dsl.withType
|
||||||
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
|
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
|
||||||
|
|
||||||
plugins {
|
plugins { `kotlin-dsl` }
|
||||||
`kotlin-dsl`
|
|
||||||
`kotlin-dsl-precompiled-script-plugins`
|
|
||||||
}
|
|
||||||
|
|
||||||
afterEvaluate {
|
afterEvaluate {
|
||||||
tasks.withType<JavaCompile>().configureEach {
|
tasks.withType<JavaCompile>().configureEach {
|
||||||
|
|
|
@ -8,10 +8,7 @@ import org.gradle.api.tasks.compile.JavaCompile
|
||||||
import org.gradle.kotlin.dsl.withType
|
import org.gradle.kotlin.dsl.withType
|
||||||
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
|
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
|
||||||
|
|
||||||
plugins {
|
plugins { `kotlin-dsl` }
|
||||||
`kotlin-dsl`
|
|
||||||
`kotlin-dsl-precompiled-script-plugins`
|
|
||||||
}
|
|
||||||
|
|
||||||
afterEvaluate {
|
afterEvaluate {
|
||||||
tasks.withType<JavaCompile>().configureEach {
|
tasks.withType<JavaCompile>().configureEach {
|
||||||
|
|
|
@ -3,9 +3,17 @@
|
||||||
* SPDX-License-Identifier: GPL-3.0-only
|
* SPDX-License-Identifier: GPL-3.0-only
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import kotlinx.validation.ApiValidationExtension
|
|
||||||
import org.gradle.kotlin.dsl.configure
|
|
||||||
|
|
||||||
plugins { id("org.jetbrains.kotlinx.binary-compatibility-validator") }
|
plugins { id("org.jetbrains.kotlinx.binary-compatibility-validator") }
|
||||||
|
|
||||||
extensions.configure<ApiValidationExtension> { ignoredProjects = mutableSetOf("app") }
|
apiValidation {
|
||||||
|
ignoredProjects =
|
||||||
|
mutableSetOf(
|
||||||
|
"app",
|
||||||
|
"coroutine-utils",
|
||||||
|
"coroutine-utils-testing",
|
||||||
|
"crypto-common",
|
||||||
|
"crypto-pgpainless",
|
||||||
|
"format-common",
|
||||||
|
"diceware",
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
|
@ -4,8 +4,6 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import org.gradle.api.Project
|
import org.gradle.api.Project
|
||||||
import org.gradle.kotlin.dsl.configure
|
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KaptExtension
|
|
||||||
|
|
||||||
plugins {
|
plugins {
|
||||||
kotlin("android")
|
kotlin("android")
|
||||||
|
@ -13,7 +11,7 @@ plugins {
|
||||||
}
|
}
|
||||||
|
|
||||||
afterEvaluate {
|
afterEvaluate {
|
||||||
extensions.configure<KaptExtension> {
|
kapt {
|
||||||
javacOptions {
|
javacOptions {
|
||||||
if (hasDaggerCompilerDependency()) {
|
if (hasDaggerCompilerDependency()) {
|
||||||
// https://dagger.dev/dev-guide/compiler-options#fastinit-mode
|
// https://dagger.dev/dev-guide/compiler-options#fastinit-mode
|
||||||
|
|
|
@ -1,8 +0,0 @@
|
||||||
public final class dev/msfjarvis/aps/test/CoroutineTestRule : org/junit/rules/TestWatcher {
|
|
||||||
public fun <init> ()V
|
|
||||||
public fun <init> (Lkotlinx/coroutines/test/TestDispatcher;)V
|
|
||||||
public synthetic fun <init> (Lkotlinx/coroutines/test/TestDispatcher;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
|
|
||||||
public final fun getTestDispatcher ()Lkotlinx/coroutines/test/TestDispatcher;
|
|
||||||
public final fun getTestDispatcherProvider ()Ldev/msfjarvis/aps/util/coroutines/DispatcherProvider;
|
|
||||||
}
|
|
||||||
|
|
|
@ -1,22 +0,0 @@
|
||||||
public final class dev/msfjarvis/aps/util/coroutines/DefaultDispatcherProvider : dev/msfjarvis/aps/util/coroutines/DispatcherProvider {
|
|
||||||
public fun <init> ()V
|
|
||||||
public fun default ()Lkotlinx/coroutines/CoroutineDispatcher;
|
|
||||||
public fun io ()Lkotlinx/coroutines/CoroutineDispatcher;
|
|
||||||
public fun main ()Lkotlinx/coroutines/CoroutineDispatcher;
|
|
||||||
public fun unconfined ()Lkotlinx/coroutines/CoroutineDispatcher;
|
|
||||||
}
|
|
||||||
|
|
||||||
public abstract interface class dev/msfjarvis/aps/util/coroutines/DispatcherProvider {
|
|
||||||
public abstract fun default ()Lkotlinx/coroutines/CoroutineDispatcher;
|
|
||||||
public abstract fun io ()Lkotlinx/coroutines/CoroutineDispatcher;
|
|
||||||
public abstract fun main ()Lkotlinx/coroutines/CoroutineDispatcher;
|
|
||||||
public abstract fun unconfined ()Lkotlinx/coroutines/CoroutineDispatcher;
|
|
||||||
}
|
|
||||||
|
|
||||||
public final class dev/msfjarvis/aps/util/coroutines/DispatcherProvider$DefaultImpls {
|
|
||||||
public static fun default (Ldev/msfjarvis/aps/util/coroutines/DispatcherProvider;)Lkotlinx/coroutines/CoroutineDispatcher;
|
|
||||||
public static fun io (Ldev/msfjarvis/aps/util/coroutines/DispatcherProvider;)Lkotlinx/coroutines/CoroutineDispatcher;
|
|
||||||
public static fun main (Ldev/msfjarvis/aps/util/coroutines/DispatcherProvider;)Lkotlinx/coroutines/CoroutineDispatcher;
|
|
||||||
public static fun unconfined (Ldev/msfjarvis/aps/util/coroutines/DispatcherProvider;)Lkotlinx/coroutines/CoroutineDispatcher;
|
|
||||||
}
|
|
||||||
|
|
|
@ -1,63 +0,0 @@
|
||||||
public abstract class dev/msfjarvis/aps/crypto/CryptoException : java/lang/Exception {
|
|
||||||
public synthetic fun <init> (Ljava/lang/String;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
|
|
||||||
public synthetic fun <init> (Ljava/lang/String;Lkotlin/jvm/internal/DefaultConstructorMarker;)V
|
|
||||||
}
|
|
||||||
|
|
||||||
public abstract interface class dev/msfjarvis/aps/crypto/CryptoHandler {
|
|
||||||
public abstract fun canHandle (Ljava/lang/String;)Z
|
|
||||||
public abstract fun decrypt (Ljava/lang/String;Ljava/lang/String;Ljava/io/InputStream;Ljava/io/OutputStream;)V
|
|
||||||
public abstract fun encrypt (Ljava/util/List;Ljava/io/InputStream;Ljava/io/OutputStream;)V
|
|
||||||
}
|
|
||||||
|
|
||||||
public abstract interface class dev/msfjarvis/aps/crypto/KeyManager {
|
|
||||||
public abstract fun addKey (Ldev/msfjarvis/aps/crypto/KeyPair;ZLkotlin/coroutines/Continuation;)Ljava/lang/Object;
|
|
||||||
public abstract fun canHandle (Ljava/lang/String;)Z
|
|
||||||
public abstract fun getAllKeys (Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
|
|
||||||
public abstract fun getKeyById (Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
|
|
||||||
public abstract fun removeKey (Ldev/msfjarvis/aps/crypto/KeyPair;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
|
|
||||||
}
|
|
||||||
|
|
||||||
public final class dev/msfjarvis/aps/crypto/KeyManager$DefaultImpls {
|
|
||||||
public static synthetic fun addKey$default (Ldev/msfjarvis/aps/crypto/KeyManager;Ldev/msfjarvis/aps/crypto/KeyPair;ZLkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
|
|
||||||
}
|
|
||||||
|
|
||||||
public abstract class dev/msfjarvis/aps/crypto/KeyManagerException : dev/msfjarvis/aps/crypto/CryptoException {
|
|
||||||
public synthetic fun <init> (Ljava/lang/String;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
|
|
||||||
public synthetic fun <init> (Ljava/lang/String;Lkotlin/jvm/internal/DefaultConstructorMarker;)V
|
|
||||||
}
|
|
||||||
|
|
||||||
public final class dev/msfjarvis/aps/crypto/KeyManagerException$KeyAlreadyExistsException : dev/msfjarvis/aps/crypto/KeyManagerException {
|
|
||||||
public fun <init> (Ljava/lang/String;)V
|
|
||||||
}
|
|
||||||
|
|
||||||
public final class dev/msfjarvis/aps/crypto/KeyManagerException$KeyDeletionFailedException : dev/msfjarvis/aps/crypto/KeyManagerException {
|
|
||||||
public static final field INSTANCE Ldev/msfjarvis/aps/crypto/KeyManagerException$KeyDeletionFailedException;
|
|
||||||
}
|
|
||||||
|
|
||||||
public final class dev/msfjarvis/aps/crypto/KeyManagerException$KeyDirectoryUnavailableException : dev/msfjarvis/aps/crypto/KeyManagerException {
|
|
||||||
public static final field INSTANCE Ldev/msfjarvis/aps/crypto/KeyManagerException$KeyDirectoryUnavailableException;
|
|
||||||
}
|
|
||||||
|
|
||||||
public final class dev/msfjarvis/aps/crypto/KeyManagerException$KeyNotFoundException : dev/msfjarvis/aps/crypto/KeyManagerException {
|
|
||||||
public fun <init> (Ljava/lang/String;)V
|
|
||||||
}
|
|
||||||
|
|
||||||
public final class dev/msfjarvis/aps/crypto/KeyManagerException$NoKeysAvailableException : dev/msfjarvis/aps/crypto/KeyManagerException {
|
|
||||||
public static final field INSTANCE Ldev/msfjarvis/aps/crypto/KeyManagerException$NoKeysAvailableException;
|
|
||||||
}
|
|
||||||
|
|
||||||
public abstract interface class dev/msfjarvis/aps/crypto/KeyPair {
|
|
||||||
public abstract fun getKeyId ()Ljava/lang/String;
|
|
||||||
public abstract fun getPrivateKey ()[B
|
|
||||||
public abstract fun getPublicKey ()[B
|
|
||||||
}
|
|
||||||
|
|
||||||
public abstract class dev/msfjarvis/aps/crypto/KeyPairException : dev/msfjarvis/aps/crypto/CryptoException {
|
|
||||||
public synthetic fun <init> (Ljava/lang/String;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
|
|
||||||
public synthetic fun <init> (Ljava/lang/String;Lkotlin/jvm/internal/DefaultConstructorMarker;)V
|
|
||||||
}
|
|
||||||
|
|
||||||
public final class dev/msfjarvis/aps/crypto/KeyPairException$PrivateKeyUnavailableException : dev/msfjarvis/aps/crypto/KeyPairException {
|
|
||||||
public static final field INSTANCE Ldev/msfjarvis/aps/crypto/KeyPairException$PrivateKeyUnavailableException;
|
|
||||||
}
|
|
||||||
|
|
|
@ -1,31 +0,0 @@
|
||||||
public final class dev/msfjarvis/aps/crypto/PGPKeyManager : dev/msfjarvis/aps/crypto/KeyManager {
|
|
||||||
public static final field Companion Ldev/msfjarvis/aps/crypto/PGPKeyManager$Companion;
|
|
||||||
public fun <init> (Ljava/lang/String;Lkotlinx/coroutines/CoroutineDispatcher;)V
|
|
||||||
public synthetic fun addKey (Ldev/msfjarvis/aps/crypto/KeyPair;ZLkotlin/coroutines/Continuation;)Ljava/lang/Object;
|
|
||||||
public fun addKey (Ldev/msfjarvis/aps/crypto/PGPKeyPair;ZLkotlin/coroutines/Continuation;)Ljava/lang/Object;
|
|
||||||
public fun canHandle (Ljava/lang/String;)Z
|
|
||||||
public fun getAllKeys (Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
|
|
||||||
public fun getKeyById (Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
|
|
||||||
public static final fun makeKey (Ljava/lang/String;)Ldev/msfjarvis/aps/crypto/PGPKeyPair;
|
|
||||||
public synthetic fun removeKey (Ldev/msfjarvis/aps/crypto/KeyPair;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
|
|
||||||
public fun removeKey (Ldev/msfjarvis/aps/crypto/PGPKeyPair;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
|
|
||||||
}
|
|
||||||
|
|
||||||
public final class dev/msfjarvis/aps/crypto/PGPKeyManager$Companion {
|
|
||||||
public final fun makeKey (Ljava/lang/String;)Ldev/msfjarvis/aps/crypto/PGPKeyPair;
|
|
||||||
}
|
|
||||||
|
|
||||||
public final class dev/msfjarvis/aps/crypto/PGPKeyPair : dev/msfjarvis/aps/crypto/KeyPair {
|
|
||||||
public fun <init> (Lorg/bouncycastle/openpgp/PGPSecretKey;)V
|
|
||||||
public fun getKeyId ()Ljava/lang/String;
|
|
||||||
public fun getPrivateKey ()[B
|
|
||||||
public fun getPublicKey ()[B
|
|
||||||
}
|
|
||||||
|
|
||||||
public final class dev/msfjarvis/aps/crypto/PGPainlessCryptoHandler : dev/msfjarvis/aps/crypto/CryptoHandler {
|
|
||||||
public fun <init> ()V
|
|
||||||
public fun canHandle (Ljava/lang/String;)Z
|
|
||||||
public fun decrypt (Ljava/lang/String;Ljava/lang/String;Ljava/io/InputStream;Ljava/io/OutputStream;)V
|
|
||||||
public fun encrypt (Ljava/util/List;Ljava/io/InputStream;Ljava/io/OutputStream;)V
|
|
||||||
}
|
|
||||||
|
|
|
@ -1,35 +0,0 @@
|
||||||
public final class dev/msfjarvis/aps/data/passfile/PasswordEntry {
|
|
||||||
public fun <init> (Ldev/msfjarvis/aps/util/time/UserClock;Ldev/msfjarvis/aps/util/totp/TotpFinder;Ldev/msfjarvis/aps/util/coroutines/DispatcherProvider;Lkotlinx/coroutines/CoroutineScope;[B)V
|
|
||||||
public final fun getExtraContent ()Ljava/util/Map;
|
|
||||||
public final fun getExtraContentString ()Ljava/lang/String;
|
|
||||||
public final fun getExtraContentWithoutAuthData ()Ljava/lang/String;
|
|
||||||
public final fun getPassword ()Ljava/lang/String;
|
|
||||||
public final fun getTotp ()Lkotlinx/coroutines/flow/StateFlow;
|
|
||||||
public final fun getUsername ()Ljava/lang/String;
|
|
||||||
public final fun hasTotp ()Z
|
|
||||||
}
|
|
||||||
|
|
||||||
public abstract interface class dev/msfjarvis/aps/data/passfile/PasswordEntry$Factory {
|
|
||||||
public abstract fun create (Lkotlinx/coroutines/CoroutineScope;[B)Ldev/msfjarvis/aps/data/passfile/PasswordEntry;
|
|
||||||
}
|
|
||||||
|
|
||||||
public class dev/msfjarvis/aps/util/time/UserClock : java/time/Clock {
|
|
||||||
public fun <init> ()V
|
|
||||||
public fun getZone ()Ljava/time/ZoneId;
|
|
||||||
public fun instant ()Ljava/time/Instant;
|
|
||||||
public fun withZone (Ljava/time/ZoneId;)Ljava/time/Clock;
|
|
||||||
}
|
|
||||||
|
|
||||||
public abstract interface class dev/msfjarvis/aps/util/totp/TotpFinder {
|
|
||||||
public static final field Companion Ldev/msfjarvis/aps/util/totp/TotpFinder$Companion;
|
|
||||||
public abstract fun findAlgorithm (Ljava/lang/String;)Ljava/lang/String;
|
|
||||||
public abstract fun findDigits (Ljava/lang/String;)Ljava/lang/String;
|
|
||||||
public abstract fun findIssuer (Ljava/lang/String;)Ljava/lang/String;
|
|
||||||
public abstract fun findPeriod (Ljava/lang/String;)J
|
|
||||||
public abstract fun findSecret (Ljava/lang/String;)Ljava/lang/String;
|
|
||||||
}
|
|
||||||
|
|
||||||
public final class dev/msfjarvis/aps/util/totp/TotpFinder$Companion {
|
|
||||||
public final fun getTOTP_FIELDS ()[Ljava/lang/String;
|
|
||||||
}
|
|
||||||
|
|
|
@ -1,16 +0,0 @@
|
||||||
public final class dev/msfjarvis/aps/passgen/diceware/DicewarePassphraseGenerator {
|
|
||||||
public static final field DIGITS I
|
|
||||||
public fun <init> (Ldev/msfjarvis/aps/passgen/diceware/Die;Ljava/io/InputStream;)V
|
|
||||||
public final fun generatePassphrase (IC)Ljava/lang/String;
|
|
||||||
}
|
|
||||||
|
|
||||||
public final class dev/msfjarvis/aps/passgen/diceware/Die {
|
|
||||||
public fun <init> (ILdev/msfjarvis/aps/passgen/diceware/RandomIntGenerator;)V
|
|
||||||
public final fun roll ()I
|
|
||||||
public final fun rollMultiple (I)I
|
|
||||||
}
|
|
||||||
|
|
||||||
public abstract interface class dev/msfjarvis/aps/passgen/diceware/RandomIntGenerator {
|
|
||||||
public abstract fun get (Lkotlin/ranges/IntRange;)I
|
|
||||||
}
|
|
||||||
|
|
Loading…
Reference in a new issue