* [#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
- 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
* [#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
* 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
* [#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>
* [#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>