# Speed up builds. Keep these flags here for quick debugging of issues. org.gradle.caching=true org.gradle.configureondemand=false org.gradle.jvmargs=-Xmx3g -XX:MaxMetaspaceSize=1024m org.gradle.parallel=true org.gradle.vfs.watch=true android.useAndroidX=true android.builder.sdkDownload=true android.nonTransitiveRClass=true # Leave blank for default Gradle behavior GRADLE_BUILD_CACHE_DAYS= # Publishing ZCASH_MAVEN_PUBLISH_SNAPSHOT_URL=https://oss.sonatype.org/content/repositories/snapshots/ ZCASH_MAVEN_PUBLISH_RELEASE_URL=https://oss.sonatype.org/service/local/staging/deploy/maven2/ ## Configure these with command line arguments (`-PZCASH_MAVEN_PUBLISH_USERNAME=`), environment variables (`ORG_GRADLE_PROJECT_ZCASH_MAVEN_PUBLISH_USERNAME`), or global ~/.gradle/gradle.properties ZCASH_MAVEN_PUBLISH_USERNAME= ZCASH_MAVEN_PUBLISH_PASSWORD= # GPG key is only required if IS_SNAPSHOT is false # GPG key is ASCII armored without a password, then Base64 encoded to escape the newlines ZCASH_ASCII_GPG_KEY= # Configures whether release is an unstable snapshot, therefore published to the snapshot repository. IS_SNAPSHOT=true LIBRARY_VERSION=2.1.1 # Kotlin compiler warnings can be considered errors, failing the build. ZCASH_IS_TREAT_WARNINGS_AS_ERRORS=true # Optionally configure code coverage, as historically Jacoco has at times been buggy with respect to new Kotlin versions IS_ANDROID_INSTRUMENTATION_TEST_COVERAGE_ENABLED=false # Optionally configure test orchestrator. # It is disabled by default, because it causes tests to take about 2x longer to run. IS_USE_TEST_ORCHESTRATOR=false # Either provide a path to a Firebase Test Lab service key (best for CI) # OR # login with `./gradlew flankAuth` and provide the project name (best for local development) # Note: make sure you have Editor role, at least in the Firebase project, to be able to authenticate successfully. ZCASH_FIREBASE_TEST_LAB_API_KEY_PATH= ZCASH_FIREBASE_TEST_LAB_PROJECT= ZCASH_EMULATOR_WTF_API_KEY= # Optionally configure minification # For now, don't minify the SDK but do minify the app. Minifying the app helps us test # the proguard-consumer rules in the SDK. IS_MINIFY_SDK_ENABLED=false IS_MINIFY_APP_ENABLED=true # Set keystore details to enable build signing. Typically these # are overridden via ~/.gradle/gradle.properties to allow secure injection. # Debug keystore is useful if using Google Maps or Firebase, which require API keys to be linked # to a signing key. Without a debug keystore, the default Android debug keystore will be used. # Without a release signing configuration, the release output will not be signed. ZCASH_DEBUG_KEYSTORE_PATH= ZCASH_RELEASE_KEYSTORE_PATH= ZCASH_RELEASE_KEYSTORE_PASSWORD= ZCASH_RELEASE_KEY_ALIAS= ZCASH_RELEASE_KEY_ALIAS_PASSWORD= # Switch this property to true only if you need to sign the release build with a debug key for local development. IS_SIGN_RELEASE_BUILD_WITH_DEBUG_KEY=false # Make the benchmarking target app debuggable. This is supposed to be used only for debugging while benchmarking. # To get more realistic results, keep it turned off, please. The debuggable option drastically reduces runtime # performance in order to support debugging features. Debuggable affects execution speed in ways that mean benchmark # improvements might not carry over to a real user experience (or even regress release performance). IS_DEBUGGABLE_WHILE_BENCHMARKING=false # Versions ANDROID_MIN_SDK_VERSION=27 ANDROID_TARGET_SDK_VERSION=33 ANDROID_COMPILE_SDK_VERSION=34 # When changing this, be sure to update the following places: # - .github/actions/setup/action.yml # - Clang major version in backend-lib/build.rs ANDROID_NDK_VERSION=26.1.10909125 ANDROID_GRADLE_PLUGIN_VERSION=8.3.0 DETEKT_VERSION=1.23.6 DETEKT_COMPOSE_RULES_VERSION=0.3.15 DOKKA_VERSION=1.9.20 EMULATOR_WTF_GRADLE_PLUGIN_VERSION=0.16.2 FLANK_VERSION=23.10.1 # When changing this, be sure to change build-conventions/gradle.properties#FOOJAY_TOOLCHAIN_RESOLVER_VERSION too FOOJAY_TOOLCHAIN_RESOLVER_VERSION=0.8.0 FULLADLE_VERSION=0.17.4 GRADLE_VERSIONS_PLUGIN_VERSION=0.51.0 KSP_VERSION=1.9.23-1.0.20 KTLINT_VERSION=1.2.1 PROTOBUF_GRADLE_PLUGIN_VERSION=0.9.4 RUST_GRADLE_PLUGIN_VERSION=0.9.3 ANDROIDX_ACTIVITY_VERSION=1.8.2 ANDROIDX_ANNOTATION_VERSION=1.7.1 ANDROIDX_APPCOMPAT_VERSION=1.6.1 ANDROIDX_COMPOSE_COMPILER_VERSION=1.5.11 ANDROIDX_COMPOSE_MATERIAL3_VERSION=1.2.1 ANDROIDX_COMPOSE_VERSION=1.6.5 ANDROIDX_COMPOSE_MATERIAL_ICONS_VERSION=1.6.5 ANDROIDX_CONSTRAINT_LAYOUT_VERSION=2.1.4 ANDROIDX_CORE_VERSION=1.12.0 ANDROIDX_DATABASE_VERSION=2.4.0 ANDROIDX_ESPRESSO_VERSION=3.5.1 ANDROIDX_LIFECYCLE_VERSION=2.7.0 ANDROIDX_MULTIDEX_VERSION=2.0.1 ANDROIDX_NAVIGATION_VERSION=2.7.7 ANDROIDX_NAVIGATION_COMPOSE_VERSION=2.7.7 ANDROIDX_NAVIGATION_FRAGMENT_VERSION=2.7.7 ANDROIDX_PROFILE_INSTALLER_VERSION=1.3.1 ANDROIDX_SECURITY_CRYPTO_VERSION=1.1.0-alpha06 ANDROIDX_TEST_JUNIT_VERSION=1.1.5 ANDROIDX_TEST_MACROBENCHMARK_VERSION=1.2.3 ANDROIDX_TEST_ORCHESTRATOR_VERSION=1.4.2 ANDROIDX_TEST_CORE_VERSION=1.5.0 ANDROIDX_TEST_RUNNER_VERSION=1.5.2 ANDROIDX_TRACING_VERSION=1.3.0-alpha02 ANDROIDX_UI_AUTOMATOR_VERSION=2.3.0 CORE_LIBRARY_DESUGARING_VERSION=2.0.4 GOOGLE_MATERIAL_VERSION=1.11.0 GRPC_KOTLIN_VERSION=1.4.1 GRPC_VERSION=1.63.0 GSON_VERSION=2.10.1 JACOCO_VERSION=0.8.12 JAVAX_ANNOTATION_VERSION=1.3.2 JUNIT_VERSION=5.10.2 KOTLINX_COROUTINES_VERSION=1.8.0 KOTLINX_DATETIME_VERSION=0.5.0 KOTLINX_IMMUTABLE_COLLECTIONS_VERSION=0.3.7 KOTLIN_VERSION=1.9.23 MOCKITO_VERSION=5.11.0 PROTOC_VERSION=4.26.1 ZCASH_WALLET_PLUGINS_VERSION=1.0.1 BIP39_VERSION=1.0.8 # This shouldn't be changed, as Android doesn't support targets beyond Java 8 ANDROID_JVM_TARGET=1.8