Commit Graph

1186 Commits

Author SHA1 Message Date
Honza 0d001495d5 Documentation update 2023-09-08 20:28:49 +02:00
Honza Rychnovský 899b487ee4 [#1219] Remove calculated sync progress
Closes #1219
2023-09-08 20:23:37 +02:00
Honza Rychnovský 3721b8b6c4 [#1225] Disable deprecated darkside tests
* [#1225] Disable deprecated darkside tests

- Closes #1225
2023-09-08 20:23:37 +02:00
Honza Rychnovský c6032b47bd [#1208][#1215] Pass proper `recoverUntil`
- Closes #1208
- CLoses #1215
2023-09-08 20:23:37 +02:00
Jack Grigg 9207dd0b58 Migrate to Rust version with bugfixes
This also reverts the prior change to `getBalance` / `getVerifiedBalance`
now that the fix for zcash/librustzcash#948 is present.
2023-09-08 20:22:40 +02:00
Honza Rychnovský 59ab627c82 [#1218] Adopt new getScanProgress API 2023-09-08 20:22:40 +02:00
Honza Rychnovský fc14082a1c [#1213] Remove `BlockTable` and its APIs
* [#1213] Remove `count()` from BlockTable API

* [#1213] Remove `firstScannedHeight()` from BlockTable API

* [#1213] Remove `findBlockHash()` from BlockTable

* [#1213] Remove `lastScannedHeight()` from BlockTable

* [#1213] Remove `BlockTable` entirely
2023-09-08 20:22:40 +02:00
Jack Grigg 14d854f96e rust: Return 0 from `getBalance` and `getVerifiedBalance` for unknown accounts
This works around zcash/librustzcash#948, where known accounts without
history are not reported in the `WalletSummary`. We assume that the
Kotlin side of the SDK does not call these FFI methods with unknown
accounts.
2023-09-08 20:19:51 +02:00
Honza Rychnovský 33a7a2000f [#1210] Eliminate LINEAR sync support 2023-09-08 20:19:51 +02:00
Jack Grigg 42cf9d6466 Migrate to Rust revision that exposes scanned heights 2023-09-08 20:19:51 +02:00
Honza 7b7275b5bd Migrate to latest Rust revision follow-up changes 2023-09-08 20:19:51 +02:00
Honza Rychnovský 9e334fd375 [#1109][#1206] Regular balance flows emission
* [#1206] Optimize SYNC_BATCH_SIZE

* [#1109] Regular balance flows emission
2023-09-08 20:19:51 +02:00
Jack Grigg 11d9529f2b Migrate to latest Rust revision
- Account birthdays
- Scan progress
- Bugfixes
2023-09-08 20:19:51 +02:00
Honza Rychnovský 648b31a555 [#1170] Regular transaction flow emitting
* [#1170] Regular transaction flow emitting

Although zcash/librustzcash#918 will provide information on when to trigger transaction polling, this partly solves the issue as well

* Update changelog
2023-09-08 20:19:51 +02:00
Honza 83ea5b55c3 Fix ktlint warning 2023-09-08 20:19:51 +02:00
Honza c1d917244a Update usage of SyncAlgorithm in Demo-app 2023-09-08 20:19:51 +02:00
Honza Rychnovský 10a7aa7f3f [#1180] Frequent SbS synchronization restarting
* [#1180] Frequent SbS synchronization restarting

- Processing blocks with SbS split into preparation and processing functions, which can be called repeatedly.
- Refactored other parts of the synchronization mechanism
- Closes #1180
- This also partly solves #1137

* Update .gitignore

* Update LINCENSE documentation

* [#1177] Checkpoints update

* Fix Ktlint warning
2023-09-08 20:19:51 +02:00
Honza f23aca38a6 Update getSuggestScanRangePriority fallback value 2023-09-08 20:19:51 +02:00
Jack Grigg 32069bea0a Migrate to Rust revision with scan queue initialization 2023-09-08 20:19:51 +02:00
Honza Rychnovský 0e40b3a807 [#1181] Stop update balance before updateChainTip 2023-09-08 20:19:51 +02:00
Honza Rychnovský 9795610bb9 [#1136] Tests for the new helper extensions
* Jni objects attribute constraint tests


* Extend continuity error test

* ScanRange model tests

* [#1174] Move model classes out of the CompactBlockProcessor

* [#1174] SbS: Move model classes out of the CompactBlockProcessor

* Move SyncingResult out of the processor

* Add issue link
2023-09-08 20:19:51 +02:00
Honza 7277a7ecca Fix ktlint warning 2023-09-08 20:19:51 +02:00
Jack Grigg abb98bd192 Migrate to Rust revision with scanning and spending fixes 2023-09-08 20:19:51 +02:00
Honza 61f618caf9 Remove OpenEndRange type entirely 2023-09-08 20:19:51 +02:00
Honza 700bd1fb59 Changelog update 2023-09-08 20:19:51 +02:00
Honza 6e7d2404dc Fix query db projection in getSaplingOutputIndices 2023-09-08 20:19:51 +02:00
Honza cc3129d0a5 Fix selectionArgs input type 2023-09-08 20:19:51 +02:00
Honza d1ef768b7a Minor formatting changes 2023-09-08 20:19:51 +02:00
Honza Rychnovský fd17e7ef0e [#1159] Update sync progress reporting
* [#1168] Checkpoints update

* [#1159] Updated sync progress reporting

* Increase test_robo_demo_app timeout

* Migrate to ClosedEndRange

It’s better to transform suggested ranges from OpenEndRange to ClosedRange as soon as possible to avoid its handling in the rest of the logic.

* Improve all batch count calculating

* Subsequent SbS sync algorithm renaming
2023-09-08 20:19:51 +02:00
Honza Rychnovský 91f5cbe24d [#1129] Refactor ProcessorInfo
* Add rewind button to Demo app

To be able to test refactored CompactBlockProcessor rewind feature.

* Rename non-linear to spend-before-sync

* [#1129] Refactor lastSyncRange lastSyncedHeight

* Fix updateRange function

As the overallSyncRange needs to be reset in case of all ranges are processed.

* [#1166] Remove alsoClearBlockCache parameter
2023-09-08 20:19:51 +02:00
Honza Rychnovský 70cd1e030c [#1157] Get roots: recover failed communication 2023-09-08 20:19:51 +02:00
Honza Rychnovský 6b487e979e [#1160] New SyncAlgorithm type API 2023-09-08 20:19:50 +02:00
Jack Grigg 54d016e401 Migrate to Rust revision with checkpoint and memo bugfixes 2023-09-08 20:18:10 +02:00
Honza Rychnovský 3c31144963 [#1133] Set the correct getSubtreeRoots inputs
* [#1133] Set the correct getSubtreeRoots inputs

- It also better handles setState calls
- It fixes OpenEndRange -> ClosedRange
- And it improves logging in syncing mechanism

* Increase build CI timeout
2023-09-08 20:18:10 +02:00
Honza Rychnovský 7d098f67b9 [#1146] Process the rest of the ranges
* [#1146] Process the rest of the ranges
2023-09-08 20:18:10 +02:00
Honza Rychnovský 92ac1e926e [#1139][#1138] Process Priority.Verify blocks
* [#1139][#1138] Process Priority.Verify blocks

This makes the new subtask functions more testable.

* Increase CI test timeout

* [#1047][#1140] Improve CBD internal state handling

* [#1047][1140] Improve CBD internal state handling

This improves internal state handling in CompactBlockProcessor. Error handling included. And it prepares us for ContinuityError handling too.

* [#1143] Handle ContinuityError
2023-09-08 20:18:10 +02:00
Jack Grigg 0b7c61927c Migrate to Rust revision with additional performance improvements 2023-09-08 20:18:10 +02:00
Jack Grigg 811081b289 Migrate to Rust revision with spend detection and migration perf fixes 2023-09-08 20:18:10 +02:00
Honza Rychnovský c8b481a12f [#1130] Initial Suggested Ranges Parsing
* [#1130] Initial suggested ranges parsing
2023-09-08 20:18:10 +02:00
Honza Rychnovský b811305e53 [#1125] Download chain tip metadata 2023-09-08 20:18:10 +02:00
Honza Rychnovský 6a68889df6 [#1123] Linear vs Non-linear decision mechanism 2023-09-08 20:18:10 +02:00
Jack Grigg e43e86889c Migrate to Rust crate versions with fast spendability bugfixes 2023-09-08 20:18:10 +02:00
Honza f7bb2ae460 Fix JniSubtreeRoot + extension and tests 2023-09-08 20:18:10 +02:00
Jack Grigg 3c5d91b112 Expose `putSaplingSubtreeRoots` and `updateChainTip` Rust APIs 2023-09-08 20:18:10 +02:00
Honza 3476ccace1 Fix type returned from suggest_scan_ranges 2023-09-08 20:18:10 +02:00
Honza 57fe48e9fe Switch to ScanRange model in sdk-lib module 2023-09-08 20:18:10 +02:00
Honza 85388a85c3 Clear validation stage 2023-09-08 20:18:10 +02:00
Honza 7cee1d7203 Make buildable + Solve Lint warnings 2023-09-08 20:18:10 +02:00
Jack Grigg 12c3441778 Migrate to Rust crate versions with fast spendability support 2023-09-08 20:18:10 +02:00
Honza Rychnovský 1721150d9b
[#1229] SDK Release 1.21.0-beta01
- Library version bumped
- Changelog updated
- Closes #1229
2023-09-08 20:02:23 +02:00