Commit Graph

30 Commits

Author SHA1 Message Date
Eljo Prifti a09ce95c2e
Create SaplingParamTool and add a function for clearing the param files from cache (#206)
* Create SaplingParamTool.kt class
add clear and validate function

* add new line

* add SaplingParamToolTest.kt class

* fix PR request

* replace with one single line comment

* revert grandle at exact point in time

* revert build grandle to master

* align build.grandle file with the master one

* align with master
2021-01-22 17:05:11 -05:00
Kevin Gorham 1b5ee935a0
New: Complete changes for adding ZIP-313 to reduce the default fee. 2020-12-18 02:27:23 -05:00
Eljo Prifti ce161d5660
Clear most build warnings (#187)
* Clear the warns build

* Supress inline CurrencyFormatter.kt and Twig.kt
Add FlowPreview into bulild.grandle
Minor change

* Add supres inline at the file level

* Add suppress inline at the file level
2020-12-04 09:28:55 -05:00
Kevin Gorham e9e2593369
New: Make Initializer Config functions fluid.
This adds flexibility and makes it a bit easier to mix in logic while creating a Config object.
2020-11-24 00:39:10 -05:00
Kevin Gorham 7bb895c7e1
New: Add typed exceptions for birthday errors. 2020-11-24 00:37:10 -05:00
Kevin Gorham 90feb5348e
New: Improve birthday configuration.
Make it easier to restore wallets without knowing their birthday. Those wallets will sync from SaplingActivation without the developer having to hardcode that height into their wallet. We achieve this by allowing the Initializer Config object to specify what to do when the birthdayHeight is null. In general, it is probably easier to use the importWallet and newWallet functions to achieve the same goal with more clarity.
2020-11-24 00:36:23 -05:00
Kevin Gorham efc8500959
New: Improved initializer construction.
Builder was misnamed. It is moreso a configuration object. Making this change simplified some of the more confusing aspects of creating an initializer and also made it so the initializer.config.new functions can now work as expected. Prior to these changes it was difficult to make an initializer that used a new birthday.
2020-11-20 12:01:45 -05:00
Kevin Gorham 4087bc65bc
Update to latest lightwalletd service definition.
Updated to the latest service.proto file to utilize the new t-addr endpoints. This closes https://github.com/zcash/zcash-android-wallet-sdk/issues/176.
2020-11-20 11:58:04 -05:00
Kevin Gorham 797ef8733a
Update display name info for Canopy. 2020-11-16 20:33:53 -05:00
Kevin Gorham 4e2065e0df Add ability to erase by alias. 2020-10-30 09:22:03 -04:00
Kevin Gorham 8cbc063caa
Updated visibility on open classes to improve extensibility. 2020-10-16 13:39:16 -04:00
Kevin Gorham 5879bb3442
Publishing is functional again on Bintray.
Minor uncommitted tweaks. Published version Alpha08.
2020-10-01 16:22:29 -04:00
Kevin Gorham 0601ec488b
Various bug fixes and improvements.
- Exposed primary constructor in initializer and added more convenience functions
- Fix: error handler not being passed through when changing server
- New: warn developer when a critical error occurs but is not covered with a callback
- New: Typed exceptions for missing birthday or viewingKey values during initialization
- New: updated default server for checkpoint tool
2020-09-25 09:59:55 -04:00
Kevin Gorham 8d8a1ae8a8
Fix: incorrect query allowing change to show up in TX list.
Originally identified by @pacu on the iOS side. We paired up and fixed
and tested the query over there.
2020-09-23 12:03:15 -04:00
Kevin Gorham ab5b34cbd8
Implement the logic for changing servers. 2020-09-23 12:02:12 -04:00
Kevin Gorham 24f7433f1c
Update Synchronizer and Processor APIs to enable changing the server.
Actual implementation is in a subsequent commit.
2020-09-23 12:02:11 -04:00
Kevin Gorham 58925b04b3
Merge initializers.
The new API for initializing with a viewing key will support all existing uses of the other initializer. So they can be safely merged and the changes to support the new one are fairly straight forward.

Also, iterated on the design of the Initializer to simplify construction and make the API easier to use.
2020-09-23 12:02:11 -04:00
Kevin Gorham 306eac73b0
Rename the new VkInitializer to replace the old Initializer. 2020-09-23 12:02:11 -04:00
Kevin Gorham eb463ec233
Remove the existing Initializer. 2020-09-23 12:02:10 -04:00
Kevin Gorham 14deb99362
Iterate on initializers.
Simplify the builder and also allow it to be a stand-alone configuration item, which would be more useful to React apps that cannot use Kotlins receiver function syntax.
2020-09-23 12:02:10 -04:00
Kevin Gorham a08beef93b
Created birthday tool and derivation tool.
By extracting behavior from the Initializer into a more genralized class that can be used statically.
2020-09-11 03:33:25 -04:00
Kevin Gorham 11431f5e5a
Initializer improvements and iteration.
- Extracted parent interface
- Created ViewingKey Initializer to start synchronizing without the seed (only the viewing key is needed)
- Extracted tools from the existing initializer and simlified it a bit
2020-09-11 03:29:17 -04:00
Kevin Gorham 94c8a18be7
Added ability to start a Synchronizer with just a viewing key.
This was a long awaited request from wallet partners who already have keys available when the wallet launches.
2020-09-11 03:23:08 -04:00
Kevin Gorham 01efabe195
POC: prove the concept of local RPC via protobufs.
This is an example of a jni call that accepts and returns proto objects. Ultimately, this trades a minor amount of performance for a significant improvement of ease of use. By exchanging protocol buffers, the Kotlin and Rust layers are able to communicate using far more complex objects. Eventually, this type of approach might completely replace the use of a database or sqlite.
2020-08-13 22:01:52 -04:00
Kevin Gorham 816d1afbb3
New: Add lightwalletd service for fetching t-addr txs. 2020-08-13 20:44:05 -04:00
Kevin Gorham bb747a3ce5
Fix: Minor improvements 2020-08-13 20:37:09 -04:00
Kevin Gorham 0f87961947
New: Change the default lightwalletd server.
The old server will be shutting down to coincide with our internal app deployment changes.
2020-08-13 20:31:54 -04:00
Kevin Gorham bb77fa2d5d
New: add robust support for tx cancellation
Also greatly improved handling of expired and failed transactions.
2020-08-01 02:13:39 -04:00
Kevin Gorham 215788dd27
Migrate changes from hackathon.
Mostly includes changes to make testing more robust.
2020-07-29 00:36:56 -04:00
Kevin Gorham aa569c99dd
Major refactor: corrected package name.
Now the SDK matches everything else that we have published to bintray and jcenter.
2020-06-10 03:08:19 -04:00