Commit Graph

189 Commits

Author SHA1 Message Date
Carter Jernigan 2ab6d038ed
[#742] Prevent multiple synchronizer instances
Co-authored-by: Honza <rychnovsky.honza@gmail.com>
2022-12-14 10:33:18 -05:00
Honza Rychnovsky 97c0628798
[#789] Benchmarking Demo-app
* [#789] Add Benchmark module to Demo-app

* Code cleanup

* Opti-in experimental coroutines api in tests

* Add Testing documentation

* Documentation update + ktlint

* Check screen on and keyguard unlocked in each test

* Introduce UiAutomator extensions

* Enhance BenchmarkTrace events definition

* Remove unnecessary mutex

* Change blocks range

* Increase sync blockchain timeout

- To always fit in the Balances screen timeout for the selected blocks range

* Remove unnecessary fun suspend modifiers

* Macrobenchmark lib bump to 1.2.0-alpha8

* Remove duplicate label attr in app/manifest

* File and link benchmark on CI task

* Add proguard keep rules

* Documentation update
2022-12-13 14:25:09 +01:00
Carter Jernigan b24e4fc2bb [#708] gRPC 1.51.0 2022-12-03 09:00:54 -05:00
Carter Jernigan b4ffff9a78
[#791] Flank 22.10.0
* [#791] Flank 22.10.0

This should resolve issues with `flankAuth` task

* Update documentation

Co-authored-by: Honza <rychnovsky.honza@gmail.com>
2022-11-24 14:54:41 +01:00
Carter Jernigan b1f38ab912
[#786] Simplify signing during development 2022-11-22 09:34:09 +01:00
Carter Jernigan ee99b36798
Merge branch 'main' into feature/zip-316-and-latest-upstream 2022-11-08 10:13:43 -05:00
Carter Jernigan d1e9b28c91 [#771] Update documentation for SDK 1.10.0 2022-11-08 09:32:07 -05:00
Carter Jernigan b0ec6229f6
Bump version to 1.9.0-beta05 2022-11-04 07:13:30 -04:00
Carter Jernigan 4c2807aefd
[#705] Roomoval
The Android and Rust code have previously managed joint custody of the derived data database.  With more complex migrations now required, we need to make the Android side read-only.  To achieve that, the Android side will remove Room and instead rely on more primitive SQLite APIs for read-only access.

As part of implementing this change, database management throughout the SDK is being refactored.

There will be multiple representations of the data:
 - Database representation (and some Entity representations in the places that Room hasn’t been removed yet).  These representations are not as type safe and don’t match Kotlin best practices in all cases.
 - Once #615 is implemented there will also be network representations
 - Type safe models, which often appear in the public API  The Database and Network representations will be converted to and from the type safe model representation.
2022-10-19 16:52:54 -04:00
Alex 9fe7fc9935
[#726] Kotlin 1.7.20 (#731) 2022-10-19 12:18:01 +02:00
Honza Rychnovsky 9614a63f89
[#706] Fix crashes identified by robo tests
* [#706] Fix crashes identified by robo tests

- Removed unused xml layouts
- Fixed several xml attributes to be backward compatible

* Reduce number of unnecessary logs in console

* Bump min Android SDK version from 19 to 21

* Bump demo-app minSdk to version 21 too

* Update changelog

Co-authored-by: Carter Jernigan <git@carterjernigan.com>
2022-10-04 16:27:09 +02:00
Carter Jernigan 2d2e838fed Bump version to 1.9.0-beta04 2022-09-26 08:11:42 -04:00
Carter Jernigan 0873ae73e1 [#711] Android Gradle Plugin 7.3 2022-09-22 16:06:00 -04:00
Alex 2ed60a37c8
[#695] ktlint 0.47.1
* 695 ktlint version update (4.7.1)
2022-09-20 14:25:56 +02:00
Carter Jernigan 251bb4dbfc
[#697] Fix running robo test (#698) 2022-08-31 11:17:47 -04:00
Honza Rychnovsky 1fae5beab6
[#509] Remove OkHttp and Okio dependencies
* [#509] Remove OkHttp and Okio dependencies
- Okio -> Java NIO anf OkHttp -> HttpURLConnection in SaplingParamTool class
- Both replaced also in the test packages
- Removed dependencies to the replaced components
- Again switched a few assertions from JUnit to kotlin.test
- Created readLinesInFlow() function which is now reused in few places and runs without OkHttp
- Added subsequent TODOs to code base
- Wrapped to withContext to move it to an IO thread.
- Added use function on the stream and close() at the end of the channels use.
Co-authored-by: Carter Jernigan <git@carterjernigan.com>
2022-08-25 14:36:57 +02:00
Honza Rychnovsky 150778f008
[#367] Fix Kotlin compiler warnings
* Fix missing room schema export directory
* Fix returned unused fields from cursor
* Fix missing db column index
* Improved TODO. Added suppress warning
* Changed parameters name to correspond to their supertype
* Changed type to Kotlin variant
* Use priority parameter
* Unified parameter names
* Suppress unchecked type warning
* Removed inline function
* Suppress obsolete coroutine warnings
* Improve previous commit
* Fix unnecessary safe call warning
* Remove unused parameter
* Unreachable code
* toLowerCase where possible
* Changed parameter name
* Suppress several "unused" warnings
* Fixed fromHtml() deprecation
* Suppress intentionally unused parameter warning
* Remove redundant initializer
* Remove inline function
* Suppress intentionally used deprecated code
* Unreachable code
* Suppress obsolete coroutine warnings
* Suppress intentionally unused parameter
* Remove unused expression
* Supertype parameter name
* Warnings of GetBlockRangeFragment.kt
* Deprecated onActivityCreated
* Suppress obsolete coroutine/flow warnings
* Unnecessary null check
* Suppress intentionally unused parameter
* Suppress intentionally unused parameters
* Deprecated onActivityCreated
* Predetermined type
* ListUtxosFragment clean code
* Suppress intentionally unused parameter
* Lint checks warnings fix
* Add data db migration
* Enable treating Kotlin compiler warnings as errors
* Solve several darkside-test-lib tests warnings
* Solve several demo-app tests warnings
* Solve several sdk-lib tests warnings
* Ktlint check result fix
* Remove parentheses now that Synchronizer is not cast
* Remove wildcard imports for java.util
* Revert "Add data db migration"
* Revert "Fix missing db column index"
* Suppress missing indexes on data db entities

Co-authored-by: Carter Jernigan <git@carterjernigan.com>
2022-08-17 15:48:02 +02:00
Carter Jernigan 10d0652a8d
[#252] Replace third party publishing Gradle plugin
The third party plugin that we’ve used for publishing has introduced multiple breaking changes recently.

By migrating to more standard Gradle publishing APIs, the deployment process is more explicit for those unfamiliar with Gradle.  It also will simplify some upcoming changes to modularize this SDK project.
2022-08-16 08:53:23 -04:00
Honza Rychnovsky c721a5e24e
[#343] Store database files in no_backup folder
Co-authored-by: Carter Jernigan <git@carterjernigan.com>
2022-08-12 11:05:00 -04:00
Carter Jernigan bc0212f77c [#659] Detekt 1.21.0 2022-08-09 16:45:27 -04:00
Carter Jernigan 1cb63e590a [#641] bip-39 1.0.4 2022-08-05 08:11:58 -04:00
Carter Jernigan 2f1ae4b6f6 [#652] GRPC 1.48.1 2022-08-05 08:11:58 -04:00
Carter Jernigan 7050c73ea2 [#651] AGP 7.2.2 2022-08-05 08:11:58 -04:00
Carter Jernigan 9e3a1af23c Bump version to prepare for 1.9-beta01
This ensures that further commits to the main branch deploy snapshots under the 1.9 version
2022-07-29 11:00:53 -04:00
Carter Jernigan ecba4884b2 [#642] gRPC 1.8.0 2022-07-28 17:06:47 -04:00
Carter Jernigan 8ec216dac6 [#643] Protoc .21.4 2022-07-28 17:06:47 -04:00
Carter Jernigan b93965973d [#644] JUnit 5.9.0 2022-07-28 17:06:47 -04:00
Carter Jernigan 75ba753340 [#640] Room 2.4.3 2022-07-28 17:06:47 -04:00
Carter Jernigan 4a106c0498 [#603] Coroutines 1.6.4 2022-07-22 12:59:11 -04:00
Carter Jernigan 01a5963498 [#617] Kotlin 1.7.10 2022-07-22 12:59:11 -04:00
Carter Jernigan 3a0ded7113
[#608] Gradle 7.5 2022-07-18 07:07:58 -04:00
Carter Jernigan 3fda6da1ca Bump version to 1.8.0-beta01
This prepares for the upcoming development and deployment of snapshots for the 1.8 SDK.
2022-07-11 13:07:22 -04:00
Carter Jernigan 5ee0d519f0 [#598] Okio 3.2.0 2022-07-07 13:45:03 -04:00
Carter Jernigan 8f03eef46a [#599] Protoc 3.21.2 and gradle plugin 0.8.19 2022-07-07 13:45:03 -04:00
Carter Jernigan 1ac72feae3 [#572] Coroutines 1.6.3 2022-06-30 09:32:04 -04:00
Carter Jernigan 4f61a52b6e [#484] Kotlin 1.7.0 2022-06-30 09:32:04 -04:00
Carter Jernigan 3fa7a98fbf [#580] ktlint 0.46.1
Update baseline
2022-06-27 08:42:37 -04:00
Carter Jernigan 535567b42f [#579] Compile with Android API 33 2022-06-23 13:05:35 -04:00
Carter Jernigan 823e8387cb
[#477] Typesafe Zatoshi APIs for amounts 2022-06-21 19:34:42 -04:00
Carter Jernigan a5a07becd8
[#548] Configure testing with emulator.wtf 2022-06-21 07:57:04 -04:00
Carter Jernigan 17c09908a8 [#421] Maven Publish 0.20.0 2022-06-16 08:11:46 -04:00
Carter Jernigan 5ec79cc20d [#512] Android Gradle Plugin 7.2.1 2022-06-16 08:11:46 -04:00
Carter Jernigan 22d9cbecc0 [#560] Mockito 4.6.1 2022-06-15 19:43:26 -04:00
Carter Jernigan 99b985d9ba [#559] AndroidX Updates 2022-06-15 19:43:26 -04:00
Carter Jernigan 429e6e9738 [#553] OKHttp 4.10.0 2022-06-15 19:43:26 -04:00
Carter Jernigan ae58a99d48 [#556] Fulladle 0.17.4 2022-06-15 19:43:26 -04:00
Carter Jernigan 173b2a6d30 [#554] GRPC 1.47.0 2022-06-15 19:43:26 -04:00
Carter Jernigan 019ba55a1f [#552] Protoc 3.21.1 2022-06-15 19:43:26 -04:00
Carter Jernigan d1225c7a45 [#555] Coroutines 1.6.2 2022-06-15 19:43:26 -04:00
Carter Jernigan c1278e57b1 [#558] KSP 1.6.21-1.0.6 2022-06-15 19:43:26 -04:00
Carter Jernigan 6496d717b9 [#543] Align gradle properties for included builds 2022-06-07 07:07:30 -04:00
Honza Rychnovsky 8f59a207fb
[#539] SDK causes crash on emulators with x86_64 architecture
* [#539] SDK causes crash on emulators with x86_64 architecture
- NDK version reverted back to 22.1.7171670.
- Attached TODO with issue for future handling of the problem.
- Install specific Android NDK version.
- Update changelog.
Co-authored-by: Carter Jernigan <git@carterjernigan.com>
2022-06-03 14:38:38 +02:00
Carter Jernigan 18d82ed90c [#523] Prepare for next release 2022-06-03 07:02:41 -04:00
Carter Jernigan b52b9c4dd3 Bump to version 1.5.0-beta01
This prepares development for the next release, as snapshot deployments will be now versioned as 1.5.0-beta01
2022-05-10 15:39:04 -04:00
Carter Jernigan 21f67ef23a [#510] Rust Gradle Plugin 0.9.3
Also bump the NDK to 23.1.7779620.

The Rust Gradle plugin doesn’t appear to be compatible with NDK 24 yet.
2022-05-09 09:38:31 -04:00
Carter Jernigan 6e9853fc8d [#507] Mockito 4.5.1 2022-05-09 09:38:31 -04:00
Carter Jernigan c9a50032fc [#505] AndroidX Updates 2022-05-09 09:38:31 -04:00
Carter Jernigan 7d8182d5be [#476] GRPC 1.46.0 2022-05-09 09:38:31 -04:00
Carter Jernigan 78f85a4a9c [#492] Detekt 1.20.0 2022-04-29 15:33:53 -04:00
Carter Jernigan a9c1087fd5 [#500] Protoc 3.20.1 2022-04-29 15:33:53 -04:00
Carter Jernigan 0ef730c414 [#499] Okio 3.1.0 2022-04-29 15:33:53 -04:00
Carter Jernigan b2e66e6287 [#493] Kotlin 1.6.21 2022-04-29 15:33:53 -04:00
Carter Jernigan ad157bf2c1 [#489] KSP 1.6.20-1.0.5 2022-04-12 09:22:49 -04:00
Carter Jernigan 4ffee4f59c [#486] Jacoco 0.8.8 2022-04-12 09:22:49 -04:00
Carter Jernigan 6ef535e367 [#485] ktlint 0.45.2 2022-04-12 09:22:49 -04:00
Carter Jernigan df53fd14dc [#473] AGP 7.1.3 2022-04-12 09:22:49 -04:00
Carter Jernigan aba6800be7 [#464] Flank 22.03.0 2022-04-06 15:42:46 -04:00
Carter Jernigan e04d1da878 [#463] Coroutines 1.6.1 2022-04-06 15:42:46 -04:00
Carter Jernigan 9637ecfecc [#462] Guava 31.1 2022-04-06 15:42:46 -04:00
Carter Jernigan 748a10a999 [#459] Kotlin 1.6.20 2022-04-06 15:42:46 -04:00
Carter Jernigan 0ab443bb7e [#461] Mockito 4.4.0 2022-04-06 15:42:46 -04:00
Carter Jernigan 97579bfbd6 [#458] Androidx Updates 2022-04-06 15:42:46 -04:00
Carter Jernigan 3616ffbf6b [#422] GSON 2.9.0 2022-04-06 15:42:46 -04:00
Carter Jernigan 58f3d01112 [#460] protoc 3.20.0 2022-04-06 15:42:46 -04:00
Carter Jernigan 55fc1e5d6a [#456] GRPC 0.45.1 2022-04-06 15:42:46 -04:00
Carter Jernigan 24dedced4e [#457] ktlint 0.45.1 2022-04-06 15:42:46 -04:00
Carter Jernigan 02ca70e65f [#427] Fix JVM args to prevent OOM 2022-03-11 06:19:27 -05:00
Carter Jernigan 8cab95ee96 [#418] Room 2.4.2 2022-03-03 16:48:10 -05:00
Carter Jernigan f797cfef72 [#423] Rust Gradle plugin 0.9.2 2022-03-03 16:48:10 -05:00
Carter Jernigan 6b2002afbe [#419] KSP 1.6.10-1.0.4 2022-03-03 16:48:10 -05:00
Carter Jernigan bcfdd9ab21 [#413] ktlint 0.44.0 2022-03-03 16:48:10 -05:00
Carter Jernigan 0d2271c4bb [#420] GRPC 1.44.1 2022-03-03 16:48:10 -05:00
Carter Jernigan 848562b7de [#417] Android Gradle Plugin 7.1.2 2022-03-03 16:48:10 -05:00
Carter Jernigan b06d8040c1 Use organization developer identity 2022-02-18 09:39:11 -05:00
Carter Jernigan 94d4a37bb4 Explicitly set Maven group ID 2022-02-18 09:39:11 -05:00
Carter Jernigan 5e92e578cb [#405] Ktlint 0.43.2 2022-02-09 12:29:43 -05:00
Carter Jernigan ea15791c4a [#404] Protoc 3.19.4 2022-02-09 12:29:43 -05:00
Carter Jernigan dba6be030e [#400] Androidx Updates 2022-02-09 12:29:43 -05:00
Carter Jernigan 3a8dbd0498 [#402] Mockito 4.3.1 2022-02-09 12:29:43 -05:00
Carter Jernigan 01f4218180 [#401] GRPC 0.44.0 2022-02-09 12:29:43 -05:00
Carter Jernigan b88d08a0c1 [#371] Rust Gradle plugin 0.9.1 2022-02-09 12:29:43 -05:00
Carter Jernigan aae9361306 [#403] Gradle versions plugin 0.42.0 2022-02-09 12:29:43 -05:00
Carter Jernigan bf1b47cbbc [#391] Android Gradle Plugin 7.1.1 2022-02-09 12:29:43 -05:00
Carter Jernigan 1ab79286f4 [#374] Android Gradle Plugin 7.1 2022-02-02 14:22:55 -05:00
Carter Jernigan 7a84fa3e8f Bump version to 1.4.0-beta01
The bump to 1.3.0-beta20 happened in a separate branch off of master and will be tagged.
2022-01-28 12:18:29 -05:00
Carter Jernigan 3c575a497c Configure build with GitHub Actions
Also configure testing with Firebase Test Lab
2022-01-26 15:19:28 -05:00
Carter Jernigan 6c8ac20655 [#358] Snapshot publishing 2022-01-19 17:00:58 -05:00
Carter Jernigan 077e385855 [#357] Min API 19 2022-01-19 13:37:52 -05:00
Carter Jernigan 38fd51519b [#353] Gradle versions plugin 0.40.0 2022-01-06 06:59:40 -05:00
Carter Jernigan a6776cdcc9 [#349] Mockito 4.2.0 2022-01-06 06:59:40 -05:00