secant-android-wallet/gradle.properties

209 lines
9.1 KiB
Properties
Raw Permalink Normal View History

# Speed up builds. Keep these flags here for quick debugging of issues.
2022-02-04 04:11:38 -08:00
org.gradle.caching=true
2022-07-18 07:44:58 -07:00
org.gradle.configureondemand=false
# We use increased amount of heap size here to bypass the OOM exception while building the project with ./gradlew
# build as described in https://github.com/Electric-Coin-Company/kotlin-bip39/issues/201
org.gradle.jvmargs=-Xmx4g -XX:MaxMetaspaceSize=2g
2022-07-18 07:44:58 -07:00
org.gradle.parallel=true
org.gradle.vfs.watch=true
kotlin.mpp.stability.nowarn=true
android.builder.sdkDownload=true
android.nonTransitiveRClass=true
android.suppressUnsupportedCompileSdk=33
android.useAndroidX=true
# Enable Kotlin metadata version check for script compilation
org.gradle.kotlin.dsl.skipMetadataVersionCheck=false
2021-09-22 09:37:15 -07:00
# Kotlin compiler warnings can be considered errors, failing the build.
ZCASH_IS_TREAT_WARNINGS_AS_ERRORS=true
2021-09-22 09:37:15 -07:00
# Optionally configure coverage for Kotlin modules (e.g. with Kover)
IS_KOTLIN_TEST_COVERAGE_ENABLED=true
# Optionally configure Android instumentation test coverage.
# The app module will crash at launch when coverage is enabled, so coverage is only enabled explicitly for tests.
# generation of instrumentation coverage is flaky, particularly when running ui-lib:connectedCheck
# TODO: [#705] Instrumentation coverage generation fails when run locally
# TODO: [#705] https://github.com/Electric-Coin-Company/zashi-android/issues/705
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.
2021-12-09 12:21:30 -08:00
IS_USE_TEST_ORCHESTRATOR=false
# Optionally enable crashes for strict mode violations in debug builds.
# It is disabled by default, because it can be annoying when debugging. Gets turned on by CI jobs that need it.
IS_CRASH_ON_STRICT_MODE_VIOLATION=false
2023-02-20 08:22:33 -08:00
IS_ENABLE_COMPOSE_COMPILER_METRICS=true
IS_ENABLE_COMPOSE_COMPILER_REPORTS=true
2022-05-24 06:39:56 -07:00
# 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)
2022-01-26 12:13:19 -08:00
ZCASH_FIREBASE_TEST_LAB_API_KEY_PATH=
2022-05-24 06:39:56 -07:00
ZCASH_FIREBASE_TEST_LAB_PROJECT=
2022-01-26 12:13:19 -08:00
# Optionally disable minification
IS_MINIFY_ENABLED=true
# Optionally change the NDK debug symbols generation level
# Supported values are:
# - none (default, no native debug metadata will be packaged)
# - symbol_table (only the symbol tables will be packaged)
# - full (the debug info and symbol tables will be packaged)
# The result will be placed in app/build/outputs/native-debug-symbols/variant-name/native-debug-symbols.zip
NDK_DEBUG_SYMBOL_LEVEL=symbol_table
# If ZCASH_GOOGLE_PLAY_SERVICE_KEY_FILE_PATH is set and the deployment task is triggered, then
# VERSION_CODE is effectively ignored. VERSION_NAME is suffixed with the version code.
# If not using automated Google Play deployment, then these serve as the actual version numbers.
ZCASH_VERSION_CODE=1
ZCASH_VERSION_NAME=1.0
# Set these fields, as you need them (e.g. with values "Zcash X" and "co.electriccoin.zcash.x")
# to distinguish a different release build that can be installed alongside the official version
2023-02-21 05:41:08 -08:00
# available on Google Play. This is useful for testing, or for a forked version of the app.
2023-08-03 02:46:55 -07:00
ZCASH_RELEASE_APP_NAME=Zashi
ZCASH_RELEASE_PACKAGE_NAME=co.electriccoin.zcash
2023-02-21 05:41:08 -08:00
ZCASH_DEBUG_APP_NAME_SUFFIX=" (D)"
2023-08-04 06:34:58 -07:00
ZCASH_SUPPORT_EMAIL_ADDRESS=support@electriccoin.co
# Recommended protection of screens with sensitive data.
# It is enabled by default to protect the developers from revealing their wallet secrets by mistake.
IS_SECURE_SCREEN_PROTECTION_ACTIVE=true
# Forcibly turn on or off the UI dark mode support. If enabled, then the device's dark mode system setting value is
# applied.
IS_DARK_MODE_ENABLED=false
# Set whether the screen rotation is enabled or the screen orientation is locked in the portrait mode.
IS_SCREEN_ROTATION_ENABLED=false
# 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=
[#599] Macrobenchmark test module * Temporary enable FTL test * Enable emulator.wft tests for ui-integration-test module on CI * Rebase onto main * Test Fladle configuration for ui-integration-test module * Fix Fladle for ui-integration-test module * Rename ui-integration-test module flade configuration * Disable again FTL action from PRs * Clear support for FTL from ui-integration-test module * Refactor the emulator.wtf support across our modules. * [#599] Macrobenchmark test module - Created new dedicated macrobenchmark test module - Updated related Architecture and Setup documentation - Connected to app module - New benchmark build type - Related run configuration above custom Gradle task - Basic startup benchmark test included * Benchmark build variant simplification * Run benchmarking simplification * Documentation update. * New property IS_SIGN_RELEASE_BUILD_WITH_DEBUG_KEY - It enables signing the release build with debug key configuration. Default value is false. - First, we check if we can sign it with release configs, otherwise with debug. - Documentation updated. * Benchmarking documentation update * Adds support for Android SDK 32 and 33 - Bumped benchmark library to the latest alpha version - Which results in a need of adding profile-installer library in target module (app) - Now we're able to run benchmarking on Android SDK level 29 and higher (i.e. latest levels included) - Updated related documentation * Enables benchmarking for emulators - I've decided to support emulator devices with our benchmark test module at the end. Documentation and code comments explain to a user that the results may not be the same as on a real physical device. But until we have it set up in CI, we can benefit from having it set up like this.
2022-10-27 03:51:24 -07:00
# Switch this property to true only if you need to sign the release build with a debug key. It can
# be useful, for example, for running benchmark tests against a release build of the app signed with
# the default debug key configuration.
IS_SIGN_RELEASE_BUILD_WITH_DEBUG_KEY=false
# Switch this property to true only if you need the release build to be debuggable. It can be helpful, for example,
# for logging or debugging minified release app build.
IS_RELEASE_BUILD_DEBUGGABLE=false
[#599] Macrobenchmark test module * Temporary enable FTL test * Enable emulator.wft tests for ui-integration-test module on CI * Rebase onto main * Test Fladle configuration for ui-integration-test module * Fix Fladle for ui-integration-test module * Rename ui-integration-test module flade configuration * Disable again FTL action from PRs * Clear support for FTL from ui-integration-test module * Refactor the emulator.wtf support across our modules. * [#599] Macrobenchmark test module - Created new dedicated macrobenchmark test module - Updated related Architecture and Setup documentation - Connected to app module - New benchmark build type - Related run configuration above custom Gradle task - Basic startup benchmark test included * Benchmark build variant simplification * Run benchmarking simplification * Documentation update. * New property IS_SIGN_RELEASE_BUILD_WITH_DEBUG_KEY - It enables signing the release build with debug key configuration. Default value is false. - First, we check if we can sign it with release configs, otherwise with debug. - Documentation updated. * Benchmarking documentation update * Adds support for Android SDK 32 and 33 - Bumped benchmark library to the latest alpha version - Which results in a need of adding profile-installer library in target module (app) - Now we're able to run benchmarking on Android SDK level 29 and higher (i.e. latest levels included) - Updated related documentation * Enables benchmarking for emulators - I've decided to support emulator devices with our benchmark test module at the end. Documentation and code comments explain to a user that the results may not be the same as on a real physical device. But until we have it set up in CI, we can benefit from having it set up like this.
2022-10-27 03:51:24 -07:00
# Set the Google Play Service Account email address to enable deployment
# Note that this property is not currently used due to #1033
# TODO [#1033]: Use token-based authorization on Google Play for automated deployment
# TODO [#1033]: https://github.com/Electric-Coin-Company/zashi-android/issues/1033
ZCASH_GOOGLE_PLAY_SERVICE_ACCOUNT=
# Also, set the Google Play Service Key path to enable deployment. It's a path to the private key file (only used for
# Service Account auth).
# Note that this property is not currently used due to #1033
# TODO [#1033]: Use token-based authorization on Google Play for automated deployment
# TODO [#1033]: https://github.com/Electric-Coin-Company/zashi-android/issues/1033
ZCASH_GOOGLE_PLAY_SERVICE_KEY_FILE_PATH=
# Set the Google Play Service Account key to authorize on Google Play
ZCASH_GOOGLE_PLAY_SERVICE_ACCOUNT_KEY=
# Set the Google Play Publisher API key to authorize the publisher on Google Play API
ZCASH_GOOGLE_PLAY_PUBLISHER_API_KEY=
# Can be one of {internal, alpha}. There are more of them {beta, production}, which are not supported for security
# reasons. Internal will deploy into the Internal and Alpha into the Closed testing tracks on Google Play.
ZCASH_GOOGLE_PLAY_DEPLOY_TRACK=internal
# Can be one of {draft, completed}.
# Draft can be used to generate a version number for the next release, but does not ultimately create a release on
# Google Play. Completed commits the build on Google Play, creating a new release.
ZCASH_GOOGLE_PLAY_DEPLOY_STATUS=draft
ZCASH_EMULATOR_WTF_API_KEY=
# Optional absolute path to a Zcash SDK checkout.
# When blank, it pulls the SDK from Maven.
# When set, it uses the path for a Gradle included build. Path can either be absolute or relative to the root of this app's Gradle project.
SDK_INCLUDED_BUILD_PATH=
2022-06-13 11:14:14 -07:00
# When blank, it pulls the BIP-39 library from Maven.
# When set, it uses the path for a Gradle included build. Path can either be absolute or relative to the root of this app's Gradle project.
BIP_39_INCLUDED_BUILD_PATH=
# Versions
ANDROID_MIN_SDK_VERSION=27
2022-08-25 13:21:03 -07:00
ANDROID_TARGET_SDK_VERSION=33
ANDROID_COMPILE_SDK_VERSION=34
ANDROID_NDK_VERSION=23.0.7599858
ANDROID_GRADLE_PLUGIN_VERSION=8.3.0
DETEKT_VERSION=1.23.6
DETEKT_COMPOSE_RULES_VERSION=0.3.15
EMULATOR_WTF_GRADLE_PLUGIN_VERSION=0.16.2
FIREBASE_CRASHLYTICS_BUILD_TOOLS_VERSION=2.9.9
FLANK_VERSION=23.10.1
2022-05-31 11:52:49 -07:00
FULLADLE_VERSION=0.17.4
GOOGLE_PLAY_SERVICES_GRADLE_PLUGIN_VERSION=4.4.1
GRADLE_VERSIONS_PLUGIN_VERSION=0.51.0
2023-03-08 04:16:41 -08:00
JGIT_VERSION=6.4.0.202211300538-r
KTLINT_VERSION=1.2.1
ACCOMPANIST_PERMISSIONS_VERSION=0.34.0
ANDROIDX_ACTIVITY_VERSION=1.8.2
ANDROIDX_ANNOTATION_VERSION=1.7.1
ANDROIDX_APPCOMPAT_VERSION=1.6.1
ANDROIDX_CAMERA_VERSION=1.3.2
ANDROIDX_COMPOSE_COMPILER_VERSION=1.5.11
ANDROIDX_COMPOSE_MATERIAL3_VERSION=1.2.1
ANDROIDX_COMPOSE_MATERIAL_ICONS_VERSION=1.6.5
ANDROIDX_COMPOSE_VERSION=1.6.5
ANDROIDX_CONSTRAINTLAYOUT_VERSION=1.0.1
ANDROIDX_CORE_VERSION=1.12.0
2023-01-17 11:13:46 -08:00
ANDROIDX_ESPRESSO_VERSION=3.5.1
ANDROIDX_LIFECYCLE_VERSION=2.7.0
ANDROIDX_NAVIGATION_COMPOSE_VERSION=2.7.7
2023-03-22 12:05:19 -07:00
ANDROIDX_PROFILE_INSTALLER_VERSION=1.3.1
ANDROIDX_SECURITY_CRYPTO_VERSION=1.1.0-alpha06
ANDROIDX_SPLASH_SCREEN_VERSION=1.0.1
2023-01-17 11:13:46 -08:00
ANDROIDX_TEST_JUNIT_VERSION=1.1.5
ANDROIDX_TEST_ORCHESTRATOR_VERSION=1.4.2
ANDROIDX_TEST_CORE_VERSION=1.5.0
ANDROIDX_TEST_MACROBENCHMARK_VERSION=1.2.3
2023-01-17 11:13:46 -08:00
ANDROIDX_TEST_RUNNER_VERSION=1.5.2
[#653] Refactor Backup flow screens * [#653] Move copy to buffer action - Trigger this action after seed phrase panel click and confirm via dialog window - Added basic ui tests - Added also dialog integration test - Added related strings * Revert "[#653] Move copy to buffer action" This reverts commit 813eab00b747a779be5ef652745002f65c04572c. * [#150] Refactoring the Backup flow to use Compose Scaffold * Fix Backup flow screenshot test - Removed scroll actions above nodes, which are no longer part of scroll behaviour - bottom navigation buttons are now part of Compose Scaffold component. * Added scroll actions in screenshot test of Profile screen - After tested the whole app with screenshot test on smaller screen device 4WVGA Nexus S * Remove unnecessary screenshot test click action - This click action on the Profile screen title seems to be unnecessary for the test and creates confusion * ScreenshotTest module auto components init - Changed the way we auto-initialize components in ScreenshotTest module - Now we use androidx-startup library for it - And we disabled the default way * Add system back button navigation support * Enable scrolling for Backup Test screen * Fix Screenshot test on small screen in landscape - Tested and fixed cases in which our screenshot test wasn't successful - Tested on 4 WVGA Nexus S in landscpae mode * Code clean * Address review comments + stages refactoring - Flattened BackupStage sealed class. Test and Failure are now regular stages. - Introduced CheckSeed stage, instead of reusing Seed phrase for re-viewing. - Simplified BackupView and custom Saver implementations. - List of possible screen state stages is now lazy loaded value, instead of method. - Some of the stages now override stage moving methods to enhance Backup screen state machine, as it's not linear. - Existing tests updated to align with the new implementation of stages. * Remove `run` block * Rename CheckSeed -> ReviewSeed Check might imply to another reader of the code that there is some going back to the test. I went with the word Review which seems to better convey how that screen is passive for the user. * Simplify list construction This should have better performance. * Crash instead of allowing back navigation * Add documentation * Fix initialization error * Add non-localized string tag Co-authored-by: Carter Jernigan <git@carterjernigan.com>
2022-11-22 23:17:06 -08:00
ANDROIDX_STARTUP_VERSION=1.1.1
ANDROIDX_TEST_SERVICE_VERSION=1.4.2
ANDROIDX_UI_AUTOMATOR_VERSION=2.3.0
ANDROIDX_WORK_MANAGER_VERSION=2.9.0
CORE_LIBRARY_DESUGARING_VERSION=2.0.4
FIREBASE_BOM_VERSION_MATCHER=32.8.1
GOOGLE_AUTH_LIB_JAVA_VERSION=1.18.0
JACOCO_VERSION=0.8.12
KOTLIN_VERSION=1.9.23
KOTLINX_COROUTINES_VERSION=1.8.0
KOTLINX_DATETIME_VERSION=0.5.0
KOTLINX_IMMUTABLE_COLLECTIONS_VERSION=0.3.7
KOTLINX_SERIALIZABLE_JSON_VERSION=1.6.3
KOVER_VERSION=0.7.3
PLAY_APP_UPDATE_VERSION=2.1.0
PLAY_APP_UPDATE_KTX_VERSION=2.1.0
PLAY_PUBLISHER_API_VERSION=v3-rev20231030-2.0.0
ZCASH_ANDROID_WALLET_PLUGINS_VERSION=1.0.0
ZXING_VERSION=3.5.3
ZCASH_BIP39_VERSION=1.0.8
# WARNING: Ensure a non-snapshot version is used before releasing to production
ZCASH_SDK_VERSION=2.1.1
2021-11-10 08:38:20 -08:00
# Toolchain is the Java version used to build the application, which is separate from the
# Java version used to run the application.
JVM_TOOLCHAIN=17
2021-11-10 08:38:20 -08:00
# This shouldn't be changed, as Android doesn't support targets beyond Java 8
2023-01-17 13:26:56 -08:00
KOTLIN_JVM_TARGET=8
ANDROID_JVM_TARGET=1.8