Commit Graph

120 Commits

Author SHA1 Message Date
Honza Rychnovský 40ba042ff0
[#1295] SDK release v2.0.3 2023-11-08 15:22:45 +01:00
Honza Rychnovský 7d7cf4f84f
[#1292] Expose Data database file path
- Implemented as part of synchronizer API
- Closes #1292
- Documentation updated
2023-11-08 12:27:14 +01:00
Honza Rychnovský b82278e747
[#1289] SDK Release 2.0.2
Closes #1289
2023-10-20 14:48:09 +02:00
Honza Rychnovský 3d6e3161d5
[#1274] SDK release v2.0.1 2023-10-02 21:35:04 +02:00
Honza Rychnovský 5db44555ec
[#1278] Adopt BIP-39 library v1.0.6
* [#1278] Adopt BIP-39 library v1.0.6

- SNAPSHOT version adopted until the production one is available
- Added maven snapshot libraries version support. The same as in the Zashi repository
- Changelog updated
- Will close #1278

* Switch to non-snapshot version

- Tested with demo-app
2023-10-02 19:41:54 +02:00
Honza Rychnovský ddffd170d1
[#1273] 10_000-ZAT Miners fee
- Removed all uses of the incorrect 1000-ZAT fee as defined with  deprecated zip-313
- Default is now 10k zatoshi, the minimum defined by zip-317
- Changelog updated
- Closes  #1273
2023-10-02 12:49:36 +02:00
Honza Rychnovský 6bf7b12982
[#1095] PersistableWallet endpoint API
* [#1095] PersistableWallet endpoint API

* Fix Ktlint warnings

* Add PersistableWallet 1_2 migration test

* Changelog update
2023-09-28 09:54:27 +02:00
Honza 69dc967ada Library version + Changelog 2023-09-25 22:11:44 +02:00
Jack Grigg ee28e4cedb SDK Release v2.0.0-rc.4 2023-09-22 18:05:52 -06:00
Honza bac5900f9e [#1261] SDK Release v2.0.0-rc.3
Closes #1261.
2023-09-21 08:20:56 -06:00
Honza ea78f810dc [#1257] SDK Release v2.0.0-rc.2 2023-09-20 13:59:44 -06:00
Honza 9045acdce9 Changelog: BlockHeight 2023-09-20 08:56:29 -06:00
Honza f5c0c442c4 Changelog 2023-09-20 15:51:06 +02:00
Kris Nuttycombe 82757353f6 Update version & changelog for 2.0.0-rc.1 release.
Fixes #1237
2023-09-12 13:08:34 -06:00
Honza 916f9e957b Update PersistableWallet API
These required changes came from the latest SDK acceptance testing with Zashi wallet.
2023-09-11 13:37:12 +02:00
Honza Rychnovský 4c38354f01
Update Changelog
Co-authored-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-09-10 11:50:59 +02:00
Honza Rychnovský c9d3085001
Update Changelog
Co-authored-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-09-10 11:47:46 +02:00
Honza Rychnovský fe7edf3ec5
Fix Changelog typos
Co-authored-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-09-10 11:45:53 +02:00
Honza 0d001495d5 Documentation update 2023-09-08 20:28:49 +02:00
Honza Rychnovský c6032b47bd [#1208][#1215] Pass proper `recoverUntil`
- Closes #1208
- CLoses #1215
2023-09-08 20:23:37 +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
Honza Rychnovský 33a7a2000f [#1210] Eliminate LINEAR sync support 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
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 700bd1fb59 Changelog update 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ý 6b487e979e [#1160] New SyncAlgorithm type API 2023-09-08 20:19:50 +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
Honza Rychnovský 5b9d122fac
[#1201] Coroutines 1.7.3
- Changelog
- Closes #1201
2023-09-01 15:55:18 +02:00
Honza Rychnovský 6ffa7bca36
[#1199] gRPC + Protobuf dependency update
- Closes #1199
- Changelog
2023-09-01 15:53:47 +02:00
Honza Rychnovský 48200ac865
[#1197] Androidx Updates
* [#1197] Androidx Updates

- Closes #1197
- Closes #839

* Changelog
2023-09-01 15:50:28 +02:00
Honza Rychnovský 07aa9346b7
[#1194][#1195] Compose + AGP dependency update
Changelog
2023-09-01 08:48:54 +02:00
Honza Rychnovský b7a1edf828
[#1178] Gradle 8.3 2023-08-31 10:11:52 +02:00
Honza Rychnovský 1a0508f57d
[#1152] SDK Release 1.20.0-beta01 2023-07-31 13:34:58 +02:00
Honza Rychnovský f1b5e3aade
[#1014] Decorate Backend with Typesafe APIs
* [#1014] Decorate Backend with Typesafe APIs
2023-07-17 12:50:53 +02:00
Honza Rychnovský 0edaaafad1
[#1104] SDK Release 1.19.0-beta01 2023-07-05 14:19:57 +02:00
Honza Rychnovský 2ff884b38b
[#1080] SDK Release 1.18.0-beta01 2023-06-12 16:03:39 +02:00
Honza Rychnovsky 4926e3a24d
[#939] Eliminate default arguments for Account
* [#939] Eliminate default arguments for Account

* Add Account.DEFAULT to demo-app tests

* Update changelog
2023-05-23 13:39:46 +02:00
Carter Jernigan bfc8d136ab Update changelog for 1.17.0-beta01 2023-05-22 09:03:12 -04:00
Carter Jernigan bc19797125
[#971] Refactor Rust FFI to separate module
---------

Co-authored-by: Honza <rychnovsky.honza@gmail.com>
2023-05-18 07:36:15 -04:00
Honza Rychnovsky dfaa827fd1
[#1013] Sync stages parallelization
* [#1013] Sync blockchain sub-phases parallelization

- Remove the unnecessary comment after the latest changes in this code fragment

* Move solely CompactBlockProcessor-related constants

* Simplify sync range update construction

* [#1013] Sync blockchain sub-phases parallelization

* Changelog update

* Block files deletion documentation update

* Leverage buildList API

* CompactBlockRepository documentation update

* Move BlockBatch to internal models
2023-05-10 12:45:23 +02:00
Carter Jernigan 953042e982
[#239] Remove pending transaction database 2023-05-05 17:46:07 -04:00
Carter Jernigan fef809c015 [#978] Eliminate sent/received transaction APIs 2023-04-17 08:24:41 -04:00
Honza Rychnovsky 9a816ee25f
[#674] Use suspending functions for networking
* [#674] Use suspending functions for networking

- Initial commit to set up how we transform to the coroutine version of networking client

* Enhance flow filter

* Switch to coroutine client in a few tests too

* Use StatusException

* Comment out old UI demo app cases

* Switch client in a few tests

* Switch client for download block case

* Remove the blocking networking client entirely

* Link fetch UTXOs issue

* Refactor refresh and process UTXOs

* Improve downloadBlockRange logging

* Remove CompactBlockRepository.write(sequence)

* Remove “Coroutine” prefix

Since we only have a single implementation, the designation shouldn’t matter anymore

* Fix collection bug

* Finish network client renaming

* Collect write results internally

* Write method simplification

* Blocks sync logging reduce

* Unused unsafe models remove

---------

Co-authored-by: Carter Jernigan <git@carterjernigan.com>
2023-04-13 13:36:24 +02:00
Carter Jernigan d513ac6559 [#972] Min API 27 2023-04-13 06:29:42 -04:00
Carter Jernigan 0930b6a32d Update version to 1.15.0 2023-04-11 07:42:31 -04:00
Francisco Gindre c7914d9584
[#904] Fetch all UXTOs per account
Co-authored-by: Honza <rychnovsky.honza@gmail.com>
Co-authored-by: Kris Nuttycombe <kris@electriccoin.co>
2023-03-09 17:07:59 -05:00
Carter Jernigan 1c76ea6998 [#880] Create sdk-incubator-lib
Add dependency link between lib and incubator

Make AndroidApiVersion internal in SDK
2023-02-09 15:44:22 -05:00
Carter Jernigan 8df7a5d3ec
[#917] Min API 24
Co-authored-by: Honza <rychnovsky.honza@gmail.com>
2023-02-09 06:52:10 -05:00
Carter Jernigan c0a2c11418
[#615] Refactor lightwalletd client
* [#615] Refactor lightwalletd client

This moves the lightwalletd client code to a separate Gradle module, but does not yet do much clean up the public API (e.g. hiding generated GRPC objects).  That will be a followon change via #673

I’ve prototyped a safer version of the API that would be implemented for #673 for two specific calls: obtaining the current block height and obtaining the light wallet info.  These were the easiest endpoints to update and they provide a useful exploration for the future changes needed.

* Fix benchmarking for networking module

- Moved to fixture and build type check components to the new networking module, so it's accessible from all needed parts of the projects
- Changed fixture return type to fit to all needed usages

* Align with previous review comment

* Fix wrong merge

* Add basic sanity test

- To satisfy tests requirements on emulators.wtf service

* Remove grpc dependency from sdk-lib module

* Repackage cash.z.wallet.sdk.rpc to cash.z.wallet.sdk.internal.rpc

* Fix BuildConfig path

* Update demo-app paths to rpc

* Fix broken grpc services locations

- Our aim here is to change only the local services location (package name), the server location can't be changed due to backward compatibility.

* Enhance GRPC Response model

* Adopt enhanced GRPC response model

- Adopted in a few endpoints

* Enhance Connection failure type

* Add simple fixture test

* Refactor fetchTransaction() to work with Response

- Refactored this server call to adopt our new Response mechanism
- GrpsStatusResolver.resolveFailureFromStatus() now accepts Throwable input
- Added Response.Failure.toThrowable() to satisfy subsequent server calls results processing
- A few other minor refactoring changes

* Remove commented out log

* Unify return type of collection returning methods

- Switched fetchUtxos() to return Sequence instead of List
- Added a check on empty tAddress input

* fetchUtxos returns flow

- Switched fetchUtxos() to return Flow of Service.GetAddressUtxosReply
- Internally it calls getAddressUtxosStream() instead of getAddressUtxos() from GRPC layer

* Update unsafe suffix documentation

* Address several minor change requests

* Remove code parameter

- Removed from the locally triggered failures with default codes.

* Rename local variable

* Switch from empty response to exception

- Our server calls now rather throw IllegalArgumentException than return an empty response
- Removed commented out log message
- Updated javadocs

* Update proto files

- Plus related api changes adoption

* Unify new clients instances name

* AGP 7.4.0 changes

-  packagingOptions -> androidComponents in sdk-lib and lightwallet-client-lib modules

* SDK version bump

* Response resolver tests

* Release build upload timeout increase

* Release build upload timeout increase fix

* Revert timeout

- As Github has some infrastructure troubles and we need to wait

* Add migrations documentation

* Sort packaging filters

* Remove private field from public documentation

* Hide private variables

* Remove package from Android Manifest

* Throw exception instead of custom error

- This step unify our approach to validation on client side across all server calls

* Replace setAddresses index const with number

* Fix indentation in proto file

---------

Co-authored-by: Honza <rychnovsky.honza@gmail.com>
2023-02-01 11:14:55 +01:00